赞
踩
@[TOC](EFK简介)
@[TOC](EFK下载)
@[TOC](Elasticsearch部署)
@[TOC](部署kibana)
@[TOC](部署filebeat)
@[TOC](测试数据图表展示成果)
@[TOC](结束语)
1. Elasticsearch -->存储数据
是一个实时的分布式搜索和分析引擎,它可以用于全文搜索,结构化搜索以及分析。它是一个建立在全文搜索引擎 Apache Lucene 基础上的搜索引擎,使用 Java 语言编写,能对大容量的数据进行接近实时的存储、搜索和分析操作。
2.FileBeat:
Filebeat隶属于Beats。目前Beats包含六种工具:
Packetbeat(搜集网络流量数据)
Metricbeat(搜集系统、进程和文件系统级别的 CPU 和内存使用情况等数据)
Filebeat(搜集文件数据)
Winlogbeat(搜集 Windows 事件日志数据)
Auditbeat( 轻量型审计日志采集器)
Heartbeat(轻量级服务器健康采集器)
3. Kibana --> 展示数据
数据分析和可视化平台。通常与 Elasticsearch 配合使用,对其中数据进行搜索、分析和以统计图表的方式展示。
注意:内存需要给到4G不然会报错
环境说明:
系统centos7
IP地址:192.168.0.11
软件 | 版本 |
Elasticsearch | 7.8.0 |
Filebeat | 7.8.0 |
Kibana | 7.8.0 |
下载地址:
Elasticsearch: 7.8.0
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.0-linux-x86_64.tar.gz
Kibana: 7.8.0
https://artifacts.elastic.co/downloads/kibana/kibana-7.8.0-linux-x86_64.tar.gz
Filebeat: 7.8.0
https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.8.0-linux-x86_64.tar.gz
Logstash: 7.8.0
https://artifacts.elastic.co/downloads/logstash/logstash-7.8.0.tar.gz
安装es的节点一定安装java环境,在此不过多赘述。
//解压下载后的安装包 [root@localhost opt]# tar -zxvf elasticsearch-7.8.0-linux-x86_64.tar.gz -C /opt/EFK/ // 做软链接 [root@node local]# ln -s elasticsearch-7.8.0/ elasticsearch // 配置环境变量 [root@node bin]# cat /etc/profile.d/myenv.sh export PATH=/opt/EFK/elasticsearch/bin:$PATH [root@node bin]# source /etc/profile.d/myenv.sh // 创建用户并设置密码,因为Elasticsearch不能使用root来管理 [root@node ~]# useradd es [root@node ~]# passwd es [root@node local]# chown -R es.es elasticsearch-7.8.0/ //创建elasticsearch的数据目录和日志目录 [root@node ~]# mkdir -p /var/data/elasticsearch [root@node ~]# mkdir -p /var/log/elasticsearch [root@node data]# chown -R es.es elasticsearch/ [root@node log]# chown -R es.es elasticsearch/ // 修改elasticsearch的配置文件 cluster.name: my-es //取消注释,集群名称,可根据需要进行修改 path.data: /var/data/elasticsearch //elasticsearch数据目录存放位置,建议创建此目录(官网推荐) path.logs: /var/log/elasticsearch //elasticsearch日志文件存放位置 network.host: 192.168.0.11 //取消注释,这里是监听地址 http.port: 9200 //取消注释,这里是监听的端口号 discovery.seed_hosts: ["node"] //取消注释,指定要发现的节点,可以写节点名也可写IP地址,因为我们这里是单节点所以写当前节点名就可以了 xpack.security.enabled: true xpack.license.self_generated.type: basic xpack.security.transport.ssl.enabled: true cluster.initial_master_nodes: ["node"] http.host: 0.0.0.0 此文件为yml文件,新加的行要注意缩进不然启动服务会报错
// 设置elasticsearch的用户名和密码,因为我们上面开启了ssl 执行设置用户名和密码的命令,需要设置密码的用户有elastic、apm_system、kibana_system、logstash_system、beats_system、remote_monitoring_user [es@node elasticsearch]$ elasticsearch-setup-passwords interactive Initiating the setup of passwords for reserved users elastic,apm_system,kibana,kibana_system,logstash_system,beats_system,remote_monitoring_user. You will be prompted to enter passwords as the process progresses. Please confirm that you would like to continue [y/N]y Enter password for [elastic]: passwords must be at least [6] characters long Try again. Enter password for [elastic]: Reenter password for [elastic]: Enter password for [apm_system]: Reenter password for [apm_system]: Enter password for [kibana_system]: Reenter password for [kibana_system]: Enter password for [logstash_system]: Reenter password for [logstash_system]: Enter password for [beats_system]: Reenter password for [beats_system]: Enter password for [remote_monitoring_user]: Reenter password for [remote_monitoring_user]: Changed password for user [apm_system] Changed password for user [kibana_system] Changed password for user [kibana] Changed password for user [logstash_system] Changed password for user [beats_system] Changed password for user [remote_monitoring_user] Changed password for user [elastic]
浏览器IP:9200
用户名为elastic,密码为刚才设置的密码,我这里我密码为123456
elastic用户拥有superuser角色,是内置的超级用户
kibana用户:拥有kibana_system角色,用户kibana用来连接elasticsearch并与之通信。Kibana服务器以该用户身份提交请求以访问集群监视API和Kibana索引。不能访问index
logstash_system用户:拥有logstash_system角色,用户Logstash在Elasticsearch中存储监控信息时使用。
以上已经搭建成功,可以使用ip+9200进行访问,密码为上步自设。这里因为只是测试搭建,所以并未使用自启方法,感兴趣的小伙伴可以自行查找es开机自启的方法。
// 解压tar包 [root@node opt]# tar -zxf kibana-7.8.0-linux-x86_64.tar.gz -C /opt/EFK/ // 做软链接 [root@node local]# ln -s kibana-7.8.0/ kibana [root@node local]# chown -R kibana.kibana kibana-7.8.0/ [root@node ~]# useradd kibana [root@node ~]# passwd kibana // 配置环境变量 [root@node ~]# cat /etc/profile.d/myenv.sh export PATH=/opt/EFK/kibana/bin:$PATH [root@node ~]# source /etc/profile.d/myenv.sh // 创建相应文件,并修改属主和属组 [root@node ~]# mkdir -p /var/log/kibana/ [root@node ~]# touch /var/log/kibana/kibana.log [root@node ~]# chown -R kibana.kibana /var/log/kibana/kibana.log [root@node ~]# mkdir -p /run/kibana/ [root@node ~]# touch /run/kibana/kibana.pid [root@node ~]# chown -R kibana.kibana /run/kibana/kibana.pid // 修改kibana配置文件,修改配置文件之前建议先备份 [root@node config]# cp kibana.yml kibana.yml-bak [root@node config]# vim kibana.yml server.port: 5601 //kibana监听的端口号 server.host: "192.168.0.11" //默认为localhost,后端服务器的主机地址 elasticsearch.hosts: ["http://192.168.0.11:9200"] //与es连接,es的IP+端口号 elasticsearch.username: "elastic" //kibana对接es的用户和密码 elasticsearch.password: "123456" pid.file: /run/kibana/kibana.pid //kibana的pid文件路径 i18n.locale: "zh-CN" //语言中文
启动命令包括,后台启动:nohup kibana &
浏览器IP:5601
用户名为上述配置文件中设置的,密码同上。
安装成功。
// 解压filebeat [root@node opt]# tar -zxvf filebeat-7.8.0-linux-x86_64.tar.gz -C /opt/EFK/ // 创建软链接 [root@node local]# ln -s filebeat-7.8.0/ filebeat //配置环境变量 [root@node ~]# cat /etc/profile.d/myenv.sh export PATH=/opt/EFK/filebeat/filebeat:$PATH [root@node ~]# source /etc/profile.d/myenv.sh //配置文件 [root@node filebeat]# vi filebeat.yml filebeat.inputs: - type: log enabled: true paths: - /var/log/test.log #根据自身目录进行修改 setup.kibana: host: "192.168.0.11:5601" output.elasticsearch: hosts: ["192.168.0.11:9200"] username: "elastic" password: "123456"
启动:nohup ./filebeat -e -c filebeat.yml > filebeat.log &
在启动中遇到了相关问题,因时间问题未记录和重现,小伙伴们遇到后可尝试使用初始化解决。
初始化命令:./filebeat setup -e
使用IP+端口登录kibana,选择如下:
在索引模式输入filebate,选择下列索引,点击下一步:
选择如下:
创建索引模式后,显示:
图表展示如下:
至此,日志收集系统搭建完毕,因为是刚刚接触,所以有讲解不全之处,还请大神指点。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。