elk学习过程第一篇

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了elk学习过程第一篇相关的知识,希望对你有一定的参考价值。

我们遇到的问题是日志太多,如果使用关键字报警,日志里的error,trace, warning等关键字那更是说不过来。所以我们一天的日志报警量是2千多条,于是就想解决这个问题,发现elk可以很好的处理日志,还能分析日志,对收集的日志,后面进一步处理也是很好的。所以就选择试用elk
知道用什么了,那接下来就是部署,试用了。

首先准备

使用的版本, 下载地址:https://www.elastic.co/downloads
项目 version 形式
elasticsearch 6.2.4 rpm
kibana 6.2.4 rpm
filebeat 6.2.4 rpm

系统准备

主机名 系统 安装服务
host1 centos7 elasticsearch+kibana
host2 centos7 elasticsearch
host3 centos7 filebeat

安装elasticsearch

1.下载elasticsearch rpm包,安装(host1+host2)

yum install elasticsearch

2.配置elasticsearch(host1+host2)
vim /etc/elasticsearch/elasticsearch.yml

cluster.name:es
node.name:host1#或者host2
network.host:0.0.0.0
http.port:9200
discovery.zen.ping.unicast.hosts:[‘host1‘,‘host2‘]

2.安装x-pack,做安全认证,权限管理(host1+host2)

/usr/share/elasticsearch/bin/elasticsearch-plugininstallx-pack#安装x-pack
systemctl start elasticsearch#检查running
/usr/share/elasticsearch/bin/x-pack/setup-passwordsinteractive#使用默认回车,输入认证密码比如:elk

3.检查集群状态

curl http://host1:9200/_cluster/health#提示需要账户密码,输入上一步设置的账户密码

返回结果:

{"cluster_name":"es","status":"green","timed_out":false,"number_of_nodes":2,"number_of_data_nodes":2,"active_primary_shards":17,"active_shards":34
    ,"relocating_shards":0,"initializing_shards":0,"unassigned_shards":0,"delayed_unassigned_shards":0,"number_of_pending_tasks":0,"number_of_in_flight_fetch":0
    ,"task_max_waiting_in_queue_millis":0,"active_shards_percent_as_number":100.0}

安装kibana

1.下载kibana rpm包, 安装(host1)

yum install kibana

2.安装x-pack

/usr/share/kibana/bin/kibana-plugininstallx-pack

3.配置kibana (host1)
vim /etc/kibana/kibana.yml

elasticsearch.username:"elk"#输入在安装elasticsearch的时候设置的账户密码
elasticsearch.password:"elk"
elasticsearch.url:"http://localhost:9200"#设置elasticsearch的地址

4.启动kibana

systemctl start kibana

5.设置代理
因为kibana默认启动的监听端口是127.0.0.1. 我们可以使用nginx做代理, 安装nginx就不用说了,说一下nginx的配置
新建文件 /etc/nginx/conf.d/es.conf

server{
listen*:1234;
server_namehost1;
access_log/var/log/nginx/es_access.log;
error_log/var/log/nginx/es_error.log;
location/{
proxy_passhttp://127.0.0.1:5601;
}
}

6.验证服务正常
在浏览器输入:curl http://host1:1234 #提示输入账户密码,输入在 安装elasticsearch的时候设置的kibana账户密码, 返回正常洁面
技术分享图片

安装filebeat

1.下载fileat rpm包,安装 host3

yum install filebeat

2.配置filebeat
vim /etc/filebeat/filebeat.yml

filebeat.prospectors:#设置日志收集
-type:log
enabled:true
paths:
-/var/log/nova/*.log
tags:["nova"]
output.elasticsearch:#设置数据吐到elasticsearch
hosts:["host1:9200"]
protocol:"http"
username:"elk"
password:"elk"

3.启动服务

systemctl start filebeat

4.验证服务
打开kibana界面,management > index Patterns > create index Patterns > 显示有fileat-version-time的文件,说明数据已经收集到es cluster里了
技术分享图片

下一篇继续说kibana的简单使用

以上是关于elk学习过程第一篇的主要内容,如果未能解决你的问题,请参考以下文章

第一篇博客

Java学习第一篇---Java入门准备

python学习打卡第一篇

ignite从0到1的学习过程记录-第一篇:安装和体验

轻量级ORM框架——第一篇:Dapper快速学习

[图形学] 计算机图形学 with OpenGL第一篇