本地搭建ELK系統
ELK系統主要由三部分組成,各自是elasticsearch、logstash、kibana。
ELK系統收到推送過來的日誌後。首先由logstash解析日誌中的字段,分解成一個一個的關鍵字。
elasticsearch將關鍵字與日誌信息關聯起來,以一種特定的格式化方式存儲數據到硬盤。kibana提供與用戶的交互界面,依據用戶需求,從elasticsearch中讀取信息並在網頁上顯示。
本文以Redhat為例搭建一套很easy的ELK系統步:
logstash從本地日誌文件讀取信息
elasticsearch存儲信息
在中通過kibana顯示完整信息
全部工作都在本地完畢,即全部server和client地址都是127.0.0.1
一、安裝工具
1.安裝elasticsearch
wget https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.1.tar.gz
tar -xvzf elasticsearch-1.7.1.tar.gz
cp -a elasticsearch-1.7.1 /usr/local
cd /usr/local
ln –s elasticsearch-1.7.1 elasticsearch
2.安裝logstash
wget https://download.elastic.co/logstash/logstash/logstash-1.5 .4.tar.gz
tar –xvzf logstash-1.5.4.tar.gz
cp –a logstash-1.5.4 /usr/local
cd /usr/local
ln –s logstash-1.5.4 logstash
3.安裝kibana
wget https://download.elastic.co/kibana/kibana/kibana-4.1.2-linux-x64.tar.gz
tar –xvzf kibana-4.1.2-linux-x64.tar.gz
cp –a kibana-4.1.2-linux-x64 /usr/local
cd /usr/local
ln –s kibana- 4.1.2-linux-x64 kibana
二、配置logstash
cd /usr/local/logstash
mkdir etc
touch central.conf
central.conf是logstash的配置文件,文件名稱任意配置件,文件內容例如以下:
input{
file {
path => "/tmp/*.log"
start_position => beginning
}
}
output {
stdout {}
elasticsearch {
cluster => "elasticsearch"
codec => "json"
protocol => "http"
}
}
啟動logstash程序:
/usr/local/logstash/bin/logstash agent --verbose --config /usr/local/logstash/etc/central.conf
配置文件將從/tmp/*.log中讀到的日誌,同一時候傳給elasticsearch和標準輸出。我如今如今還沒有配置elasticsearch。能夠從標準輸出窗體中觀察。
假設有將日誌內容輸出,可知logstash搭建成功察。
三、配置elasticsearch
因為elasticsearch和logstash是安裝在一臺機器上,elasticsearch默認配置就可以。
/usr/local/elasticsearch/bin/elasticsearch -d #以deamon方式啟動elasticsearch
打開127.0.01:9200看到這種內容可知elasticsearch搭建成功
{
"status" : 200,
"name" : "Blaquesmith",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "1.7.1",
"build_hash" : "b88f43fc40b0bcd7f173a1f9ee2e97816de80b19",
"build_timestamp" : "2015-07-29T09:54:16Z",
"build_snapshot" : false,
"lucene_version" : "4.10.4"
},
"tagline" : "You Know, for Search"
}
四、配置kibana
kibana也不須要配置,直接啟動
/usr/local/kibana/bin/kibana
打開127.0.01:5601就可以看到Kibana的頁面。選擇默認配置。進入。/tmp/*.log中的信息在kibana中顯示,可知kibana搭建成功。
五、遇到的問題
1.打開127.0.0.1:9200或127.0.0.1:5601時,提示網頁無法打開。但kibana與elasticsearchserver確實已經啟動。
解決方法:代理關掉
2./tmp/*.log是存在的,可是kibana上提示沒有數據,logstash的stdout也看不到數據
解決方法:logstash僅僅讀取近期一段時間的日誌,把日誌文件時間更新一下就能夠解決
六、參考文章
fromerr=a2z8OWmY">http://my.oschina.net/lenglingx/blog/504883?fromerr=a2z8OWmY
本地搭建ELK系統