Elasticsearch是個開源分佈式搜索引擎,它的特色有:分佈式,零配置,自動發現,索引自動分片,索引副本機制,restful風格接口,多數據源,自動搜索負載等。html
Logstash是一個徹底開源的工具,他能夠對你的日誌進行收集、過濾,並將其存儲供之後使用(如,搜索)。linux
Kibana 也是一個開源和免費的工具,它Kibana能夠爲 Logstash 和 ElasticSearch 提供的日誌分析友好的 Web 界面,能夠幫助您彙總、分析和搜索重要數據日誌。vim
elk下載地址:www.elastic.co/downloads/windows
建議在 linux上運行,elk在windows上支持得很差,另外須要jdk1.8 的支持,須要提早安裝好jdk.restful
下載完以後: 安裝,以logstash爲栗子:架構
1
2
3
4
5
6
7
|
cd /usr/local/
mkdir logstash
tar -zxvf logstash-
5.3
.
2
.tar.gz
mv logstash-
5.3
.
2
/usr/local/logstash
|
打開Elasticsearch的配置文件:app
1
|
vim config/elasticsearch.yml
|
修改配置:elasticsearch
1
2
|
network.host=localhost
network.port=
9200
|
它默認就是這個配置,沒有特殊要求,在本地不須要修改。分佈式
啓動Elasticsearch微服務
1
|
./bin/elasticsearch
|
啓動成功,訪問localhost:9200,網頁顯示:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
{
"name"
:
"56IrTCM"
,
"cluster_name"
:
"elasticsearch"
,
"cluster_uuid"
:
"e4ja7vS2TIKI1BsggEAa6Q"
,
"version"
: {
"number"
:
"5.2.2"
,
"build_hash"
:
"f9d9b74"
,
"build_date"
:
"2017-02-24T17:26:45.835Z"
,
"build_snapshot"
:
false
,
"lucene_version"
:
"6.4.1"
},
"tagline"
:
"You Know, for Search"
}
|
在 logstash的主目錄下:
1
|
vim config/log4j_to_es.conf
|
修改 log4j_to_es.conf 以下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
input {
log4j {
mode =>
"server"
host =>
"localhost"
port =>
4560
}
}
filter {
#Only matched data are send to output.
}
output {
elasticsearch {
action =>
"index"
#The operation on ES
hosts =>
"localhost:9200"
#ElasticSearch host, can be array.
index =>
"applog"
#The index to write data to.
}
}
|
修改完配置後啓動:
1
|
./bin/logstash -f config/log4j_to_es.conf
|
架構代碼以下 :
Spring Cloud大型企業分佈式微服務雲架構源碼請加企鵝求求:一七九一七四三三八零