Elasticsearch集群未分配的shard

2021-06-28 19:16:49 字數 656 閱讀 4714

elasticsearch的主master節點管理shard在資料節點間的分配,如果有足夠多的資料節點,它自動分配shard(primary和replica)到相應的資料節點上。但某些特殊的情況下,也會有未分配shard。如果未分配的是 replica shard,則整個集群處於yellow狀態。在你有足夠的replica shard備份的情況下, yellow並不影響集群的整體可用性(但搜尋效能可能會有下降),而且很多時候可以自動恢復,不需要任何人工干預,比如:某個資料節點的系統在打補丁或者系統維護時會被自動重新啟動。

但如果shard長時間處於未分配狀態,則需要特別注意了,往往需要人工干預。例如:節點上索引檔案損壞。通過get /_cat/shards api 檢視哪個節點存在未分配的shard,在節點日誌檔案中會發現如下的內容。造成這種情況的原因可能有多種,直接刪除損壞的檔案既可以解決問題。

在生產環境使用elasticsearch集群,一般都會有相應監測機制自動監視集群的狀態,如:呼叫 get /_cluster/health api 。如果返回的狀態是red,則需要馬上有人響應;如果是yellow並長時間處於該狀態,也需要有人及時檢視。elasticsearch的日誌檔案是分析和查詢elasticsearch集群問題的首選,對於稍複雜的問題你需要檢視master節點、client節點以及資料節點上的日誌檔案。



構建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 ...