Elasticsearch性能调优

logstash是controller层,Elasticsearch是一个model层,kibana是view层
Kibana 依赖 Elasticsearch
Logstash 数据 输出到 Elasticsearch 
Elasticsearch 数据来源 依赖 Logstash

依赖顺序安装的服务: ElasticSearch -> Logstash -> Kibana
数据流向服务顺序:Logstash ->ElasticSearch ->Kibana

数据-->传给logstash,将数据进行过滤和格式化(转成JSON格式),然后传给Elasticsearch进行存储、建搜索的索引,
kibana提供前端的页面再进行搜索和图表可视化,它是调用Elasticsearch的接口返回的数据进行可视化。
logstash和Elasticsearch是用Java写的,kibana使用node.js框架

因为logstash是jvm跑的,资源消耗比较大,启动一个logstash就需要消耗500M左右的内存,而filebeat只需要10来M内存资源


ELK 架构之 Logstash 和 Filebeat 安装配置 
http://www.cnblogs.com/xishuai/p/elk-logstash-filebeat.html

Windows 安装ELK
https://blog.csdn.net/weisong530624687/article/details/82963544

简单安装 elk (Windows 环境)
https://blog.csdn.net/qq_37421862/article/details/84565038
  
win10下安装ELK日志分析平台踩坑记录
https://blog.csdn.net/wyfcode/article/details/81081469

ELK学习记录三 :elasticsearch、logstash及kibana的安装与配置(windows) 
https://www.cnblogs.com/luyanlong/p/9007460.html

windows下安装logstash
https://blog.csdn.net/wang_quan_li/article/details/52585134

Logstash介绍、安装和使用
https://www.cnblogs.com/cjsblog/p/9459781.html
https://www.jianshu.com/p/9474667da8c5


Logstash将数据导入至MYSQL、Oracle
https://segmentfault.com/a/1190000014852507
https://blog.csdn.net/goodstudy168/article/details/81364480

filebeat常见配置整理
https://blog.csdn.net/xuguokun1986/article/details/73560195
(个人理解,filebeat是一个轻量级的logstash,当你需要收集信息的机器配置或资源并不是特别多时,使用filebeat来收集日志)


为elasticsearch开发C++接口
https://www.cnblogs.com/woshare/p/9475379.html

Grok调试
http://grokdebug.herokuapp.com/

ELK日志处理之使用Grok解析日志
https://blog.csdn.net/napoay/article/details/62885899

ELK Betas 6.0安装及使用 
http://www.cnblogs.com/gaoxu387/p/7890021.html

官网插件安装手册
https://www.elastic.co/guide/en/beats/packetbeat/current/packetbeat-getting-started.html

//插件监控
https://www.cnblogs.com/Hai--D/p/5748341.html

1.Elasticsearch安装启动:
    打开 elasticsearch-6.4.2\bin , cmd 运行 elasticsearch-service.bat install
    运行 elasticsearch-service.bat manager 管理配置ES,点击Start启动服务
    输入网址:   http://172.20.32.211:9200/
2.Logstash安装启动:    
    logstash -f ..\config\logstash.conf
3.Kibana安装启动:    
    bin 目录 cmd 运行 kibana.bat
    输入网址:  http://172.20.32.211:5601 
4.Head插件安装
    https://www.cnblogs.com/hts-technology/p/8477258.html
    输入网址:  http://172.20.32.211:9100
4. 服务启动命令
    Logstash启动命令:  logstash -f  ../config/logstash.conf
    filebeat测试命令:  filebeat.exe -e -c filebeat.yml -d "Publish"
    filebeat启动命令:  filebeat.exe -e -c filebeat.yml
    metricbeat启动命令: metricbeat.exe -e -c metricbeat.yml
5.插件应用
    1) Packetbeat: 网络数据(收集网络流量数据)
    2) Metribeat: 指标(搜集系统、进程和文件系统级别的CPU和内存使用情况等数据)
    3) Filebeat: 日志文件(搜集文件数据)
    4) Winlogbeat: windows事件日志(搜集Windows 事件日志数据)
    5) Auditbeat: 审计数据(搜集审计日志)
    6) Hearbeat: 运行时间监控(搜集系统运行时的数据)
    Topbeat
    topbeat定期收集系统信息如每个进程信息、负载、内存、磁盘等等,然后将数据发送到elasticsearch进行索引
    topbeat收集的指标有:
    系统统计信息
    •系统负载: 最后1分钟、最后5分钟、最后15分钟
    •CPU使用情况: user (和百分比), system, idle, IOWait等等
    •内存使用情况: 总共, 已用 (和百分比), 剩余等等
    •swap使用情况:总共, 已用 (和百分比), 剩余等等
6.开启Powershell脚本限制
    默认的情况下,系统会禁止运行脚本,返回下面的错误提示:
    举例: E:\packetbeat> .\install-service-packetbeat.ps1  会报错
    执行命令 E:\packetbeat> set-ExecutionPolicy RemoteSigned

http://www.cnblogs.com/gaoxu387/p/7890021.html

https://www.cnblogs.com/guguli/p/5218297.html
http://www.cnblogs.com/aresxin/p/8035137.html
http://www.cnblogs.com/xishuai/p/elk-logstash-filebeat.html
https://www.jianshu.com/p/9474667da8c5

linux下安装:
1.启动ES命令:/bin/elasticsearch -d  (后台启动)
2.查找ES进程号:ps -ef | grep elastic , kill -9 进程号
常见错误:
https://blog.csdn.net/weixin_41615494/article/details/79591335
https://blog.csdn.net/javasun608/article/details/80228617
3.Elasticsearch6.X 及head插件部署(完整版)
    https://blog.csdn.net/zou79189747/article/details/80111219
    https://blog.csdn.net/zhaojiweiwin/article/details/80053573
    https://blog.csdn.net/pengyulong1285/article/details/83722187
    https://blog.csdn.net/zhaojiweiwin/article/details/80053573


    
ES性能调优:
1.内存:jvm.options文件默认1g,一般默认服务器的一半,且小于32G Xms 和 Xmx来设置大小内存;
2.bootstrap.memory_lock: true   //避免交换内存
3.延迟写入的策略: index.refresh_interval:300s #index 刷新间隔  //近实时搜索功能,而不是实时搜索功能
4.索引只读: curl -XPUT -H "Content-Type: application/json" http://172.20.36.145:9200/_all/_settings -d '{"index.blocks.read_only_allow_delete": null}'
  es无法写入执行命令:curl -XPUT -H "Content-Type:application/json" -d '{"index": {"blocks": {"read_only_allow_delete": "false"}}}' 'http://127.0.0.1:9200/_settings'
5.查看ES状态: curl http://172.20.36.145:9200/_cluster/health?pretty

你可能感兴趣的:(ELK)