ELK入门

ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana 。

Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

Logstash 主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。

Kibana 也是一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。

以下是其原理简图:

为了简化,此处直接将Logstash机器上的/var/log/messages日志传送给Elasticsearch机器,然后Kibana机器来进行可视化分析。

===================================================================================================

一 安装6.2版本的Logstash,Elasticsearch,Kibana:

https://www.elastic.co/guide/en/logstash/current/installing-logstash.html 

https://www.elastic.co/guide/en/elasticsearch/reference/6.2/install-elasticsearch.html

https://www.elastic.co/guide/en/kibana/6.2/setup.html

参考官网会有详细的介绍。

二 部署Logstash,Elasticsearch,Kibana服务:

1. 配置Logstash:

首先进入Logstash配置文件目录:

[root@logstash logstash]# cd /etc/logstash/

我们可以查看以下jvm.options
[root@logstash logstash]# cat jvm.options 
## JVM configuration

# Xms represents the initial size of total heap space
# Xmx represents the maximum size of total heap space

-Xms256m
-Xmx1g
(建议系统内存是Xmx的2倍以上。)

然后进入conf.d目录,写入一个配置文件:

[root@logstash logstash]# cd conf.d/
[root@logstash conf.d]# cat test1.conf 
input {
    file{
        start_position => "beginning"
        path => ["/var/log/messages"]

}
}

output {
    elasticsearch{
        hosts => "192.168.0.113:9200"
}
}
这个配置文件包含最基本的插件。 Input和Output,这两个插件是Logstash配置文件所必须的。

input {
    file{
        start_position => "beginning"
        path => ["/var/log/messages"]

}
}

这一段的意思是,我们从文件中读入数据,文件是该主机上的/var/log/messages,start_position => "beginning"限定了文件是从头至尾地读。

output {
    elasticsearch{
        hosts => "192.168.0.113:9200"
}
}

这一段的意思是:我们将数据输出到elasticsearch主机中,并且定义了elasticsearch主机的IP地址及端口。

2. 配置elasticsearch:

首先,进入elasticsearch服务的配置文件目录:

[root@elasticsearch ~]# cd /etc/elasticsearch/

修改主配置文件:
[root@elasticsearch elasticsearch]# vim elasticsearch.yml


 29 # ----------------------------------- Paths --------------------------------    ----
 30 #
 31 # Path to directory where to store the data (separate multiple locations by     comma):
 32 #
 33 path.data: /var/lib/elasticsearch
 34 #
 35 # Path to log files:
 36 #
 37 path.logs: /var/log/elasticsearch

定义存储数据和日志的目录,使用默认值。

 51 # ---------------------------------- Network -------------------------------    ----
 52 #
 53 # Set the bind address to a specific IP (IPv4 or IPv6):
 54 #
 55 network.host: 192.168.0.113
 56 #
 57 # Set a custom port for HTTP:
 58 #
 59 http.port: 9200
 60 #
 61 # For more information, consult the network module documentation.
 62 #

network.host改为Elasticsearch机器的IP地址,端口按默认9200端口放行。
 

3. 配置Kibana:

首先,进入Kibana的配置文件目录:

[root@kibana ~]# cd /etc/kibana/

修改主配置文件:
[root@kibana kibana]# vim kibana.yml 
  1 # Kibana is served by a back end server. This setting specifies the port to     use.
  2 server.port: 5601
端口按Kibana默认的5601端口放行。
  6 # To allow connections from remote users, set this parameter to a non-loopba    ck address.
  7 server.host: "192.168.0.114"
修改server.host为Kibana机器的IP地址。


 20 # The URL of the Elasticsearch instance to use for all your queries.
 21 elasticsearch.url: "http://192.168.0.113:9200"
这里elasticsearch.url定义了Elasticsearch机器的IP地址。

 30 kibana.index: ".kibana"
这里解注释
 

三. 测试:

在Logstash主机上执行:

[root@logstash conf.d]# /usr/share/logstash/bin/logstash -f test1.conf

最后系统提示:[INFO ] 2019-03-19 23:04:32.035 [Ruby-0-Thread-1: /usr/share/logstash/vendor/bundle/jruby/2.3.0/gems/stud-0.0.23/lib/stud/task.rb:22] agent - Pipelines running {:count=>1, :pipelines=>["main"]}
则表示执行成功。
 

在浏览器中输入:192.168.0.114(Kibana主机IP):6501进入Kibana可视化界面:

点击Discover,可发现从Elasticsearch传来的数据。 输入一个Index Pattern后,点击下一步,然后设置配置后可创建Index Pattern。

在右上角时间选择处选择合适的监控时间,如选择This week。可以出现Elasticsearch上的Logstash传来的messages日志信息。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WUYANGEZRA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值