微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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 

在这里插入图片描述

修改配置文件

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/

在这里插入图片描述

将node文件剪切更换目录

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

进入到文件中并编译安装

./configure && make && make install

在这里插入图片描述

解压phantomjs

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

在这里插入图片描述

添加执行权限

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

解压elasticsearch

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

在这里插入图片描述


移动elasticsearch-head

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

安装工具

npm install

在这里插入图片描述


修改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&

在这里插入图片描述


使用浏览器链接测试

在这里插入图片描述


在这里插入图片描述

3、安装配置logstash

安装logstash

rpm -ivh logstash-5.5.1.rpm 

在这里插入图片描述


优化命令

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

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

systemctl start logstash
systemctl enable logstash

插入测试数据

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

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述


打开浏览器查看日志

在这里插入图片描述

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

在这里插入图片描述


检查日志采集文件是否有问题

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

重新启动logstash

systemctl restart logstash.service

在这里插入图片描述

5、安装配置kibana

安装kibana

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

在这里插入图片描述


修改配置文件

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

在这里插入图片描述


在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐