ElasticSearch+Logstash+Kibana+Filebeats日誌系統
阿新 • • 發佈:2019-02-06
下載地址
安裝ElasticSearch
下載elasticsearch-5.5.1.zip,解壓就可以使用。
$ELASTICSEARCH_HOME/bin/elasticsearch
配置叢集,我配置的是偽叢集,就是在一臺機器上執行多個例項。把config和data資料夾複製出來,修改下配置檔案,在啟動的時候指定對應的配置檔案資料夾就可以了,如下:
$ELASTICSEARCH_HOME/bin/elasticsearch -Epath.conf=$ELASTICSEARCH_HOME/config1
安裝elstatic-search head
可以檢視es的執行情況。
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install grunt --save
npm run start
訪問localhost:9100,如果叢集健康值:顯示“未連線”,則給ES新增跨域支援。如下:
vim $ELASTICSEARCH_HOME/config/elasticsearch.yml
新增如下內容:
http.cors.enabled: true
http.cors.allow-origin: "*"
安裝成功,訪問localhost:9100。
安裝logstash
下載、解壓。
編寫logstash.conf,如下:
input { stdin { } }
output {
elasticsearch { hosts => ["localhost:9200"] }
stdout { codec => rubydebug }
}
啟動。{LOGSTASH_HOME}/config-mabb/logstash.conf
在啟動後的命令列中輸入資料,就可以通過logstash傳遞到es中。
安裝kibana
下載、解壓、執行:${KIBANA_HOME}/bin/kibana
安裝成功,訪問localhost:5601。
新增index logstash-,這個操作的意思的就是:在kibana處理es裡所有的index是logstash-的資料。點選左邊Discover標籤,在右邊的介面中可以選擇剛剛建立的index,可以進行搜登等操作。
filebeats
下載,解壓。
配合logstash使用的配置檔案如下:
filebeat.yml:
filebeat.prospectors:
- type: log
enabled: true
paths:
- /Users/mabinbin/var/log/*.log
output.logstash:
hosts: ["localhost:5045"]
logstash.conf
input{
beats {
port => 5045
}
}
output{
elasticsearch{
hosts => ["localhost:9200"]
}
}
當filebeats配合logstash使用,需要手動load the index template in ElasticSearch,就是filberts直連ElasticSearch load 資料,命令如下:
./filebeat setup --template -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=["localhost:9200"]'
啟動:
./filebeat -e -c filebeat.yml