ELK介绍
E = Elasticsearch,一款基于的Lucene的分布式搜索引擎,我们熟悉的github,就是由ElastiSearch提供的搜索,据传已经有10TB+的数据量。
L = Logstash , 一款分布式日志收集系统,支持多输入源,并内置一些过滤操作,支持多输入元
K = Kibana , 一款配合ElasticSearch的web可视化界面,内置非常各种查询,聚合操作,并拥有漂亮的图形化展示功能
部署环境
- Centos 7
- java version “1.8.0_101”
- elasticsearch-5.0.2
- kibana-5.0.2
- logstash-5.0.2
环境搭建
jdk
yum -y install java-1.8.0-openjdk
创建运行ELK的用户
[root@localhost local]# groupadd elsearch
[root@localhost local]# useradd -g elsearch elsearch
可以使用:passwd elsearch进行修改密码
查看系统用户列表:cat /etc/group
创建ELK运行目录
[root@localhost local]# mkdir /elk
[root@localhost local]# chown -R elsearch:elsearch /elk
[root@localhost local]# pwd
/usr/local/elk
关闭防火墙
[root@localhost ~]#service iptables stop
下载
(elasticsearch-5.0.2 | kibana-5.0.2 |
logstash-5.0.2)放在/usr/local/elk目录下,
并且各自进行tar -zxvf 文件名解压
配置Elasticsearch
vim elasticsearch-5.0.2/config/elasticsearch.yml
配置如下
cluster.name: es_cluster
node.name: node-1
path.data: /tmp/elasticsearch/data
path.logs: /tmp/elasticsearch/logs
network.host: 192.168.10.105
http.port: 9200
切换用户启动elasticsearch
[root@localhost elk]# su elsearch
[elsearch@localhost elk]# elasticsearch-5.0.2/bin/elasticsearch &
因为Elasticsearch用root用户启动会报错
curl http://192.168.10.105:9200
Elasticsearch安装完毕
安装logstash
logstash是ELK中负责收集和过滤日志的
[root@localhost elk]# vim logstash-5.0.2/config/logstash.conf
input {
beats {
port => 5044
}
file {
path => "/root/jeecgv3.log"
start_position => "beginning"
}
}
output {
elasticsearch {
hosts => ["192.168.10.105:9200"]
index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
document_type => "%{[@metadata][type]}"
}
}
指定配置文件启动logstash
[root@localhost elk]# logstash-5.0.2/bin/logstash -f logstash-5.0.2/config/logstash.conf
logstash安装完毕
安装kibana
修改配置
[root@localhost elk]# vim kibana-5.0.2-linux-x86_64/config/kibana.yml
server.port: 8888
server.host: "192.168.10.105"
elasticsearch.url: "http://192.168.10.105:9200"
启动kibana
[root@localhost elk]# kibana-5.0.2-linux-x86_64/bin/kibana &
访问 http://192.168.10.105:8888/ 即可访问部署好的系统