ELK是什麼?
E=ElasticSearch ,一款基於的Lucene的分佈式搜索引擎,咱們熟悉的github,就是由ElastiSearch提供的搜索,據傳已經有10TB+的數據量。
L=LogStash , 一款分佈式日誌收集系統,支持多輸入源,並內置一些過濾操做,支持多輸入元
K=Kibana , 一款配合ElasticSearch的web可視化界面,內置很是各類查詢,聚合操做,並擁有漂亮的圖形化展現功能
爲何要用ELK?
在實際應用中,咱們的日誌是很是重要的,它一般會記錄一些比較重要的信息,如應用程序的log記錄的error,warn級別的log,一般在量小的狀況下,咱們能夠直接vi+awk+sed+grep定位緣由,在量大的時候,這種方式就捉襟見肘了,並且咱們還要各類聚合,或者基於異常多個關鍵詞的搜索,並有且,或,交,並,差,補,排序等一些操做,並且相應速度必須給力,若是線上環境出了故障,可以馬上準肯定位,ELK就是高手,在百萬大軍中取上將首級,猶如探囊取物,因此這時候ELK就很是適合了,固然除此以外,ELK也常常在運維工做中大放光彩,在應用級別的實時監控,很是適合一些重要核心服務的預警。
ELK如何安裝搭建?
環境要求:
Linux系統:Centos7
Java版本:JDK1.8
ELK均爲最新版本:
(1)ElasticSearch1.7.2 基於Lucene4.10.4的版本
(2)Logstash1.5.4
(3)Kibana4.1.2
集羣拓撲:
ElasticSearch 3臺機器:
集羣名:search
機器名+es節點名 => ip地址
h1 => 192.168.1.120
h2 => 192.168.1.121
h3 => 192.168.1.122
Logstash 192.168.1.120
Kibana 192.168.1.120
下載:
elasticsearch: wget https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.3.tar.gz
logstash : wget https://download.elastic.co/logstash/logstash/logstash-1.5.4.tar.gz
kibana : wget https://download.elastic.co/kibana/kibana/kibana-4.1.2-linux-x64.tar.gz
一: 安裝elasticsearch集羣:
(1)解壓到指定目錄
(2)配置elasticsearch.yml裏面,集羣名字和節點名字,若是不配置默認集羣名爲elasticsearch,節點名隨機生成一個
(3) 在線安裝head和bigdisk插件
直接在elasticsearch的根目錄下,分別輸入:
bin/plugin --install mobz/elasticsearch-head 安裝head
bin/plugin --install lukas-vlcek/bigdesk 安裝bigdesk
(4)scp分發安裝完畢後的elasticsearch
(5)依次啓動各個機器上的elasticsearch
(6)head顯示以下:
(7)bigdisk顯示以下:
二:安裝logstash
(1)解壓到指定目錄
(2)在根木下新建一個conf目錄,在裏面新建一個配置文件first.conf
(3)啓動logstash
執行命令: bin/logstash -f conf/first.conf
三:安裝kibana
(1)解壓到指定目錄
(2)在根目錄執行bin/kibana直接啓動
(3)訪問http://192.168.1.120:5601/ 配置一個ElasticSearch索引
(4)在logstach裏面添加數據
(5)查看圖表:剛新加的數據
四: 至此,ELK組件已經安裝完畢,帶圖形化界面的簡單日誌查詢分析系統就搞定了
本篇只是一個簡單的入門例子,如需深刻能夠研究elastic的官網文檔:
https://www.elastic.co/guide/index.html html