Elastic Stack-Elasticsearch使用介紹(六)
一、前言
很久沒有更新部落格,實在對不住大家。從10月份假期以後我就開始優化程式,來應對雙11,這段時間確實很忙,不好意思。好在優化效果還不錯,我負責的模組在雙11期間沒有任何大問題,整體效果還是比較好的,直到本週才正真的做到解放。扯淡過後,這裡我還是開始我們監控篇,監控有些資料還是要藉助於Kibana去觀察的,我這邊在暫時先放一下Kibana下篇咱們探討下,這裡先只用Kibana去展示下我們監控的資料。我仔細思考了一下,可能這個系列還是不能很快的結束,還有很多很多要說的我感覺,比如Beats、原始碼方面的東西、還有些實戰等等,當然這都是後話,先開始我們今天的主題,
二、Elasticsearch監控
我們先來說下官方給我們提供介面,通過Kibana看圖形化的介面也是通過這些介面實現的,所以我們先要了解這些介面,官方是通過_cat這個介面來提供對Elasticsearch監控的。這個裡面包括了我們對叢集狀況、執行緒數、索引、節點等等我們想要監控到的指標,接下來我們來看一下這些介面。
aliases
展示別名有關索引的別名的資訊,包括過濾器和路由資訊。這個地方我就不給大家展示例子了,因為這是本機環境沒有建立別名,大家自己去嘗試一下。這裡我囉嗦下別名的作用,用來無縫切換索引,為什麼要無縫切換索引,每天新增資料太多以後,為了避免資料庫和索引裡面資料不一樣所以這裡要每天重建一下索引,這裡就是通過別名的方式去實現的。
allocation
每個節點上有多少分片以及分片使用了多少磁碟空間;這個format是指定格式,我比較喜歡看見json格式,另外還能指定排序的列,下面的例子會展示;
count
查詢當前叢集和單個索引文件的個數,查詢單個索引的話在count後面加上索引的名字;
fielddata
展示每個分片上fielddata當前正在使用的堆記憶體量;
health
整個叢集的健康狀況;
indices
查詢所有索引的狀況,包括副本、文件數目、分配磁碟空間大小、健康狀況等等;支援單個或者模糊查詢多個索引的狀況,後面跟隨的s的引數就是可以根據那個列進行排序,可以支援多個列;
master
主節點情況;
nodeattrs
自定義節點的屬性,我沒有使用過;
nodes
每個節點使用的情況,包括CPU、磁碟空間、記憶體等等,可以指定想要監控的型別,如下在h後面指定想要監控的型別;
pending_tasks
等待執行任務的列表;
plugins
安裝外掛的列表;
recovery
查詢索引分片恢復的狀況,這個當節點出現故障時候才會使用;
repositories
叢集中註冊的快照的節點;
thread_pool
顯示每個節點的執行緒池統計資訊,預設情況下,返回執行緒池活躍,佇列和拒絕統計資訊。
shards
顯示每個分片詳情分佈,分片告訴包含那些索引的主和副本、文件、磁碟大小等等資訊;
segments
查詢每個索引segment的詳情,不瞭解segment的可以去看下前面的文章;
snapshots
查詢快照資訊;
templates
查詢現有版本的資訊;
三、使用X-Pack監控
這裡我們監控主要監控Elasticsearch和Logstash,具體安裝步驟就參考下 ofollow,noindex" target="_blank">官方文件 ;X-Pack提供很多工具,Monitoring就是用來監控的,這個外掛是免費的,我們安裝好以後主要來看下我們需要注意的指標,介紹下這個工具的使用,Linux下的安裝我就不給大家多說什麼,網上一大把,Windows下給大家一個連結看看,這裡強調幾點:每個節點都必須安裝x-pack;配置xpack.security.enabled : false以後可以進行免登陸,接下來我們來下看搭好以後整個Kibana介面;
整體狀況:
節點狀況:
這個頁面可以檢視每個索引的對應狀況:
這個頁面檢視節點更詳細記憶體分佈:
這個頁面檢視每個索引的一些狀況
另外還可以對Logstash監控更好的方便我們進行調優,現在還有很多基於Grafana去搞監控,做對比等等的,有機會可以搞一波,其實我也想在公司推廣一下,辦法很多,隨意大家玩;
四、結束
接下來會介紹下Kibana和Beats相關方面的東西,更新的頻率也會多一些,又要到年底可以回顧下該年的收穫,歡迎大家加群438836709,歡迎大家關注我公眾號!