在生产环境中,单台服务器部署存在2个及以上节点,因机械硬盘性能问题,导致在高并发时出现查询或搜索结果超时,以及磁盘I/O100%的问题。

解决办法

可以选择修改配置文件或者提交接口。

允许根据主机名和主机地址执行检查以防止在单个主机上分配同一分片的多个实例。 默认为 false,表示默认不执行检查。 此设置仅适用于在同一台计算机上启动多个节点的情况。
修改配置文件

编辑ES配置文件添加cluster.routing.allocation.same_shard.host=true参数,并重启服务生效。

提交接口

提交接口免重启,但不会对已有的分片进行重新移动。

PUT /_cluster/settings
{
    "transient":
    {
        "cluster.routing.allocation.same_shard.host": true
    }
}

修改完成配置文件后,可以选择重启ES,或者手动迁移分片到其他ES节点中。

参考文档:https://www.elastic.co/guide/en/elasticsearch/reference/7.17/modules-cluster.html#cluster-shard-allocation-settings

END

本文标题:Elasticsearch6.4解决单台服务器多个节点存储相同分片问题

本文作者:宇宙最帅的男人

本文链接:https://lolicp.com/elasticsearch/202304580.html

版权声明:转载或者引用本文内容请注明来源及原作者,本文著作权归作者 (宇宙最帅的男人) 所有。

除非另有说明,本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

最后修改:2023 年 06 月 04 日
如果觉得我的文章对你有用,请随意赞赏