CentOS 7下用yum方式简单搭建ELK平台

参考文章:
https://www.ibm.com/developerworks/cn/opensource/os-cn-elk/
http://blog.csdn.net/K_Zombie/article/details/51103745

公司之前一直用splunk(破解?),同事提出了搞搞ELK玩的想法,还能顺便写在简历里,对于我这个即将告别运维的人来说,闲着也是闲着,在41℃的天为大家发发光、散散热也不失一项善举-。- 。
整个过程比较简单,把其中遇到的一些坑列一下,以供参考。
网上找到的文档中采用下载tar包方式,比较通用,但是安装会有很多问题(比如找不到用户,权限不对),不过在此推荐centos7的yum直接安装方式,官网有Ubuntu的apt方式也比较简洁。

系统:centos 7 (3.10.0-514.6.2.el7.x86_64)
Java版本: jdk1.8.0_131
注意:本文环境为ELK全部在一台服务器上运行,配置文件仅做了简单的修改,如果要将三个程序分开部署,需要更改配置文件相关配置

官方安装文档
https://www.elastic.co/guide/index.html
kibana源
https://www.elastic.co/guide/en/kibana/current/rpm.html
elasticsearch源
https://www.elastic.co/guide/en/elasticsearch/reference/5.5/rpm.html
logstash源
https://www.elastic.co/guide/en/logstash/current/installing-logstash.html

软件安装方法

打开上面三个源的链接,里面有详细的安装方法,这里只介绍kibana的作为例子
安装kibana:
导入rpm-key

rpm --import[https://artifacts.elastic.co/GPG-KEY-elasticsearch](https://artifacts.elastic.co/GPG-KEY-elasticsearch)
key导入后新建yum源文件

在/etc/yum.repo.d/目录中新建一个.repo结尾的文件
写入如下内容

[kibana-5.x]
name=Kibana repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

安装

yum install kibana -y

(elasticsearch和logstash安装方法同理,在此不再赘述,需要注意的是,logstash安装前要先配置好Java环境,不然安装后会报错)

软件安装好后,为了能够访问,先简单更改一下配置文件。
elasticsearch:

vim /etc/elasticsearch/elasticsearch.yml

设置network.host: 为"0.0.0.0"或者本机IP

kibana:

vim /etc/kibana/kibana.yml

设置server.host: 为"0.0.0.0"或者本机IP

Logstash:

vim /etc/logstash/logstash.yml

设置http.host: 为"0.0.0.0"或者本机IP

安装后启动ELK(注意按elasticsearch logstash kibana顺序启动

启动elsaticsearch:

Systemctl start elasticsearch

访问 ip:9200即可

启动logstash:

Systemctl start logstash

网上的验证方法是用logstash工具,但是yum安装后并没有此工具,只能看日志有没有报错信息。没有就算成功了

启动kibana:

Systemctl start kibana

访问 ip:5601即可

kibana启动后需要配置索引,按照默认配置创建一下就好了,如果kibana是先启动的,配置logstash-*的索引会提示找不到,重启或者logstash正常后等一会就好了。

接下来简单的测试一下索引日志的功能

在logstash文件夹下新建配置文件:

vim /etc/logstash/conf.d/logstash_start.conf

内容如下

input {
file {
path => "/var/log/messages"
start_position => "beginning"
}
}
output {
elasticsearch { hosts => ["localhost:9200"] }
}

意思就是将/var/log/messages文件作为输入,然后输出到9200端口的elasticsearch程序中。
编辑后保存,重启logstash

Systemctl restat logstash

打开kibana,就可以看见结果了

CentOS 7下用yum方式简单搭建ELK平台_第1张图片

你可能感兴趣的:(CentOS 7下用yum方式简单搭建ELK平台)