ELK+filebeat+kafka实现日志收集

ELK+filebeat+kafka远程收集不同主机上的httpd、mysql 日志实验

实验目的:远程收集日志,高并发情况下流量削峰,异步通信

实验条件:

主机名

IP地址

作用

组件

硬件

集群

test1

20.0.0.10

异步通信

流量削峰

……

zookeeper+kafka(3.4.1版本)

4核8G

zookeeper

+

kafka集群

test2

20.0.0.20

zookeeper+kafka(3.4.1版本)

2核4G

test3

20.0.0.30

zookeeper+kafka(3.4.1版本)

2核4G

EKL1

20.0.0.15

过滤日志

logstash+kibana

2核4G

ELK集群

ELK2

20.0.0.25

es服务器

ES+node+phantomjs+elasticsearch-head-master组件

2核4G

ELK3

20.0.0.35

es服务器

ES+node+phantomjs+elasticsearch-head-master组件

2核4G

nginx1

20.0.0.11

提供nginx

nginx+filebeat服务

2核4G

mysql1

20.0.0.13

提供nginx

mysql+filebeat服务

2核4G

数据流向:filebeat—>kafka—>logstash—>ES—>kibana

-> filebeat收集日志传输给kafka;

-> kafka创建主题,日志存储在主题的分区里;

-> 然后传输给es集群,存储日志数据;

-> 用户访问图形化界面获取日志

ELK+filebeat+kafka实现日志收集_第1张图片

实验步骤:

1、搭建ELK集群【注意服务器IP地址】

2、搭建zookeeper+kafka集群【注意服务器IP地址】

3、安装filebeat

ELK+filebeat+kafka实现日志收集_第2张图片

4、查看nginx和mysql的日志路径

(1)mysql

vim /etc/my.cnf

打开mysql 的日志转发功能

general_log=ON

general_log_file=/usr/local/mysql/data/mysql_general.log

ELK+filebeat+kafka实现日志收集_第3张图片

(2)nginx

5、分别在nginx服务器和mysql服务器上修改filebeat配置文件

vim /opt/filebeatfilebeat.yml

ELK+filebeat+kafka实现日志收集_第4张图片

ELK+filebeat+kafka实现日志收集_第5张图片

ELK+filebeat+kafka实现日志收集_第6张图片

ELK+filebeat+kafka实现日志收集_第7张图片

赋权日志文件

ELK+filebeat+kafka实现日志收集_第8张图片

6、启动filebeat

nohup ./filebeat -e -c filebeat.yml > filebeat.out &

若无法启动filebeat,则tail -f filebeat.out查看日志

ELK+filebeat+kafka实现日志收集_第9张图片

7、在安装logstash的服务器上创建conf文件

ELK+filebeat+kafka实现日志收集_第10张图片

运行logstash的conf文件

logstash -f system.conf --path.data /opt/test2 &

ELK+filebeat+kafka实现日志收集_第11张图片

8、查看主题

kafka-topics.sh --list --bootstrap-server 20.0.0.10:9092,20.0.0.20:9092,20.0.0.30:9092

ELK+filebeat+kafka实现日志收集_第12张图片

9、消费消息

kafka-console-consumer.sh --bootstrap-server 20.0.0.10:9092,20.0.0.20:9092,20.0.0.30:9092 --topic mysql

ELK+filebeat+kafka实现日志收集_第13张图片

10、访问nginx、mysql服务,查看索引

ELK+filebeat+kafka实现日志收集_第14张图片

ELK+filebeat+kafka实现日志收集_第15张图片

ELK+filebeat+kafka实现日志收集_第16张图片

再查看消费消息

ELK+filebeat+kafka实现日志收集_第17张图片

你可能感兴趣的:(elk,kafka,分布式)