在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)

一个朋友总催着我把ELK的安装文档整理出来给他,但是本人自我感觉有的时候比较懒,所以就一直没有整理,这不今天是周末,我就抽空整理了一下ELK安装及测试过程,网上ELK安装的文档有很多,本人也是结合网上加上自己亲自动手安装整理的下面的安装步骤,如果整理的有哪里不对的地方,很乐意听各位大神的指点,目前只是单机器安装,没有做集群,等有空在整理集群的安装步骤吧,我相信大家都知道什么是ELK,但是还是简单介绍一下吧,ELK(Elasticsearch+Logstash+Kibana组成),是开源的实时日志分析平台,能够很方便的帮助大家收集日志,进行集中话的日志管理,并且能提供日志的检索和统计。废话有点多了,直接进入主题。

环境准备

  1. CentOS reslease 6.5(Final)(我只以这个版本系统为例,其他版本应该差不多)
  2. elasticsearch-6.4.0.tar.gz
  3. logstash-6.4.0.tar.gz
  4. kibana-6.4.0-linux-x86_64.tar.gz
  5. jdk-8u181-linux-x64.rpm(官方建议5.4版本最至少Java 8 或以上)
  6. redis-5.0.3.tar.gz(用来输出日志的)

下面开始进行安装步骤

一、Elasticsearch

  1. 描述:
    ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
    2.在安装Elasticsearch之前,请先把jdk1.8安装好,这里就不描述jdk的安装过程了,先将elasticsearch-6.4.0.tar.gz上传到/usr/local,目录下,如图:
    在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第1张图片
    3.将elasticsearch-6.4.0.tar.gz解压
tar -xvf elasticsearch-6.3.2.tar.gz

4.解压完启动elasticsearch

[root@localhost bin]# ./elasticsearch

此时会出现下图的错误:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第2张图片
此错误的意思就是说不能用root用户进行启动,经上网查询需要自己建立用户去启动,还与一种方案是启动时增加es.insecure.allow.root=true参数,此方法没有测试,网上说该方法用在elasticsearch-2.1.1版本启动成功了(./bin/elasticsearch -Des.insecure.allow.root=true),有兴趣的小伙伴可以自己尝试一下,这里我就不多说了,我只描述我测试过的解决方案,新建用户。
5.创建elasticsearch用户组

[root@localhost local]# groupadd elasticsearch

6.创建用户 els 并设置密码为els

[root@localhost local]# useradd els
[root@localhost local]# passwd els

如下图:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第3张图片
7.将用户els 添加到 elasticsearch 用户组中

[root@localhost local]# usermod -G elasticsearch els

8.增加sudo权限

[root@localhost etc]# vim sudoers

增加内容如下图,保存时需要强制退出并保存(:wq!)
在这里插入图片描述
增加完用户就可以切换els用户了

[root@localhost etc]# su els

在这里插入图片描述
9.修改elasticsearch-6.4.0 文件夹以及内部文件的所属用户为els, 用户组为elasticsearch,-R表示逐级

[root@localhost local]$ sudo chown -R els:elasticsearch elasticsearch-6.4.0

10.修改elasticsearch.yml文件

[root@localhost config]# vi elasticsearch.yml

在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第4张图片
11.此时启动elasticsearch会报如下图的错误:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第5张图片
12.修改sysctl.conf文件,在最后增加vm.max_map_count=262144

[root@localhost etc]# vi sysctl.conf

增加完之后,执行sysctl -p,刷新生效,如下图:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第6张图片
13.修改security/limits.conf

[root@localhost etc]# vi security/limits.conf

在最下面增加如下内容:

els hard nofile 65536
els soft nofile 65536

在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第7张图片
14.修改90-nproc.conf文件

[root@localhost etc]# vi security/limits.d/90-nproc.conf

修改内容如下:
在这里插入图片描述
15.重新启动Elasticsearch,此时启动应该可以成功了,然后访问http://ip:9200,如果出现如下也没,说明启动成功了
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第8张图片
二、Logstash
1.描述:
Logstash 是开源的服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的 “存储库” 中。(我们的存储库当然是 Elasticsearch。)
2.将logstash-6.4.0.tar.gz上传到/usr/local,目录下,然后解压:

[root@localhost local]# tar -xvf logstash-6.4.0.tar.gz

3.进入目录logstash-6.4.0/config创建logstash.conf文件,内容如下:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第9张图片
我这里的数据来源是redis,所以配置入口是redis地址,大家也可以不用我这个,也可以用log4j作为来源。
4.启动Logstash

[root@localhost logstash-6.4.0]# ./bin/logstash -f config/logstash.conf

启动成功如下图:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第10张图片
三、Kibana
1.描述:
Kibana是一个开源的分析和可视化平台,可以帮助您汇总、分析和搜索重要数据日志。
2.将kibana-6.4.0-linux-x86_64.tar.gz上传到/usr/local,目录下,然后解压:

[root@localhost local]# tar -zxvf kibana-6.4.0-linux-x86_64.tar.gz

3.进入kibana-6.4.0-linux-x86_64/config目录修改kibana.yml中修改如下配置:

server.port: 5601
server.host: "localhost"
elasticsearch.url: "http://ip:9200"
kibana.index: ".kibana"

4.启动服务

[root@localhost kibana-6.4.0-linux-x86_64]# ./bin/kibana

启动完,访问:http://ip:5601,看到如下页面代表成功:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第11张图片
到现在为止,Elasticsearch+Logstash+Kibana都已经成功的安装完成了,下面我们要测试一下看看,是否可用。
现在通过redis-cli,发送消息

127.0.0.1:6379> PUBLISH logstash-demo "hello world"

在这里插入图片描述
Logstash打印的log如下:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第12张图片
此时代表数据发送成功,并且logstash也收到数据了,现在需要在kibana上创建日志的索引,如图:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第13张图片
目前我已经创建好了索引,如图:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第14张图片
此时就可以查到我们刚才发送的数据了,如果:
在CentOS release 6.5 (Final) 安装ELK(Elasticsearch+Logstash+Kibana)_第15张图片
好啦,截至到目前Elasticsearch+Logstash+Kibana的安装及测试已经完成了,如果我写的有问题可以及时提醒我,我会及时改正的,欢迎大家相互沟通相互学习,如果问题可以给我留言,我会尽快回复大家的谢谢。

你可能感兴趣的:(技术笔记)