ELK技術棧實踐(一)
通常,日誌被分散的儲存不同的裝置上。如果你管理數十上百臺伺服器,你還在使用依次登入每臺機器的傳統方法查閱日誌。這樣是不是感覺很繁瑣和效率低下。當務之急我們使用集中化的日誌管理,例如:開源的syslog,將所有伺服器上的日誌收集彙總。
集中化管理日誌後,日誌的統計和檢索又成為一件比較麻煩的事情,一般我們使用grep、awk和wc等Linux命令能實現檢索和統計,但是對於要求更高的查詢、排序和統計等要求和龐大的機器數量依然使用這樣的方法難免有點力不從心。
源實時日誌分析ELK平臺能夠完美的解決我們上述的問題,ELK由ElasticSearch、Logstash和Kiabana三個開源工具組成。實踐的目的是瞭解ELK技術棧的部署和應用。
Elasticsearch是個開源分散式搜尋引擎,它的特點有:分散式,零配置,自動發現,索引自動分片,索引副本機制,restful風格介面,多資料來源,自動搜尋負載等。
Logstash是一個完全開源的工具,他可以對你的日誌進行收集、過濾,並將其儲存供以後使用(如,搜尋)。
Kibana 也是一個開源和免費的工具,它Kibana可以為 Logstash 和 ElasticSearch 提供的日誌分析友好的 Web 介面,可以幫助您彙總、分析和搜尋重要資料日誌。
1、目標
安裝部署ELK,使之正常工作。叢集工作留待以後再實踐。
2、部署的機器
伺服器1: 192.168.136.144 部署 ELK 三個程式
伺服器2: 192.168.136.138 部署logstash agent
以上機器都為 centos 65 虛擬機器
安裝的ELK版本為:
elasticsearch-2.4.1.tar.gz
kibana-4.5.1-linux-x64.tar.gz
logstash-2.3.2.tar.gz
說明: 本來用ELK 5.0.0版本,但是碰到一個 logstash與ES 連線的問題(和鑑權相關)目前找不到處理辦法,所以採用舊的版本來進行實踐。用最新版有風險,入門需謹慎!
3、安裝過程
3.1 安裝前準備
1)下載上面三個軟體並上傳到144主機
2) 準備java 1.8 (只要jdk 1.8 就可以)
<span style="font-family:Microsoft YaHei;font-size:14px;">[root@cwqsolo elk2.3]# java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
[root@cwqsolo elk2.3]# </span>
3.2 安裝步驟
ELK技術棧的部署將會按下面幾個步驟進行
首先安裝ES(Elasticsearch)和ES的外掛, 然後安裝kibana,最後安裝 logstash。 在下篇,還繼續進行logstash的agent的安裝。
1、安裝 ES(Elasticsearch)和ES的外掛
首先解壓elasticsearch-2.4.1.tar.gz ,然後進入目錄
然後,我們要修改 config 目錄下的配置檔案elasticsearch.yml
要修改的內容為
<span style="font-family:Microsoft YaHei;font-size:14px;">cluster.name: solo
node.name: node1
path.data: ./data
path.logs: ./logs
network.host: cwqsolo
http.port: 9200</span>
將上面的內容,修改正確,並且確保前面的#去掉,使得該專案生效。
由於ES不支援在root 下執行, 所以需要對目錄進行授權。 使用root使用者登入,並且執行如下命令
chown +R nmc:nmc /home/nmc/dev/elk/elk2.3/elasticsearch-2.4.1/
說明:上面命令是將這個目錄以及這個目錄下的子目錄都授權給nmc使用者,隸屬於nmc使用者組。
然後,我們切換到nmc使用者,使用nmc使用者來啟動ES。 進入 /home/nmc/dev/elk/elk2.3/elasticsearch-2.4.1/
在命令列,執行: ./bin/elasticsearch
啟動後,沒有報錯就表示成功了,我們可以通過瀏覽器執行 http://192.168.136.144:9200/ 來檢視,出現下面介面就表示成功
下面我們可以進行 es 外掛 head的安裝。 head 之前的安裝比較簡單,在es沒有啟動的時候,執行 ./bin/plugin install mobz/elasticsearch-head
在我的環境下,執行已經無法下來這個包了。(估計5.0出來後,這個包已經整合了) 從網上下載了head 包,解壓有,上傳到 /home/nmc/dev/elk/elk2.3/elasticsearch-2.4.1/plugins
重啟啟動es,我們可以通過url http://192.168.136.144:9200/_plugin/head/來檢視外掛
好了 ES部分的安裝就到這裡。下面我們來安裝 kibana
2、 安裝kibana
用root 使用者,解壓縮 kibana,然後進入到這個目錄。修改 config 目錄下的kibana.yml
<span style="font-family:Microsoft YaHei;font-size:14px;">server.port: 5601
server.host: "192.168.136.144"
elasticsearch.url: "http://192.168.136.144:9200"
kibana.index: ".kibana"</span>
確保上面的配置生效。
然後,我們啟動kibana。執行 ./bin/kibana啟動後,我們通過url http://192.168.136.144:5601/來進入 kibana 介面。
可以按預設的直接建立。然後點選最上方的discover 來觀察
3、 下面我們安裝logstash。 同樣解壓後進入該目錄,
原來沒config目錄,我自己建立了一個,並且在config目錄,建立一個配置檔案。
通過配置檔案中 output 將 logstash 與 ES 連線起來。
下面我們啟動logstash,啟動後,我們從logstash 視窗輸入任何的內容,都能通過ES 反饋到 kibana介面上。
logstash我們輸入了一個日誌內容,kibana上同樣可以看到
安裝過程大致就是如此,後續我們再聊一些細節。
相關文章
- 《Learning ELK Stack》1 ELK技術棧介紹
- ELK技術棧ElasticSearch,Logstash,KibanaElasticsearch
- 微店的Flutter混合棧管理技術實踐Flutter
- 平安人壽基於 Apache Doris 統一 OLAP 技術棧實踐Apache
- 招商信諾人壽基於 Apache Doris 統一 OLAP 技術棧實踐Apache
- Android技術棧(四)Android Jetpack MVVM 完全實踐AndroidJetpackMVVM
- react技術棧實踐(從前到後擼一個電影蒐集應用)React
- 灰度釋出的一種技術實踐
- 騰訊 iOA 技術實踐
- SVG Sprite 技術實踐SVG
- 一次全棧實踐心得全棧
- React最佳實踐嘗試(一)技術選型React
- 技術實踐的主流方向
- 剖析公司技術棧
- 從容器化到資源池化,數棧雲原生技術實踐探索之路
- 最佳實踐|Apache Pulsar 在拉卡拉的技術實踐Apache
- webpack工程化整合React技術棧(一)WebReact
- 快速創業之全棧技術棧創業全棧
- ?♀️點亮你的Vue技術棧,萬字Nuxt.js實踐筆記來了~VueUXJS筆記
- Node 框架接入 ELK 實踐總結框架
- 騰訊資料治理技術實踐
- 個人技術棧總結
- React專案技術棧React
- 前端融合方向技術棧前端
- 全棧技術導圖全棧
- React 技術棧系列教程React
- 如何使用Microsoft技術棧ROS
- Android技術棧(三)依賴注入技術的探討與實現Android依賴注入
- 前端技術演進(七):前端跨棧技術前端
- 資料採集與融合技術實踐作業一
- Android技術棧(一)從Activity遷移到FragmentAndroidFragment
- 數棧技術大牛分享:雲原生大資料系統架構的實踐和思考大資料架構
- 前端技術演進(六):前端專案與技術實踐前端
- Istio技術與實踐04:最佳實踐之教你寫一個完整的Mixer AdapterAPT
- 美團智慧客服核心技術與實踐
- 騰訊 iOA 零信任安全技術實踐
- Redis叢集技術及Codis實踐Redis
- 聊聊真實的 Android TV 開發技術棧Android