ELK 日誌分析體系

2022-05-10 01:42:12 字數 3259 閱讀 2093

elk   日誌分析體系

elk 是指 elasticsearch、logstash、kibana三個開源軟體的組合。

logstash                       負責日誌的收集,處理和儲存

elasticsearch                  負責日誌檢索和分析

kibana                         負責日誌的視覺化

一、環境

1. centos linux release 7.2.1511 (core)

server - 172.16.1.100

elasticsearch-2.3.3

logstash-2.3.2-1

kibana-4.5.1

openjdk version "1.8.0_77"

redis-3.2.0

yum localinstall elasticsearch-2.3.3.rpm

2、修改配置

cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml-bak

echo "cluster.name: logssearch" >> /etc/elasticsearch/elasticsearch.yml     #必須修改名字,否則會自動查詢同網段其他相同名字的ela

echo "network.bind_host: 172.16.1.100" >> /etc/elasticsearch/elasticsearch.yml

vi /etc/elasticsearch/elasticsearch.yml

最後面增加如下配置:

3、建立目錄以及授權

mkdir -p /opt/local/elasticsearch/

chown -r elasticsearch:elasticsearch /opt/local/elasticsearch

4、啟動elasticsearch服務

service elasticsearch start

5、新增到開機啟動

chkconfig elasticsearch on

6、安裝 head 外掛程式

執行如下命令:

/usr/share/elasticsearch/bin/plugin -install mobz/elasticsearch-head

7、訪問        檢視是否成功

建立elasticsearch索引

點選索引,進行建立

索引名稱: cluster

分片數:5

副本數:1

yum localinstall logstash-2.3.2-1.noarch.rpm

3、配置logstash_indexer  (預設沒有這個配置檔案)

服務端增加此配置檔案:

vi /etc/logstash/conf.d/logstash_indexer.conf

input }

output

stdout

logstash使用input和output定義收集日誌時的輸入和輸出的相關配置

這裡input定義了乙個叫"stdin"的input,

這裡output定義乙個叫"stdout"的output。無論我們輸入什麼字元,logstash都會按照某種格式來返回我們輸入的字元,

其中output被定義為"stdout"並使用了codec引數來指定logstash輸出格式。

logstash 測試

/opt/logstash/bin/logstash  -f /etc/logstash/conf.d/logstash_indexer.conf

客戶端增加此配置檔案

input {

file {                

type => "nginx_access"

path => ["/usr/share/nginx/logs/test.access.log"]

output {

redis {

host => "172.16.1.100"

data_type => "list"

key => "logstash:redis"

5、啟動 logstash 服務

service logstash start

chkconfig logstash on

五、安裝kibana(前端web)

wget

tar zxvf kibana-4.5.1-linux-x64.tar.gz 

mv kibana-4.5.1-linux-x64 /opt/local/kibana

mkdir /opt/local/kibana/logs

cd /opt/local/kibana

2. 修改配置

cp /opt/local/kibana/config/kibana.yml /opt/local/kibana/config/kibana.yml.bak

修改 elasticsearch_url: 為 elasticsearch_url: ""

修改  server.host:   為   server.host: "172.16.1.100"

修改  kibana.index: 為   kibana.index: ".kibana"

3. 啟動 kibana 服務

cd /opt/local/kibana/logs && nohup /opt/local/kibana/bin/kibana &

kibana  index patterns  必須要有資料才能建立索引。

fqa:

kibana 出現如下錯誤:

courier fetch error: unhandled courier request error: authorization exception

這個錯誤是因為 elasticsearch  配置檔案 elasticsearch.yml 裡面使用了 http.cors.enabled

kibana 4 的版本中,這個選項已經廢棄了,請刪除掉這個選項。

ELK日誌分析方案

針對公司專案微服務化,隨著專案及伺服器的不斷增多,決定採用elk elasticsearch logstash kibana 日誌分析平台進行微服務日誌分析。1.在微服務伺服器上部署logstash,作為shipper的角色,對微服務日誌檔案資料進行資料採集,將採集到的資料輸出到redis訊息佇列。...

ELK日誌分析方案

針對公司專案微服務化,隨著專案及伺服器的不斷增多,決定採用elk elasticsearch logstash kibana 日誌分析平台進行微服務日誌分析。1.在微服務伺服器上部署logstash,作為shipper的角色,對微服務日誌檔案資料進行資料採集,將採集到的資料輸出到redis訊息佇列。...

ELK 日誌分析系統

elk就是一套完整的日誌分析系統 elk logstash elasticsearch kibana 統一官網 elk模組說明 logstash 作用 用於處理傳入的日誌,負責收集 過濾和寫出日誌 logstash分為三個元件input,filter,output 輸入input 常用file,re...