ELK官網 https://www.elastic.co ELK由Elasticsearch、Logstash和Kibana三部分組件組成; Elasticsearch是個開源分佈式搜索引擎,它的特色有:分佈式,零配置,自動發現,索引自動分片,索引副本機制,restful風格接口,多數據源,自動搜索負載等。 Logstash是一個徹底開源的工具,它能夠對你的日誌進行收集、分析,並將其存儲供之後使用 kibana 是一個開源和免費的工具,它能夠爲 Logstash 和 ElasticSearch 提供的日誌分析友好的 Web 界面,能夠幫助您彙總、分析和搜索重要數據日誌。
常見平臺架構node
ELK = Elasticsearch + Logstash + Kibana EFK = Elasticsearch + Flume + Kibana 簡單架構: ELK+Redis 或 (Logstash/Flume)->(Kafka/Redis)->ES->Web 可更簡單些: Client(Filebeat) --> LogServer(Logstash-->Elasticsearch-->Kibana ) (能夠不用Logstash,Filebeat直接輸出到ES) 複雜架構: 數據採集層[離線/實時數據,MySQL/ES/Logstash/Flume] ->數據傳輸層[Kafka/Redis] ->數據緩存層[Storm->Kafka] ->計算存儲層[離線計算(Kylin/Spark SQL/Impala/MR)、實時計算(Storm/Spark Streaming/Flink/Druid)、存儲(ES/MySQL/Hbase/HDFS/Kudu)] ->應用層[Web/REST API]
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.4.3.tar.gz --no-check-certificate wget https://artifacts.elastic.co/downloads/logstash/logstash-5.4.3.tar.gz --no-check-certificate wget https://artifacts.elastic.co/downloads/kibana/kibana-5.4.3-windows-x86.zip --no-check-certificate 注意須要jdk8環境
下載地址 https://www.elastic.co/downloads nginx
在界面中下載 elasticsearch Logstash Kibanagit
訪問 http://localhost:9200 github
啓動成功 npm
在當前版本中,因爲使用的是6.4.0進行環境搭建,須要使用node 等工具進行安裝插件 json
步驟一。 安裝node 在此再也不贅述 windows
步驟二。安裝 npm install -g grunt-cli 安裝 grunt 緩存
使用 grunt –version 查看安裝 grunt的版本信息restful
3.修改elasticsearch/conf 文件夾 修改 elasticsearch.xml 文件 ,架構
進入安裝目錄下的config目錄,修改elasticsearch.yml文件.在文件的末尾加入以
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
其餘操做
而後去掉network.host: 192.168.0.1的註釋並改成network.host: 0.0.0.0,去掉cluster.name;node.name;http.port的註釋(也就是去掉#)
雙擊elasticsearch.bat重啓es
下載地址 https://github.com/mobz/elasticsearch-head 中下載head插件,選擇下載zip
訪問界面
以上爲elasticsearch 安裝和查看教程
測試elasticsearch-head
1.使用cmd請求
curl -XGET http://127.0.0.1:9200/_cluster/health?pretty
請求結果
2.使用elasticsearch-head進行請求
請求結果
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
input {
file {
type => "nginx_access"
path => "D:\nginx\logs\access.log"
}
}
output {
elasticsearch {
hosts => ["192.168.10.105:9200"]
index => "access-%{+YYYY.MM.dd}"
}
stdout {
codec => json_lines
}
}
進入到bin文件夾中 執行
命令1 logstash.bat agent –f ../config/logstash.conf
啓動 logstash 若是報錯 將 logstash.bat 中的 "%CLASSPATH%" 使用 」」 引號引發來,在執行便可
啓動報錯,不能當成持續服務
是文件格式問題。
進入到 kibana-6.4.0-windows-x86_64/bin 文件夾 雙擊 Kibana.bat
剛啓動時 ,須要等大概一分鐘 ,cmd命令 窗口沒有反應
使用安裝命令 elasticsearch-plugin.bat install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.0/elasticsearch-analysis-ik-6.4.0.zip
使用windows 安裝會報錯,不如直接下載 而後將文件 信息解壓到 elasticsearch/plugs/ik文件夾下
驗證 在kibana中能夠進行 請求,也可在 elasticsearsh中進行請求
GET _search { "query": { "match": { "message": "中華" } } }
在bin中執行 elasticsearch-service.bat install
使用nssm進行安裝
nssm下載地址 (官網地址) https://nssm.cc/ci/nssm-2.24-101-g897c7ad.zip
使用
進入到 ELK_WORK\nssm-2.24-101-g897c7ad\win64>nssm install logstash/Kibana
回車後會彈出執行框
NSSM 用法 ( Linux service 使用同樣)
show service installation GUI:
nssm install [<servicename>]
To install a service without confirmation:
nssm install <servicename> <app> [<args> ...]
To show service editing GUI:
nssm edit <servicename>
To retrieve or edit service parameters directly:
nssm dump <servicename>
nssm get <servicename> <parameter> [<subparameter>]
nssm set <servicename> <parameter> [<subparameter>] <value>
nssm reset <servicename> <parameter> [<subparameter>]
To show service removal GUI:
nssm remove [<servicename>]
To remove a service without confirmation:
nssm remove <servicename> confirm
To manage a service:
nssm start <servicename>
nssm stop <servicename>
nssm restart <servicename>
nssm status <servicename>
nssm statuscode <servicename>
nssm rotate <servicename>
nssm processes <servicename>
總結,
在windows中啓動 ELK 日誌收集分析查詢 功能 ,
將會在服務中安裝三個服務
Elasticsearch 服務 訪問地址 192.168.10.105:9200
服務名 Elasticsearch 6.4.0 (elasticsearch-service-x64)
logstash 服務 訪問地址 192.168.10.105:9600
Kibana 服務 訪問地址:http://localhost:5601