分布式日志系统收集平台ELK+EFK,从部署到实战(下)!
老男孩IT教育
常见问题
2023年7月20日 18:09
Elasticsearch是位于Elastic Stack核心的分布式搜索和分析引擎。Logstash和Beats有助于收集、聚合和丰富您的数据并将其存储在Elasticsearch中。Kibana使您能够以交互方式探索、可视化和分享对数据的见解,并管理和监控堆栈。
Elasticsearch是位于Elastic Stack核心的分布式搜索和分析引擎。Logstash和Beats有助于收集、聚合和丰富您的数据并将其存储在Elasticsearch中。Kibana使您能够以交互方式探索、可视化和分享对数据的见解,并管理和监控堆栈。
阅读这篇文章之前,先阅读一下这篇文章:分布式日志系统收集平台ELK+EFK,从部署到实战(上)!
ElasticSearch集群
预备姿势
关于颜色:
绿色:所有数据都完整,且副本数满足
黄色:所有数据都完整,但是副本数不满足
红色:一个或多个索引数据不完整
搭建
部署流程:
1. 安装es
2. 配置systemctl edit elasticsearch
3. 注意hosts解析
配置文件
cat> /etc/elasticsearch/elasticsearch.yml <<EOF
cluster.name: oldboy_linux
node.name: node-2
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true
network.host: 127.0.0.1,10.0.0.52
http.port: 9200
discovery.seed_hosts: ["10.0.0.51","10.0.0.52"]
cluster.initial_master_nodes: ["10.0.0.51"]
EOF
配置说明 es01 es02都要配置
cp /etc/elasticsearch/elasticsearch.yml{,.single}
cat> /etc/elasticsearch/elasticsearch.yml <<EOF
cluster.name: oldboy_linux
#集群名称,所有属于同一集群的节点,集群名字要统一. 默认是elasticsearch
node.name: es02.oldboylinux.cn
#每个节点不同。
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true
network.host: 127.0.0.1,10.0.0.91
http.port: 9200
discovery.seed_hosts:
- "es01.oldboylinux.cn"
- "es02.oldboylinux.cn"
#集群中节点的地址.
cluster.initial_master_nodes: ["es01.oldboylinux.cn"]
#集群中默认哪个是主节点.
EOF
插入数据后
说明与注意事项
#01
1.插入和读取数据在任意节点都可以执行,效果一样
2.es-head可以连接集群内任一台服务
#03.主节点负责读写
如果主分片所在的节点坏掉了,副本分片会升为主分片
#04.主节点负责调度
如果主节点坏掉了,数据节点会自动升为主节点
#05.通讯端口
默认会有2个通讯端口:9200和9300
9300并没有在配置文件里配置过
如果开启了防火墙并且没有放开9300端口,那么集群通讯就会失败
#06.搭建集群的时候保证节点数据一致
或者直接清空es数据目录,然后重启即可
/var/lib/elasticsearch/
重新理解副本数-分片数
实战理解
创建索引-linux81-并设置分片数为3,副本数0
PUT /linux81/
{
"settings": {
"number_of_shards": 3,
"number_of_replicas": 0
}
}
删除索引
DELETE /linux/
修改副本数(随机可以修改)
PUT /linux81/_settings/
{
"settings": {
"number_of_replicas": 1
}
}
企业推荐配置
#根据节点数设置
2个节点: 默认就可以 1分片 1个副本
3个节点:
重要的数据,2副本
不重要的默认 1分片 1个副本
#应用场景
日志收集: 1副本3分片
搜索功能: 2副本3分片
Filebea收集日志
Filebeat概述
Golang语言软件
收集性能高
Filebeat --> ES <-- Kibana展示
Filebeat --> Logstash-->ES <-- Kibana展示
可以收集各种系统,服务,应用日志
极速应用指南
ES集群
[root@oldboy-elastic-stack-es01 ~]# cat /etc/elasticsearch/elasticsearch.yml
cluster.name: oldboy_linux
#集群名称,所有属于同一集群的节点,集群名字要统一. 默认是elasticsearch
node.name: es01.oldboylinux.cn
#每个节点不同。
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true
network.host: 127.0.0.1,10.0.0.90
http.port: 9200
discovery.seed_hosts:
- "es01.oldboylinux.cn"
- "es02.oldboylinux.cn"
#集群中节点的地址.
cluster.initial_master_nodes: ["es01.oldboylinux.cn"]
#集群中默认哪个是主节点,用于新节点加入后初始化.
部署Filebeat
rpm -ivh filebeat-7.9.3-x86_64.rpm
初步配置:收集secure日志
hosts解析
10.0.0.90 es01.oldboylinux.cn
10.0.0.91 es02.oldboylinux.cn
10.0.0.92 es03.oldboylinux.cn
10.0.0.93 kafka.oldboylinux.cn
[root@web01 ~]# cat /etc/filebeat/filebeat.yml
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/secure
output.elasticsearch:
hosts:
- "es01.oldboylinux.cn:9200"
- "es02.oldboylinux.cn:9200"
- "es03.oldboylinux.cn:9200"
systemctl enable filebeat.service
systemctl start filebeat.service
ps -ef |grep filebeat
root 78082 1 0 08:57 ? 00:00:00 /usr/share/filebeat/bin/filebeat --environment systemd -c /etc/filebeat/filebeat.yml --path.home /usr/share/filebeat --path.config /etc/filebeat --path.data /var/lib/filebeat --path.logs /var/log/filebeat
检查ES
接入Kibana
在es01部署kibana
rpm -ivh kibana-7.9.3-x86_64.rpm
配置文件
[root@oldboy-elastic-stack-es01 ~]# cat /etc/kibana/kibana.yml
server.port: 5601
server.host: "10.0.0.90"
server.name: "kibana.oldboylinux.cn"
elasticsearch.hosts: [ "http://es01.oldboylinux.cn:9200" ]
kibana.index: ".kibana"
logging.dest: /var/log/kibana/kibana.log
logging.quiet: false
i18n.locale: "zh-CN"
systemctl enable kibana.service
systemctl start kibana.service
ps -ef |grep kibana
ss -lntup |grep 5601
浏览器访问kibana.oldboylinux.cn:5601
hosts解析 windows
###oldboy-elastic-stack#########
10.0.0.90 es01.oldboylinux.cn kibana.oldboylinux.cn
10.0.0.91 es02.oldboylinux.cn
10.0.0.92 es03.oldboylinux.cn
10.0.0.93 kafka.oldboylinux.cn
###oldboy-elastic-stack#########
Kibana展示数据
kibana连接ES
创建索引模式
查看
修改时间范围
简单展示
