ELK 實時日誌分析平臺環境搭建

mark

簡單介紹

ELK(ElasticSearch, Logstash, Kibana),三者組合在一塊兒搭建實時的日誌分析平臺,目前好多公司都是這套!
<!-- more -->html

  • Elasticsearch 是個開源分佈式搜索引擎,它的特色有:分佈式,零配置,自動發現,索引自動分片,索引副本機制,restful 風格接口,多數據源,自動搜索負載等。
  • Logstash 是一個徹底開源的工具,他能夠對你的日誌進行收集、過濾,並將其存儲供之後使用(如,搜索)。
  • Kibana 也是一個開源和免費的工具,它 Kibana 能夠爲 Logstash 和 ElasticSearch 提供的日誌分析友好的 Web 界面,能夠幫助您彙總、分析和搜索重要數據日誌。

安裝 ES

。。。這個省略,不 bb 了,之前寫過。。。傳送門:http://www.54tianzhisheng.cn/...java

安裝 Logstash

ELK 整套環境搭建版本很關鍵,最好全統一一個版本,不然出啥問題就不太好找了。這是我見過版本統一最嚴格的了。而已 ES 版本升了後,其餘的都要都要升級,包括其插件。升級代價挺大的,最好一開始就定位好要安裝哪一個版本!node

在官網下好安裝包後傳到 Linux 上,這是速度最快的。linux

在 /usr/local 目錄下解壓:

tar -zxvf  logstash-5.5.2.tar.gz

進入解壓後的目錄:

cd /usr/local/logstash-5.5.2/bin

新增配置文件:

vim logstash.conf

增長:

input{
    file{
      path => ["/var/log/*.log"]
    }
}

output{
   elasticsearch{
       hosts => ["192.168.153.135:9200"]
       index => "logstash__log"
  }
}

Logstash 的啓動方式是:vim

在 /usr/local/logstash-5.5.2/bin 目錄下運行:

./logstash -f logstash.conf

安裝 Kibana

一樣,官網下好安裝包,上傳到 Linux。安全

解壓:

tar -zxvf kibana-5.5.2-linux-x86_64.tar.gz

修改配置文件 kibana-5.5.2/config/kibana.yml 以下:

Server.host  //配置機器ip/hostname

Server.name  //此kibana服務的名稱

elasticsearch.url  //es master節點url

Kibana 啓動方式:restful

在 /usr/local/kibana-5.5.2/bin 目錄下運行:

./kibana

Web界面訪問: http://ip:5601 此時須要輸入用戶名和密碼登陸,默認分別是 elastic 和 changemeoracle

X-Pack

X-Pack 是一個 Elastic Stack 的擴展,將安全,警報,監控,報告和圖形功能包含在一個易於安裝的軟件包中。elasticsearch

ES 和 Kibana 均可安裝。分佈式

插件 x-pack-5.5.2.zip 依舊官網下。

ES 安裝 X-Pack

cd /usr/local/elasticsearch/bin

./elasticsearch-plugin install file:///opt/es/x-pack-5.5.2.zip

若是成功:顯示以下

[root@node1 bin]# ./elasticsearch-plugin install file:///opt/es/x-pack-5.5.2.zip
-> Downloading file:///opt/es/x-pack-5.5.2.zip
[=================================================] 100%
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@     WARNING: plugin requires additional permissions     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
* java.io.FilePermission \\.\pipe\* read,write
* java.lang.RuntimePermission accessClassInPackage.com.sun.activation.registries
* java.lang.RuntimePermission getClassLoader
* java.lang.RuntimePermission setContextClassLoader
* java.lang.RuntimePermission setFactory
* java.security.SecurityPermission createPolicy.JavaPolicy
* java.security.SecurityPermission getPolicy
* java.security.SecurityPermission putProviderProperty.BC
* java.security.SecurityPermission setPolicy
* java.util.PropertyPermission * read,write
* java.util.PropertyPermission sun.nio.ch.bugLevel write
* javax.net.ssl.SSLPermission setHostnameVerifier
See http://docs.oracle.com/javase/8/docs/technotes/guides/security/permissions.html
for descriptions of what these permissions allow and the associated risks.

Continue with installation? [y/N]y
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@        WARNING: plugin forks a native controller        @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
This plugin launches a native controller that is not subject to the Java
security manager nor to system call filters.

Continue with installation? [y/N]y
-> Installed x-pack

Kibana 安裝 X-Pack

cd /usr/local/kibana-5.5.2/bin

./kibana-plugin install file:///opt/es/x-pack-5.5.2.zip

安裝成功以下:

[root@node1 bin]# ./kibana-plugin install file:///opt/es/x-pack-5.5.2.zip
Attempting to transfer from file:///opt/es/x-pack-5.5.2.zip
Transferring 159867054 bytes....................
Transfer complete
Retrieving metadata from plugin archive
Extracting plugin archive
Extraction complete
Optimizing and caching browser bundles...
Plugin installation complete

啓用 x-pack 安全機制

分別在 kibana.yml 和 elasticsearch.yml 中加入下行

xpack.security.enabled: true

這樣後,你再打開 ES 的 head 界面和 Kibana 管理界面就須要輸入帳號密碼了。

mark

上圖右邊是安裝 X-Pack 後的,功能多了幾個。

最後

環境搭建很簡單,後面若是有時間的話能夠再講講在 Kibana 的 Dev Tools 上構建 ES 的 JSON 串來對 ES 進行操做。

我還寫過 ES 相關的文章:

一、Elasticsearch 默認分詞器和中分分詞器之間的比較及使用方法

二、全文搜索引擎 Elasticsearch 集羣搭建入門教程

三、ElasticSearch 集羣監控

四、ElasticSearch 單個節點監控

結尾

本文首發於: zhisheng 的博客

轉載請註明地址:http://www.54tianzhisheng.cn/2017/12/25/ELK/

相關文章
相關標籤/搜索