和elasticsearch
裡其他 api 一樣,cluster-health
會返回乙個json
響應。這對自動化和告警系統來說,非常便於解析。響應中包含了和你集群有關的一些關鍵資訊:
{
"cluster_name": "es_cluster",
"status": "red",
"timed_out": false,
"number_of_nodes": 1,
"number_of_data_nodes": 1,
"active_primary_shards": 2076,
"active_shards": 2076,
"relocating_shards": 0,
"initializing_shards": 0,
"unassigned_shards": 2096,
"delayed_unassigned_shards": 0,
"number_of_pending_tasks": 0,
"number_of_in_flight_fetch": 0,
"task_max_waiting_in_queue_millis": 0,
"active_shards_percent_as_number": 49.760306807286675
number_of_nodes
和number_of_data_nodes
這個命名完全是自描述的。
active_primary_shards
指出集群中的主分片數量。這是涵蓋了所有索引的彙總值。
active_shards
是涵蓋了所有索引的所有分片的彙總值,即包括副本分片。
relocating_shards
顯示當前正在從乙個節點遷往其他節點的分片的數量。通常來說應該是 0,不過在elasticsearch
發現集群不太均衡時,該值會**。比如說:新增了乙個新節點,或者下線了乙個節點。
initializing_shards
是剛剛建立的分片的個數。
unassigned_shards
是已經在集群狀態中存在的分片,但是實際在集群裡又找不著
cluster_name
集群名字
status
集群狀態(綠,黃,紅)
我們只關注返回結果的cluster_name
,status
,active_shards
,unassigned_shards
,來顯示集群的健康情況。
head外掛程式會以不同的顏色顯示。
1. 綠色——最健康的狀態,代表所有的主分片和副本分片都可用;
2. 黃色——所有的主分片可用,但是部分副本分片不可用;
3. 紅色——部分主分片不可用。(此時執行查詢部分資料仍然可以查到,遇到這種情況,還是趕快解決比較好。)
如果集群狀態為紅色,head外掛程式顯示:集群健康值red。則說明:至少乙個主分片分配失敗。這將導致一些資料以及索引的某些部分不再可用。
儘管如此, elasticsearch還是允許我們執行查詢,至於是通知使用者查詢結果可能不完整還是掛起查詢,則由應用構建者來決定。
集群健康
構建elasticsearch集群
初始化系統環境 在 etc security limits.conf 增加如下兩行 elasticsearch soft nofile 4096 elasticsearch hard nofile 65536 curl o elasticsearch 解壓軟體包 tar xvf elasticsea...
Elasticsearch集群搭建
1 主節點 儲存資料資訊 meta data 元資料 描述資料的資料,客戶端通過主節點獲取真正的資料位置,到資料節點datanode獲取資料分片 2 資料節點 只負責資料的讀和寫 3 負載均衡節點 當主節點連線的客戶端過多,可以引入負載均衡節點 分擔併發,既不是主節點,也不是資料節點 搭建另外兩台e...
Elasticsearch集群搭建
1 分發 scp 2.修改每一台機器的配置檔案 a 集群的名字 cluster.name my es b 節點名字 node.name node 1 c es儲存資料的路徑 path.data home zpark esdata data d es生成log資訊的路徑 path.logs home ...