ELKFileBeatKafka分布式系统搭建图文教程
工作流程
filebeat收集需要提取的日志文件,将日志文件转存到kafka集中,logstash处理kafka日志,格式化处理,并将日志输出到elasticsearch中,前台页面通过kibana展示日志。
使用kafka集做缓存层,而不是直接将filebeat收集到的日志信息写入logstash,让整体结构更健壮,减少网络环境,导致数据丢失。filebeat负责将收集到的数据写入kafka,logstash取出数据并处理。
硬件条件支持
一共使用了4台服务器:
每台服务器都需要安装jdk,配置环境变量。
kafka使用教程修改全局配置文件,作用于所有用户:
sudo vi /etc/profileexport JAVA_HOME=JDK安装路径export PATH=$JAVA_HOME/bin:$PATH
系统调优
vim /ffs.file-max=65536vm.max_map_count = 262144
vim /etc/f* soft nofile 65535* hard nofile 131072* soft nproc 2048* hard nproc 4096
使用的软件版本
应用安装
kafka、zookeeper集搭建
在10.16.10.113、10.16.10.114、10.16.8.187服务器中搭建kafka集,关闭防火墙
关闭防火墙命令:
systemctl stop firewalld
查看防火墙状态:
systemctl status firewalld
zookeeper搭建
本次直接使用kafka自带的zookeeper,不需要单独下载zookeeper
解压安装包到/usr/local/kafka目录下
vim config/zookeeper.properties
修改配置内容:
clientPort=2181maxClientCnxns=100tickTime=2000initLimit=10syncLimit=5dataDir=/usr/local/kafka/zookeeper/datadataLogDir=/usr/local/kafka/zookeeper/logserver.1=10.16.10.113:12888:13888server.2=10.16.10.114:12888:13888server.3=10.16.8.187:12888:13888
注意:dataDir、dataLogDir文件目录需要手动创建。
三台服务器配置内容一致,需要在dataDir目录下创建myid文件,文件的内容必须与zookeeper.properties中的编号保持一致。
kafka搭建
vim config/server.properties
修改配置内容:
broker.id=1prot = 9092host.name = 10.16.10.113numwork.threads=3num.io.threads=8socket.send.buffer.ive.buffer.quest.max.bytes=104857600log.dirs=/usr/local/kafka-logsnum.very.threads.per.data.plication.factor=1transaction.plication.factor=1transaction.state.log.min.ion.hours=168log.segment.ion.check.interval.t=10.16.10.113:2181,10.16.10.114:2181,10.16.8.tion.timeout.ms=balance.delay.ms=0

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。