本文所使用的软件版本如下filebeat 5.4.0,elasticsearch 5.4.0,kibana 5.4.0,
最近公司需要做实时日志分析系统,在网上查了很多资料,发现ELK是最适合的,而且是开源,官方文档还算详细。
尽管ELK环境搭建在网上一搜一大片,即使如此我还是花了好几天的时间才能搭好,因为其中很多很多细节网上没有提到。所以希望将我搭的过程中遇到的问题分享出来。
在这过程中学习到了很多东西,其中最重要的一点就是,多看官方原版英文文档,不要看中文翻译的,不要看中文翻译的,不要看中文翻译的!! 其中stackoverflow是比较好用的网站!!!
指导人很牛,给了很多的建议以及指导。以前安装软件只知道用yum,apt-get等等,基本没用过源码安装。指导人一句话给我讲明白了,原话是这样说的:yum ,apt-get等等安装方法说白了就是windows安装软件时的下一步下一步。。根本没有选择路径的权利,基本都是安装在/opt,配置文件在/etc/...下,而且对于不同的软件,下载的位置根本不对,这样就不便于集中管理。我之前就是这么安装的ELK,但是全卸载了。因为实在是不容易管理,看配置还要换很多目录,切换的烦。所以全部用源码安装。
啥是源码安装啊?说白了就是从官方下载压缩文件,什么.tar,.tar.gz格式的文件,然后在linux下解压,这样就会形成一个目录,这就是源码安装。简单吧!!
1.ELK工作流程图(十分关键,不理解就没法配置环境!)
(1)首先最左侧这几个都是logstash agent,我们可以选择其中一种,logstash agent是运行在我们想要收集日志的机器上的,也就是我们想收集哪台机器的日志,我们就把logstash agent安装在哪台机器上。他的作用是收集日志,其中可以选择过滤掉一些日志的行,我们可以设置,下面有详细说明。
(2)logstash agent收集的数据要发送给kafka,这样为了防止在网络阻塞的时候数据丢失。相当于缓冲区,kafka具体内容不介绍,就当个黑盒就好了。lo