一、 ELK介紹
ElK,即ElasticSearch+Logstash+Kibana
ElasticSearch是一個基於Lucene的開源分佈式搜索服務器。它的特點有:分佈式,零配置,自動發現,索引自動分片,索引副本機制,restful風格接口,多數據源,自動搜索負載等。它提供了一個分佈式多用戶能力的全文搜索引擎,基於RESTful web接口。Elasticsearch是用Java開發的,並作爲Apache許可條款下的開放源碼發佈,是第二流行的企業搜索引擎。設計用於雲計算中,能夠達到實時搜索,穩定,可靠,快速,安裝使用方便。
Logstash是一個完全開源的工具,它可以對你的日誌進行收集、過濾、分析,支持大量的數據獲取方法,並將其存儲供以後使用(如搜索)。說到搜索,logstash帶有一個web界面,搜索和展示所有日誌。一般工作方式爲c/s架構,client端安裝在需要收集日誌的主機上,server端負責將收到的各節點日誌進行過濾、修改等操作在一併發往elasticsearch上去。
Kibana是一個基於瀏覽器頁面的Elasticsearch前端展示工具,也是一個開源和免費的工具,Kibana可以爲 Logstash 和 ElasticSearch 提供的日誌分析友好的 Web 界面,可以幫助您彙總、分析和搜索重要數據日誌。
二、 elasticsearch + kibanba安裝啓動
參考文章: https://editor.csdn.net/md/?articleId=103623034
三、 logstash 安裝
1、下載
下載鏈接:https://pan.baidu.com/s/1RTx6r5wD0jaT1VUS5MUD_Q
提取碼:oplr
2、上傳到linux ,/usr/local 目錄
3、解壓
tar -zxvf logstash-6.4.3.tar.gz
4、在config 目錄下創建文件 log.conf (可自定義目錄和文件名稱)
5、在 usr/local 目錄下創建 test.log (實際項目替換爲實際項目日誌文件地址)
6、log.conf 配置內容
input {
# 從文件讀取日誌信息 輸送到控制檯
# path 讀取的日誌位置
# type 類型,可自定義
file {
path => "/usr/local/test.log" ## 日誌文件地址(這裏我填寫的測試文件)
codec => "json" ## 以JSON格式讀取日誌
type => "elasticsearch"
start_position => "beginning"
}
}
# filter {
#
# }
output {
# 標準輸出
# stdout {}
# 輸出進行格式化,採用Ruby庫來解析日誌
stdout {
codec => rubydebug
}
elasticsearch {
hosts => ["192.168.177.128:9200"] # 輸出到es的地址
index => "es-%{+YYYY.MM.dd}" # 創建索引名爲es-日期
}
}
7、啓動 ,bin 目錄下
./logstash -f ../config/log.conf # 使用自己的配置文件啓動
啓動成功如下
8、 usr/local/ test.log 文件添加內容
控制檯監聽到修改數據
9、 kibanba 查看
kibanba需啓動狀態 , 配置成功輸入索引開頭會有提示
結果
10、Diseover 查看
添加 es*
11、 elastcisearch+logstash+kibana 後臺啓動命令記錄
elastcisearch+logstash+kibana後臺啓動命令記錄
./elasticsearch -d
nohup ./kibana &
nohup ./logstash -f ../config/log.conf &