⭐⭐⭐ Spring Boot 项目实战 ⭐⭐⭐ Spring Cloud 项目实战
《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 jianshu.com/p/b4c3fb0babaa 「jimmy_w」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注**微信公众号:【芋道源码】**有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

一.先描述一下使用这种框架搭建平台的工作流程。

二.对上面的工作流程进行简单描述。

(1)将filebeat部署到需要采集日志的服务器上,filebeat将采集到的日志数据传输到kafka中。

(2)kafka将获取到的日志信息存储起来,并且作为输入(input)传输给logstash。

(3)logstash将kafka中的数据作为输入,并且把kafka中的数据进行过滤等其他操作,然后把操作后得到的数据输入(output)到es(elasticsearch)中。

(4)es(基于lucene搜索引擎)对logstash中的数据进行处理,并且将数据作为输入传送给kibna进行显示。

三.部署该平台需要的软件。

本次部署使用的软件及版本如下:

(1) elasticsearch-6.1.3.tar.gz

(2)filebeat-6.1.3-linux-x86_64.tar.gz

(3)kibana-6.1.3-linux-x86_64.tar.gz

(4)logstash-6.2.3.tar.gz

(5)kafka_2.12-1.0.0.tgz

以上软件可以到elasticsearch官网下载需要的软件:

https://www.elastic.co/cn/products

四.安装以及配置各软件。

(1)elasticsearch安装配置

​ 1.首先解压elasticsearch-6.1.3.tar.gz

​ tar -zxvf elasticsearch-6.1.3.tar.gz

​ 2.修改config/elasticsearch.yml配置文件

​ 将配置中的network.host修改为本机的ip地址,配置配置自己的端口号

​ 3.启动elasticsearch(启动该软件不能使用root用户,需要普通用户,可以新建普通用户,将 目录的权限都赋予给该新用户)

​ nohup bin/elasticsearch &

​ 验证是否启动成功:

(2)kibana安装配置:

​ vim config/kibana.yml

​ 具体配置如下(根据自己的ip以及端口情况进行配置)

​ 启动kibana: nohup bin/kibana &

​ 在浏览器中验证是否启动成功:

(3)kafka安装与配置:

请参考 《芋道 Kafka 极简入门》

(4)logstash安装与配置:

在logstash安装软件中新建test.conf配置文件。

配置如下,该配置中没有加过滤器filter

上述配置说明如下:

topics后面的test和logstash-tomcat表示从kafka中topic为test与logstash-tomcat的主题中获取数据,此处的配置根据自己的具体情况去配置。

bootstrap_servers表示配置kafka的ip与端口。

output配置中的hosts表示elasticsearch的ip和端口好,index的配置是用于后面在kibana中配置index使用。

启动logstash:nohup bin/logstash -f test.conf &

(5)filebeat安装与配置:

修改filebeat的配置文件filebeat.yml

paths后的值表示从/home/elk/log/access.log中获取数据,tags表示日志标签,在后面的kibna中查看数据时可以找到该tag标签,并且可以根据该tag标签查找过滤查找数据。

添加kafka输出的配置,将elasticsearch输出配置注释掉。hosts表示kafka的ip和端口号,topic表示filebeat将数据输出到topic为test的主题下,此处也根据自己情况修改。

启动filebeat: nohup ./filebeat -c filebeat.yml &

(6)在kibana操作:

以上平台都搭建好以后在kibana上创建index索引,该index索引和logstash配置中的output中的index对应。

该index名称要和logstash配置中的index正则匹配,否则新增不了。

验证搭建的平台,日志数据是否能正常获取及显示。在filebeat配置文件中paths对应的目录下新增access.log文件,并且添加数据进去,然后在kibana上查看数据是否正常显示。

点开任何一条数据可以查看详细情况:

截图中的tags即表示filebeat中配置文件中的tags配置,可以将tags作为filter过滤条件进行查询。

在分布式系统中,可以将某一类服务器日志归为一个tag,这样在查询日志时可以减小查询的区域。

说明:

1.在部署的过程中可能会遇到各种情况,此时根据日志说明都可以百度处理(如部署的过程中不能分配内存的问题)。

2.如果完成后如果数据显示不了,可以先到根据工作流程到各个节点查询数据是否存储和传输成功。如查询filebeat是否成功把数据传输到了kafka,可以使用kafka中如下命令查询:

bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

查看日志filebeat中的数据是否正常在kafka中存储。

在filebeat配置的日志中手动添加日志: echo "test" > access.log,可以在kafka中动态的显示出该信息

3.该平台的搭建是比较简便的方式,大家可以更加灵活以及动态的配置该平台。

文章目录
  1. 1. 一.先描述一下使用这种框架搭建平台的工作流程。
  2. 2. 二.对上面的工作流程进行简单描述。
  3. 3. 三.部署该平台需要的软件。
  4. 4. 四.安装以及配置各软件。