ELK+Filebead+zookeeper+kafka部署

目录

一、为什么要做日志分析平台?

二、ELK+Filebeat+Kafka+Zookeeper架构

三、搭建ELK+Filebeat+Kafka+Zookeeper

1、3台机子安装zookeeper  192.168.100.30/40/50

1.1 解压安装zookeeper软件包

1.2 修改Zookeeper配置配置文件

1.3 设置myid号以及启动脚本

1.4 3台机器启动zookeeper

2、安装kafka  192.168.100.30/40/50

2.1 安装 kafka(3台机子都要操作)

2.2 修改配置文件

2.3 将相关命令加入到系统环境当中

2.4 启动kafka

Kafka 命令行操作

2.5 创建topic

2.6 测试topic

3、配置数据采集层filebeat(192.168.100.23)

3.1 定制日志格式

3.2 上传、解压安装包

3.3 修改配置文件filebeat.yml

3.4 启动filebeat

4、所有组件部署完成之后,开始配置部署

4.1 在kafka上创建一个话题nginx-es

4.2 修改logstash的配置文件

4.3 验证网页

4.4 Kibana上创建索引


一、为什么要做日志分析平台?

随着业务量的增长,每天业务服务器将会产生上亿条的日志,单个日志文件达几个GB,这时我们发现用Linux自带工具,cat grep awk 分析越来越力不从心了,而且除了服务器日志,还有程序报错日志,分布在不同的服务器,查阅繁琐。

待解决的问题:

① 大量不同种类的日志成为了运维人员的负担,不方便管理;
② 单个日志文件巨大,无法使用常用的文本工具分析,检索困难;
③ 日志分布在多台不同的服务器上,业务一旦出现故障,需要一台台查看日志。

二、ELK+Filebeat+Kafka+Zookeeper架构

整体的架构如上图所示

这个架构图从左到右,总共分为5层,每层实现的功能和含义分别介绍如下:

第一层、数据采集层
数据采集层位于最左边的业务服务器集群上,在每个业务服务器上面安装了filebeat做日志收集,然后把采集到的原始日志发送到Kafka+zookeeper集群上。

第二层、消息队列层
原始日志发送到Kafka+zookeeper集群上后,会进行集中存储,此时,filbeat是消息的生产者,存储的消息可以随时被消费。

第三层、数据分析层
Logstash作为消费者,会去Kafka+zookeeper集群节点实时拉取原始日志,然后将获取到的原始日志根据规则进行分析、清洗、过滤,最后将清洗好的日志转发至Elasticsearch集群。

第四层、数据持久化存储
Elasticsearch集群在接收到logstash发送过来的数据后,执行写磁盘,建索引库等操作,最后将结构化的数据存储到Elasticsearch集群上。

第五层、数据查询、展示层
Kibana是一个可视化的数据展示平台,当有数据检索请求时,它从Elasticsearch集群上读取数据,然后进行可视化出图和多维度分析。

三、搭建ELK+Filebeat+Kafka+Zookeeper

 ip地址 所属集群 安装软件包
192.168.100.20 Elasticsearch Elasticsearch集群 
192.168.100.21 Elasticsearch Elasticsearch集群
192.168.100.22 Logstash 数据转发
192.168.100.30 kafka+zookeeper kafka+zookeeper
192.168.100.40 kafka+zookeeper kafka+zookeeper
192.168.100.50 kafka+zookeeper kafka+zookeeper
192.168.100.23 filebeat 配置数据采集层

本实验基于ELFK已经搭好的情况下    Filebeat后续还要更改配置

1、3台机子安装zookeeper  192.168.100.30/40/50

#zookeep下载地址
wget https://dlcdn.apache.org/zookeeper/zookeeper-3.8.0/apache-zookeeper-3.8.0-bin.tar.gz

1.1 解压安装zookeeper软件包

cd /opt

上传apache-zookeeper-3.8.0-bin.tar.gz包

tar zxf apache-zookeeper-3.8.0-bin.tar.gz  解包
mv apache-zookeeper-3.8.0-bin /usr/local/zookeeper-3.8.0 #将解压的目录剪切到/usr/local/
cd /usr/local/zookeeper-3.8.0/conf/
cp zoo_sample.cfg zoo.cfg  备份复制模板配置文件为zoo.cfg

1.2 修改Zookeeper配置配置文件

cd /usr/local/zookeeper-3.8.0/conf    #进入zookeeper配置文件汇总

ls 后可以看到zoo_sample.cfg模板配置文件

cp zoo_sample.cfg zoo.cfg 复制模板配置文件为zoo.cfg

vim zoo.cfg
tickTime=2000     
#通信心跳时间,Zookeeper服务器与客户端心跳时间,单位毫秒
initLimit=10      
#Leader和Follower初始连接时能容忍的最多心跳数( tickTime的数量),这里表示为10*2s 
syncLimit=5     
#Leader和Follower之间同步通信的超时时间,这里表示如果超过5*2s,Leader认为Follwer死掉,并从服务器列表中删除Follwer
dataDir=/usr/local/zookeeper-3.8.0/data       
#●修改,指定保存Zookeeper中的数据的目录,目录需要单独创建
dataLogDir=/usr/local/zookeeper-3.8.0/1ogs    
#●添加,指定存放日志的目录,目录需要单独创建
clientPort=2181      #客户端连接端口

#添加集群信息
server.1=192.168.100.30:3188:3288
server.2=192.168.100.40:3188:3288
server.3=192.168.100.50:

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值