ElasticSearch+Kibana+Logstash实现日志可视化运维监控

1.目标

1.安装ElasticSearch
2.安装Kibana
3.安装Logstash采集/var/log/messages日志内容
4.图表化展示日志监控结果

2.版本

这三者的版本号要完全一样
ElasticSearch 6.1.1
Kibana 6.1.1
Logstash 6.1.1
Jdk1.8.0_181

3.安装ElasticSearch

安装包:https://cloud.189.cn/t/zuQz6v2YZRVb (访问码:6sbf)
下载网站:https://www.elastic.co/cn/downloads/

1.创建普通用户和用户组es
groupadd es
useradd es -g es -p 123456 
2.将安装包解压到/usr/local
tar -xvf elasticsearch-6.1.1.tar.gz -C /usr/local
3.调整操作系统VMA虚拟内存大小,文件数量上限
echo 262144 >> /proc/sys/vm/max_map_count
vim /etc/security/limits.conf
	* hard nofile 262144
	* soft nofile 262144
4.编辑配置文件elasticsearch.yml(/usr/local/elasticsearch-6.1.1/config)

	cluster.name: study_cluster
	node.name: master
	path.data: /usr/local/elasticsearch-6.1.1/data
	path.logs: /usr/local/elasticsearch-6.1.1/logs
	network.host: 0.0.0.0
	http.port: 9200
5.启动
cd /usr/local/elasticsearch-6.1.1/bin
./elasticsearch	前台启动
./elasticsearch	-d 后台启动
6.启动可能报错情况
错误:[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决:在/etc/sysctl.conf追加vm.max_map_count=262144,重启即可

错误:Unable to locate appender "rolling" for logger config "root"
解决:创建普通用户,用普通用户启动

4.安装Kibana

下载:curl -O https://artifacts.elastic.co/downloads/kibana/kibana-6.1.1-linux-x86_64.tar.gz

1.解压到/usr/local
tar -xvf kibana-6.1.1-linux-x86_64.tar.gz -C /usr/local
2.编辑配置文件kibana.yml(/usr/local/kibana-6.1.1-linux-x86_64/config)
	server.host: 0.0.0.0
	server.port: 5601
3.启动
cd /usr/local/kibana-6.1.1-linux-x86_64/bin
nohup ./kibana >/dev/null &	

5.安装Logstash采集/var/log/messages日志内容

安装包:https://cloud.189.cn/t/NJ3iAfnEzIzm (访问码:zqm1)

1.安装
	yum install logstash-6.1.1.rpm
2.编写es.conf配置文件(/etc/logstash/conf.d)
	input {	
	  file {
	    path => ["/var/log/messages"]	#从/var/log/messages读取日志内容
	    type => "syslog"
	    start_position => "end"			#从日志的末尾开始读取,beginning是从开头读起
	  }
	}
	filter{
	    if "/containers"  in [message]{  #过滤掉日志中包含‘containers’的日志内容
	        drop{}
	    }
	       
	    grok {   #解析日志内容,将识别到的月份存放到month,天数存放至monthday,时间存放到time,主机名存放到hostname
	        match => {"message" => "%{MONTH:month} %{MONTHDAY:monthday} %{TIME:time} %{HOSTNAME:hostname} %{WORD:word}"}	
	   }
	}
	
	output {
	  elasticsearch {
	    hosts => ["http://192.168.8.140:9200"]	# 连接ElasticSearch的ip和端口
	    index => "mylogstash1"		#此索引不存在的话会自动创建
	    
	  }
	}
3.启动
	cd /usr/share/logstash/bin
	#-f指定配置文件
	#--config.reload.automatic 每3秒自动读取配置
	./logstash -f /etc/logstash/conf.d/es.conf --config.reload.automatic

6.图表化展示日志监控结果

1.Kibana添加索引

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.查看索引内容

在这里插入图片描述

在这可以选择要查看的时间段

在这里插入图片描述

这些都是Logstash中grok解析出来的字段

在这里插入图片描述

3.绘制饼图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4.制作标签云图

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.最终效果

在这里插入图片描述


版权声明:本文为qq_42794720原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。