日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

通過手動遷移shard均勻分布熱點數據的解決方案

Elasticsearch通過哈希映射將文檔均勻地路由到分片中,同時shard均勻地分散在各個數據節點中,這樣可能會出現某些節點存儲的熱點數據較多,導致這些節點的負載較高的情況。針對這種情況,可采用重啟集群或手動遷移shard的方式,重新分配shard,臨時降低高負載節點的壓力。本文介紹如何手動遷移shard。

問題場景

  • 負載高的節點中存在大量的同一屬性分片,例如僅存在主分片。
  • 業務索引在負載高的節點存儲的shard比其他節點多。

注意事項

  • 手動遷移shard,僅能臨時解決節點壓力較高的問題。如果節點短暫地脫離集群,shard重新分配,這些節點可能還會出現同樣的問題。因此建議在遷移shard前,參見集群負載不均問題的分析方法及解決方案,優化shard后再遷移。
  • 如果熱點索引分配均衡,而集群整體壓力較大,建議升配集群或擴容節點,解決資源緊張的問題。

解決方案

  1. 禁用分片分配。
    PUT /_cluster/settings
    {
      "transient" : {
         "cluster.routing.allocation.enable" : "none"
      }
    }
    重要 以上命令僅臨時禁用了分片分配,shard遷移完成后,需要重新啟用(將cluster.routing.allocation.enable設置為all)。
  2. 手動遷移shard。
    以下示例將index_parkingorder_v1索引,從192.168.130.77節點上的3號分片遷移到192.168.130.78節點上。
    POST /_cluster/reroute
    {
     "commands" : [
      {
       "move" : {
        "index" : "index_parkingorder_v1", 
        "shard" : 3,
        "from_node" : "192.168.130.77", 
        "to_node" : "192.168.130.78"
       }
      }
     ]
    }
    說明
    • 遷移shard時,請確保同一序號的shard不能遷移到同一節點。例如,A節點中已經存在某一索引的3號副本分片,那么該索引的3號主分片就不能遷移到A節點中。
    • 手動遷移shard更詳細的說明,請參見cluster-reroute
  3. 查看shard遷移狀態。
    GET _cat/shards?v
    正常情況下,返回結果如下。查看shard遷移過程
  4. shard遷移完成后,重新啟用分片分配。
    PUT /_cluster/settings
    {
     "transient" : {
      "cluster.routing.allocation.enable" : "all"
     }
    }