ELK对于没有接触的来说,并没有一般的服务那么容易安装和使用,不过也没有那么难,elk一般作为日志分析套装工具使用。logs由logstash输 入,logstash通过配置文件对日志做过滤、匹配,就是用来分析日志的,输出到elasticsearch,所以他的配置需要和日志相匹配。 elasticsearch可以看做是一个nosql数据库,是把logstash处理后的日志以日期方式存储起来。kibana从elastic里面获 取日志数据,提供一个前端界面给日志做展示(和Grafana功能一样)。
logs →→ logstash →→ elasticsearch ←← kibana
下载
https://ftp2.cn.debian.org/ELK/
https://ftp2.cn.debian.org/elasticstack/5.x/yum/
安装
ELKstack是Elasticsearch、Logstash、Kibana三个开源软件的组合。目前都在Elastic.co公司名下。
ELK是一套常用的开源日志监控和分析系统,包括一个分布式索引与搜索服务Elasticsearch,一个管理日志和事件的工具logstash,和一个数据可视化服务Kibana。
logstash_1.5.3
:负责日志的收集,处理和储存elasticsearch-1.7.2
:负责日志检索和分析kibana-4.1.2-linux-x64.tar.gz
:负责日志的可视化jdk-1.7.0_03
:java环境redis-2.4.14
:DB
基础环境
1、角色、ip、版本、内核
Server A
10.1.10.185
、3.2.0-4-amd64
、7.8
java
,elasticsearch
,redis
,kibana
,logstash(agent indexer)
Client B
10.1.10.117
、3.2.0-4-amd64
、7.8
java
,logstash(agent)
Elasticsearch
基于java,默认端口为9200
,elasticsearch-5.x
基于Java 8
,慎重选择;
下载
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.2.rpm
安装
rpm -ivh elasticsearch/elasticsearch-5.5.2.rpm
修改索引存储目录:打开/etc/elasticsearch/elasticsearch.yml
,设置path.data为/var/data
修改文件权限
chown elasticsearch:elasticsearch /var/data -R
chown elasticsearch:elasticsearch /var/log/elasticsearch -R
启动
service elasticsearch start
测试
curl http://localhost:9200/
设置开机启动
chkconfig --add elasticsearch
Logstash
基于ruby
配置文件:/etc/logstash/startup.options
logstash-5.x基于Java8,慎重选择;
wget https://artifacts.elastic.co/downloads/logstash/logstash-5.5.2.rpm
rpm -ivh logstash-5.5.2.rpm
默认安装在/usr/share/logstash
nohup bin/logstash agent -f /etc/logstash/conf.d/ &
指定配置文件目录启动(多个配置文件)
nohup bin/logstash agent -f /etc/logstash/conf.d/redis.cnf &
配置vim /etc/kibana/kibana.yml
,指定elasticsearch服务器
以上是接收方,通常要配置一个或多个发送方,重复以上步骤即可。
Kibana
基于node.js,默认端口为5601
wget https://artifacts.elastic.co/downloads/kibana/kibana-5.5.2-x86_64.rpm
安装
rpm -ivh kibana-5.5.2-x86_64.rpm
启动
service kibana start
测试
curl http://localhost:5601
新版的kibana默认是不支持外网访问的,可使用nginx
代理
过程中如果遇到什么问题,欢迎在下方留言!