Elasticsearch、Logstash和Kibana Windows環境搭建(一)

1、概述
ELK官網 https://www.elastic.co
ELK由Elasticsearch、Logstash和Kibana三部分組件組成;

Elasticsearch是個開源分佈式搜索引擎,它的特色有:分佈式,零配置,自動發現,索引自動分片,索引副本機制,restful風格接口,多數據源,自動搜索負載等。
Logstash是一個徹底開源的工具,它能夠對你的日誌進行收集、分析,並將其存儲供之後使用
kibana 是一個開源和免費的工具,它能夠爲 Logstash 和 ElasticSearch 提供的日誌分析友好的 Web 界面,能夠幫助您彙總、分析和搜索重要數據日誌。

db_vs_es

常見平臺架構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]

2、下載安裝ELK
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環境


在windows 上運行 elasticsearch 分佈式日誌分析,檢索

下載地址 https://www.elastic.co/downloads   nginx

在界面中下載  elasticsearch   Logstash  Kibanagit

1 .  elasticsearch   下載 ,zip 解壓縮,進入bin 運行文件elasticsearch.bat  

訪問 http://localhost:9200  github

image

啓動成功    npm


2 .因爲elasticsearch 只是字符串 等文件信息 ,須要安裝  elasticsearch-head 插件

            在當前版本中,因爲使用的是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


4.下載elasticsearch-head包


下載地址 https://github.com/mobz/elasticsearch-head  中下載head插件,選擇下載zip

5.解壓到指定文件夾下,G:\elasticsearch-6.6.2\elasticsearch-head-master  進入該文件夾,修改G:\elasticsearch-6.6.2\elasticsearch-head-master\Gruntfile.js 在對應的位置加上hostname:'*'

image

6. 修改完成後,使用cmd命令進入 elasticsearch-head-master 文件夾中  ,

     執行命令 npm install   而後在執行 npm run start   運行 head

運行成功 成功界面image


訪問界面

image

以上爲elasticsearch 安裝和查看教程

測試elasticsearch-head 

  1.使用cmd請求 

curl -XGET http://127.0.0.1:9200/_cluster/health?pretty
請求結果 
image
 2.使用elasticsearch-head進行請求
 請求結果
image

啓動  logstash 服務

須要修改 conf中添加 logstash.conf   在新建的文件中粘貼

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

    命令2   logstash.bat -f  ../config/logstash.conf

啓動 logstash  若是報錯  將  logstash.bat  中的  "%CLASSPATH%"  使用  」」 引號引發來,在執行便可

image

啓動報錯,不能當成持續服務

     reason=>"Expected one of #, input, filter, output at line 1, column             1       (byte1)after "}

是文件格式問題。

Windows文件默認是utf8 。將文件格式改成:ansi格式就能夠了。程序能夠正常運行

bin\logstash -f ./config/test.conf


啓動Kibana 服務

進入到   kibana-6.4.0-windows-x86_64/bin 文件夾  雙擊 Kibana.bat

剛啓動時 ,須要等大概一分鐘  ,cmd命令 窗口沒有反應




Elasticsearsh 設置中文分詞器

使用安裝命令  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": "中華" } } }




將elasticsearsh 設置爲windows 系統服務

     在bin中執行   elasticsearch-service.bat install

將logstash   Kibana 設置爲windows 服務

使用nssm進行安裝

   nssm下載地址    (官網地址)   https://nssm.cc/ci/nssm-2.24-101-g897c7ad.zip

使用

進入到 ELK_WORK\nssm-2.24-101-g897c7ad\win64>nssm install logstash/Kibana

回車後會彈出執行框

image

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

相關文章
相關標籤/搜索