ELK日志分析系统

ELK日志分析系统

一、ELK日志分析系统

1、ELK的作用和特点

1)ELK的作用 
	集中化管理日志
	对日志配置群集避免单节点故障,日志丢失
2)ELK特点 
	开源 
	不支持日志分析
	支持集中化管理

2、ELK组成

1)elasticsearch
	开源的日志搜索和存储引擎
	采用分布式设计
	自动配置日志群集
	支持零配置负载均衡功能
2)logstash
	负责日志采集
	对客户端日志进行采集、格式化、输出到elasticsearch存储
	安装在客户端上
3)kibana
	支持图形化界面查看日志
	兼容强
	安装在服务器端

3、logstash组成

1)shipper
	日志采集
	实时监控日志变化
	将日志格式化上传到elasticsearch
2)indexer
	日志存储
	创建索引 
3)broker
	接收多个shipper采集的日志
4)search and stroage
	允许用户搜索和存储日志信息
5)web interface
	支持kibana访问平台中的数据
	支持WEB页面查看日志

二、配置ELK

1、Elasticsearch

安装

rpm -ivh /mnt/elasticsearch-5.5.0.rpm 

ELK日志分析系统
修改配置文件

vim /etc/elasticsearch/elasticsearch.yml
18 cluster.name: my-elk						                       	//群集名字
25 node.name: centos01					                          	//节点计算机名
46 bootstrap.memory_lock: false			                         	//不锁定内存
59 network.host: 192.168.100.10				                        //监听IP
64 http.port: 9200									                //监听端口
74 discovery.zen.ping.unicast.hosts: ["centos01", "centos02"]	    //将节点加入群集

启动服务设置开机自动启动

systemctl daemon-reload
systemctl start elasticsearch.service
systemctl enable elasticsearch.service

监听端口

netstat -anptu | grep 9200

2、elasticsearch-head

解压node文件压缩包

tar zxvf /mnt/node-v8.2.1.tar.gz -C /usr/src/

ELK日志分析系统
将node文件剪切更换目录

mv /usr/src/node-v8.2.1/ /usr/local/node

进入到文件中并编译安装

./configure && make && make install

ELK日志分析系统
解压phantomjs

tar jxvf /mnt/phantomjs-2.1.1-linux-x86_64.tar.bz2 -C /usr/src/

ELK日志分析系统
添加执行权限

cp phantomjs /usr/local/bin/
chmod +x /usr/local/bin/phantomjs 

解压elasticsearch

tar zxvf /mnt/elasticsearch-head.tar.gz -C /usr/src/

ELK日志分析系统
移动elasticsearch-head

mv /usr/src/elasticsearch-head/ /usr/local/

安装工具

npm install

ELK日志分析系统
修改elasticsearch跨域访问

vim /etc/elasticsearch/elasticsearch.yml
	 65 http.cors.enabled: true	
	 66 http.cors.allow-origin: "*"

重启

/etc/init.d/elasticsearch restart

修改elasticsearch-head配置文件监听9200

vim /usr/local/elasticsearch-head/_site/app.js
 4329 this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.100.10:9200";

修改修改elasticsearch-head配置文件监听9100端口

vim /usr/local/elasticsearch-head/Gruntfile.js
	 93                                         hostname:'192.168.100.10',
	 94                                         port: 9100,

启动服务

cd /usr/local/elasticsearch-head/
npm run start&

ELK日志分析系统
使用浏览器链接测试
ELK日志分析系统
ELK日志分析系统

3、安装配置logstash

安装logstash

rpm -ivh logstash-5.5.1.rpm 

ELK日志分析系统
优化命令

ln -s /usr/share/logstash/bin/logstash /usr/local/bin/

启动服务设置开机自动启动

systemctl start logstash
systemctl enable logstash

插入测试数据

logstash -e 'input { stdin{}} output { stdout{}}'

ELK日志分析系统

logstash -e 'input { stdin{}} output { stdout{ codec=>rubydebug}}'

ELK日志分析系统

logstash -e 'input { stdin{}} output { elasticsearch{hosts => ["192.168.100.10:9200"]}}'

ELK日志分析系统
打开浏览器查看日志
ELK日志分析系统

4、采集apache成功日志

设置允许日志读取

chmod o+r /var/log/httpd/access_log 

创建采集日志文件

touch /etc/logstash/conf.d/apache.conf
chmod +x /etc/logstash/conf.d/apache.conf 
vim /etc/logstash/conf.d/apache.conf

ELK日志分析系统
检查日志采集文件是否有问题

logstash -f /etc/logstash/conf.d/apache.conf 

重新启动logstash

systemctl restart logstash.service

ELK日志分析系统

5、安装配置kibana

安装kibana

rpm -ivh /mnt/kibana-5.5.1-x86_64.rpm

ELK日志分析系统
修改主配置文件

vim /etc/kibana/kibana.yml 
	3 server.port: 5601
	9 server.host: "192.168.100.10"
	24 elasticsearch.url: "http://192.168.100.10:9200"

启动服务

systemctl start kibana
systemctl enable kibana

ELK日志分析系统
ELK日志分析系统

上一篇:ELK日志分析系统解释


下一篇:vmware vsphere 精简置备、厚置备转换 thin和thick转换教程