Elk的安裝流程
ELK是指Elasticsearch + Logstash + Kibaba三個元件的組合。本文講解一個基於日誌檔案的ELK平臺的搭建過程,有關ELK的原理以及更多其他資訊,會在接下來的文章中繼續研究。
在這個系統中,Elasticsearch主要充當一個全文檢索和分析引擎,Logstash是一款分散式日誌收集系統,Kibana可以為這個平臺提供視覺化的Web介面。
1、 建立elk使用者
必須建立elk使用者,如果不建立專用使用者,用root使用者的話後面步驟在開啟elk元件時會報錯!
2、 切換elk使用者,在home下面的elk資料夾中下載elk元件
2.1、下載elasticsearch
[[email protected] elk]# su elk
[[email protected] ~]$ pwd
/home/elk
[[email protected] ~]$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.4.3.tar.gz
解壓tar包
[[email protected] ~]$ tar -xvf elasticsearch-5.4.3.tar.gz
進入elasticsearch-5.4.3
[[email protected] ~]$ cd elasticsearch-5.4.3
修改 config中的elasticsearch.yml檔案
修改: cluster.name: 和node.name:(也可以使用預設)
修改:network.host: 為0.0.0.0
修改:http.port: 為 9200
儲存退出。
啟動elasticsearch:
以elk使用者,在elasticsearch目錄啟動:
[[email protected] elasticsearch-5.4.3]$ bin/elasticsearch #前臺執行
#或者
[ [email protected] elasticsearch-5.4.3]$ bin/elasticsearch -d #後臺執行
[[email protected] ~]$ curl http://localhost:9200
###返回以下內容則成功:###
Enter host password for user 'elastic':
{
"name" : "elk-1",
"cluster_name" : "elastic-cluster",
"cluster_uuid" : "Mfp7_AAuQyiy190WWBk53g",
"version" : {
"number" : "5.4.3",
"build_hash" : "eed30a8",
"build_date" : "2017-06-22T00:34:03.743Z",
"build_snapshot" : false,
"lucene_version" : "6.5.1"
},
"tagline" : "You Know, for Search"
}
啟動elascricsearch遇到的錯誤
遇到這兩個錯誤
1、ERROR: bootstrap checks failed
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]2、ERROR: bootstrap checks failed
system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
我就不寫了,附加個連結:點選這裡,錯誤解決地址
安裝x-pack:
[[email protected] elasticsearch-5.4.3]$ ./bin/elasticsearch-plugin install x-pack
(時間較長)
也可以去官網下載x-pack,然後上傳到伺服器中再進行安裝
重啟elasticsearch x-pack生效
重新curl http://localhost:9200 -u elastic
密碼:changeme
2.2、安裝logstash
下載logstash
[[email protected] ~]$ wget https://artifacts.elastic.co/downloads/logstash/logstash-5.4.3.tar.gz
###解壓
[[email protected] ~]$ tar -xvf logstash-5.4.3.tar.gz
進入logstash-5.4.3
[[email protected] logstash-5.4.3]$ vim config/logstash.conf
##內容:
input {
file {
type => "typename" #type標題,用於區別(不能用大寫)
path => "/程式日誌路徑/*.log" #日誌路徑(可以指定檔案)
codec => multiline {
pattern => "%{TIMESTAMP_ISO8601:date}" #匹配 以時間開頭的日誌行 如果以[]開頭的則可以用 “^\[” 正則匹配
negate => true
what => "previous"
}
start_position => "beginning"
}
}
output {
elasticsearch {
action => "index"
hosts => "127.0.0.1:9200" #elasticsearch地址和埠
index => "logstash-%{type}-%{+YYYY.MM.dd}" # 輸出到ela的檔名稱
document_type => "%{type}"
user => "elastic" #ela的使用者名稱
password => "changeme" #ela密碼 (如果安裝好後,則在kibana修改過密碼,這裡也得修改)
}
stdout {
codec => rubydebug
}
}
測試logstash
[[email protected] logstash-5.4.3]$ bin/logstash -e 'input { stdin { } } output { stdout {codec=>rubydebug} }'
###然後你會發現終端在等待你的輸入。沒問題,敲入 Hello World,回車,然後看看會返回什麼結果!
###出現如下結果
2017-02-23T08:34:25.661Z c-101 Hello World
啟動logstash
[[email protected] logstash-5.4.3]$ nohup ./bin/logstash -f config/logstash.conf &
2.3、安裝kibana
下載kibana
[[email protected] ~]$ wget https://artifacts.elastic.co/downloads/kibana/kibana-5.4.3-linux-x86_64.tar.gz
[[email protected] ~]$ tar -zxvf kibana-5.4.3-linux-x86_64.tar.gz
進入kibana-5.4.3-linux-x86_64
編輯config/kibana.yml
[[email protected] ~]$ cd kibana-5.4.3-linux-x86_64/
[[email protected] kibana-5.4.3-linux-x86_64]$ vim config/kibana.yml
###內容修改
去掉: server.port 前 #
修改:server.host: 為 0.0.0.0
修改:elasticsearch.url: http://127.0.0.1:9200 (elasticsearch地址)
修改:
elasticsearch.username: " user"
elasticsearch.password: " pass"
elasticsearch 的使用者名稱和密碼。
###啟動
[[email protected] kibana-5.4.3-linux-x86_64]$ nohup ./bin/kibana &
kibana安裝x-pack
[[email protected] kibana-5.4.3-linux-x86_64]$ ./bin/kibana-plugin install x-pack
###下載很慢~ 還可能斷掉,所以就用wget直接下載。
[[email protected] kibana-5.4.3-linux-x86_64]$ wget https://artifacts.elastic.co/downloads/kibana-plugins/x-pack/x-pack-5.4.3.zip
###安裝檔案命令
[[email protected] kibana-5.4.3-linux-x86_64]$ ./bin/kibana-plugin install file:///home/elk/kibana-5.4.3-linux-x86_64/x-pack-5.4.3.zip
### 重啟kibana,也可以在啟動之前安裝x-pack
瀏覽器器訪問 http://IP:5601
Kibana 頁面修改登入密碼
修改登入密碼後接的修改相應的elasticsearch,logstash,kibana的檔案。
並重啟e、l、k
3、 注意事項:
開放防火牆埠。
如果讀取別的組的的日誌log、則把elk使用者加入到該組中
如:usermod -a -G 組名 使用者名稱