ElasticSearch watermark设置

PUT _cluster/settings
{
  "persistent": {
    "cluster.routing.allocation.disk.watermark.low": "90%",
    "cluster.routing.allocation.disk.watermark.low.max_headroom": "100GB",
    "cluster.routing.allocation.disk.watermark.high": "95%",
    "cluster.routing.allocation.disk.watermark.high.max_headroom": "20GB",
    "cluster.routing.allocation.disk.watermark.flood_stage": "97%",
    "cluster.routing.allocation.disk.watermark.flood_stage.max_headroom": "5GB",
    "cluster.routing.allocation.disk.watermark.flood_stage.frozen": "97%",
    "cluster.routing.allocation.disk.watermark.flood_stage.frozen.max_headroom": "5GB"
  }
}

假设你有一个 10TB 的 Elasticsearch data 节点:

当磁盘使用 < 90%,正常分配 shard,写入数据。
当磁盘使用 > 90% 或剩余空间 < 100GB,尽量不再分配新的 shard,但仍可写入数据。
当磁盘使用 > 95% 或剩余空间 < 20GB,不会再分配新的 shard,但仍可写入数据。
当磁盘使用 > 97% 或剩余空间 < 5GB,Elasticsearch 会将索引 设为只读,防止磁盘写满。

配置项							作用
low								超过这个值 尽量不分配 shard,但可继续写入
low.max_headroom				磁盘 剩余空间低于该值 也算 low
high							超过这个值 不再分配 shard,但可继续写入
high.max_headroom				磁盘 剩余空间低于该值 也算 high
flood_stage						超过这个值 索引变只读,防止磁盘写满
flood_stage.max_headroom		磁盘 剩余空间低于该值 也算 flood_stage
flood_stage.frozen				适用于 frozen 索引的 flood_stage
flood_stage.frozen.max_headroom	适用于 frozen 索引的 max_headroom
### 解决Elasticsearch节点磁盘使用量超过洪水阶段水位线的方法 当 Elasticsearch 节点的磁盘使用率超过了设定的洪水阶段水位线时,集群会自动阻止写入操作以保护数据安全。为了处理这种情况,可以采取多种措施来缓解磁盘压力并恢复正常运行。 #### 修改水位线设置 默认情况下,Elasticsearch 设置了三个不同的磁盘阈值:低水位线 (low watermark),高水位线 (high watermark) 和洪水阶段水位线 (flood stage watermark)[^1]。可以通过调整这些参数来适应特定环境的需求: ```json PUT _cluster/settings { "persistent": { "cluster.routing.allocation.disk.watermark.low": "85%", "cluster.routing.allocation.disk.watermark.high": "90%", "cluster.routing.allocation.disk.watermark.flood_stage": "97%" } } ``` 此命令将永久更改集群级别的磁盘水印配置。 #### 手动释放空间 如果当前磁盘占用过高,则需要考虑清理不必要的索引或日志文件,从而腾出更多可用存储空间。这可能涉及到删除旧的数据、优化现有索引结构或是迁移部分工作负载到其他节点上。 对于长期解决方案而言,建议定期审查和管理索引生命周期策略(ILM),确保及时归档或移除过期数据。 #### 增加存储容量 另一种方法就是直接增加物理硬件资源——即扩展服务器上的硬盘驱动器数量或者升级更大容量的SSD设备。此外还可以通过添加新的节点至集群内分担读写请求的压力,进而间接降低单个节点所承受的空间负担。 最后值得注意的是,在执行上述任何一项操作之前都应该先暂停所有可能导致进一步增长的操作,并密切监控受影响节点的状态变化直至问题得到彻底解决为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值