ES7 设置磁盘使用率水位线 allocation.disk.watermark

ES7 根据磁盘使用率来决定是否分配分片

本文原文链接:https://blog.csdn.net/xzk9381/article/details/113252344

公司 ES 集群的 Data 节点突然告警磁盘空间不足,清理了部分索引后发现该磁盘的利用率明显高于 ES 集群中其他节点的平均值,也就是说 ES 集群分片分配不均衡。除了让集群自动优化均衡以外,还可以设置一下磁盘空间水位线,这样 ES 就可以根据磁盘使用情况来决定是否继续分配 shard。

使用如下命令可以设置水位线:

PUT _cluster/settings
{
    
    
   "transient":{
    
    
      "cluster.routing.allocation.disk.watermark.high":"75%",
      "cluster.routing.allocation.disk.watermark.low":"70%"
    }
}
  • cluster.routing.allocation.disk.watermark.low:在磁盘使用率达到指定值的时候将会停止分配新的 shard。也可以设置一个数值,比如 600M
  • cluster.routing.allocation.disk.watermark.high:在磁盘使用率达到指定值的时候 es 将会r elocate shard 去其他的节点。也可以设置数值

使用 GET _cluster/settings 命令可以查看到当前的设置:

{
    
    
  "persistent" : {
    
    
    "indices" : {
    
    
      "lifecycle" : {
    
    
        "poll_interval" : "600s"
      }
    },
    "search" : {
    
    
      "max_buckets" : "100000"
    }
  },
  "transient" : {
    
    
    "cluster" : {
    
    
      "routing" : {
    
    
        "allocation" : {
    
    
          "disk" : {
    
    
            "watermark" : {
    
    
              "low" : "70%",
              "high" : "75%"
            }
          }
        }
      }
    }
  }
}

本文原文链接:https://blog.csdn.net/xzk9381/article/details/113252344

猜你喜欢

转载自blog.csdn.net/xzk9381/article/details/113252344
ES7