一、ELK是什么?
ELK是由Elasticsearch、Logstash、Kibana這3個軟件的首字母縮寫。
Elasticsearch是一個分布式搜索分析引擎,穩定、可水平擴展、易於管理是它的主要設計初衷,需要依賴java運行環境,所以要確保你本地已經安裝了jdk。
ealsticsearch只是后端提供各種api,那么怎么直觀的使用它呢?elasticsearch-head將是一款專門針對於elasticsearch的客戶端工具,要使用elasticsearch-head需確保安裝了node.js.
Logstash是一個靈活的數據收集、加工和傳輸的管道軟件。
Kibana是一個數據可視化平台,可以通過將數據轉化為酷炫而強大的圖像而實現與數據的交互將三者的收集加工,存儲分析和可視轉化整合在一起就形成了 ELK 。
ELK的大致工作順序:應用程序產生log日志》Logstash收集日志》Logstash整理輸出到Elasticsearch》通過Kibana展示。
各個安裝包地址:
jdk:https://www.oracle.com/java/technologies/javase-jdk16-downloads.html
node.js:https://nodejs.org/en/
Elasticsearch:https://www.elastic.co/cn/downloads/elasticsearch
elasticsearch-head:https://pan.baidu.com/s/1uUaZ4-jONtwuAMTVydOk7w 提取碼:kqt6 git下載:https://github.com/mobz/elasticsearch-head
Logstash:https://artifacts.elastic.co/downloads/logstash/logstash-7.12.0-windows-x86_64.zip
Kibana:https://artifacts.elastic.co/downloads/kibana/kibana-7.10.2-windows-x86_64.zip
下面我們安裝順序就安裝Elasticsearch、Logstash、Kibana的順序。
二、安裝JDK,並驗證(如果之前安裝了JDK直接跳過)
雙擊JDK安裝包安裝,並設置了環境變量,如下圖:
JAVA_HOME 和 PATH添加:";%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;"
驗證:cmd模式輸入“Java --version”,如下:
三、安裝node.js
雙擊安裝包直接安裝,安裝完成后驗證,cmd下輸入 node -v。
四、安裝Elasticsearch
解壓zip壓縮文件,在D盤跟目錄創建一個新的文件夾,命名“ELK”,把解壓后的“elasticsearch-7.12.0-windows-x86_64”文件夾拷貝到下面。
打開“D:\elk\elasticsearch-7.12.0-windows-x86_64\config”下面的“elasticsearch.yml”文件,在最下面添加以下代碼並保存。
http.cors.enabled: true http.cors.allow-origin: "*"
cmd模式進入“D:\elk\elasticsearch-7.12.0-windows-x86_64\bin”目錄,執行“elasticsearch.bat”。
執行成功后在瀏覽器輸入“http://127.0.0.1:9200/”,出現以下界面說明elasticsearch啟動成功
五、安裝elasticsearch-head
我下載的是網盤壓縮文件,先解壓,把解壓后的“elasticsearch-head-master”文件夾拷貝到“D:\elk”下面一份。
cmd模式下進入“D:\elk\elasticsearch-head-master”目錄,執行以下命令:
npm install -g grunt-cli
npm install
配置文件是:elasticsearch-head/Gruntfile.js,里面可以修改服務器監聽地址和端口信息。
安裝完成后執行“npm run start”啟動,瀏覽器打開“http://127.0.0.1:9100/”,出現以下界面說明啟動成功。
六、安裝Logstash
將加壓后的“logstash-7.12.0”文件夾拷貝到“D:\elk”下面一份。
cmd進入“D:\elk\logstash-7.12.0\bin”目錄下,創建一個“logstash.conf”文件,並寫入以下配置。
input { file { type => "nginx_access" path => "D:/WWW/log/crm6/*.log" start_position => "beginning" } } output { elasticsearch { hosts => ["127.0.0.1:9200"] index => "access-%{+YYYY.MM.dd}" } stdout { codec => json_lines } }
保存后在cmd下執行“logstash.bat -f ../config/logstash.conf”命令。
啟動完成后,瀏覽器打開“http://127.0.0.1:9600/”,出現以下界面成功
七、安裝kibana
將加壓后的“kibana-7.10.2-windows-x86_64”文件夾拷貝到“D:\elk”下面一份。
cmd進入“D:\elk\kibana-7.10.2-windows-x86_64\bin”目錄,執行“kibana.bat”
執行成功后,瀏覽器打開“http://127.0.0.1:5601”,出現kibana圖形界面。依次點擊下面三個按鈕,導入上面logstash配置文件里設置的日志信息。
點擊 “Index Patterns”后進入下面界面,然后點擊右上的“Create index pattern”按鈕。
創建成功后點擊discover,頁面展現獲取的數據。
如果沒有數據,根據上面“logstash”配置文件,找到抓取日志的目錄,在里面創建一個log日志文件,隨便出入幾行內容,logstash窗口會實時抓取你輸入的內容,並輸出到elasticsearch。
輸入“lisi”測試,出現以下結果。ELK環境框架搭架完成。