深入解读 Elasticsearch 磁盘水位设置
warning:
这篇文章距离上次修改已过205天,其中的内容可能已经有所变动。
在Elasticsearch中,磁盘水位线(Disk watermark)是一个控制Elasticsearch索引磁盘使用情况的参数,它决定了一个节点在其磁盘空间不足时会采取的措施。
Elasticsearch的磁盘水位线参数包括:
cluster.routing.allocation.disk.watermark.low
: 控制磁盘低水位线。一旦节点的磁盘使用量达到这个值,Elasticsearch会尝试分配更少的分片到该节点。默认值是85%。cluster.routing.allocation.disk.watermark.high
: 控制磁盘高水位线。一旦节点的磁盘使用量达到这个值,Elasticsearch不会分配任何新的分片到该节点。默认值是90%。cluster.routing.allocation.disk.watermark.flood_stage
: 控制磁盘洪水水位线。一旦节点的磁盘使用量达到这个值,Elasticsearch会阻止所有的分片分配到该节点,包括已经存在的分片。这是一种极端措施。默认值是95%。
要设置磁盘水位线,可以在Elasticsearch的配置文件elasticsearch.yml
中设置上述参数,或者在集群运行时使用API动态设置。
例如,使用API动态设置磁盘水位线:
PUT /_cluster/settings
{
"transient": {
"cluster.routing.allocation.disk.watermark.low": "90%",
"cluster.routing.allocation.disk.watermark.high": "95%",
"cluster.routing.allocation.disk.watermark.flood_stage": "99%"
}
}
这个API命令会将磁盘水位线设置为90%,95%,和99%,分别对应低水位线,高水位线,和洪水水位线。这些设置会立即生效,并影响集群的分片分配行为。
评论已关闭