注: 部分概念介绍来源于网络
一、elasticsearch 节点重启问题
ElasticSearch集群的高可用和自平衡方案会在节点挂掉(重启)后自动在别的结点上复制该结点的分片,这将导致了大量的IO和网络开销。
如果离开的节点重新加入集群,elasticsearch为了对数据分片(shard)进行再平衡,会为重新加入的节点再次分配数据分片(Shard), 当一台es因为压力过大而挂掉以后,其他的es服务会备份本应那台es保存的数据,造成更大压力,于是整个集群会发生雪崩。
生产环境下建议关闭自动平衡。
1、数据分片与自平衡
(1)关闭自动分片,即使新建index也无法分配数据分片
PUT /_cluster/settings {
"transient" : {
"cluster.routing.allocation.enable" : "none"
}
}
(2)关闭自动平衡,只在增减ES节点时不自动平衡数据分片
PUT /_cluster/settings?pretty {
"transient" : {
"cluster.routing.rebalance.enable" : "none"
}
}
(3)禁止集群写入,启动时候,禁写
PUT /_cluster/settings
{
"persistent": {
"cluster.blocks.read_only": true
},
"transient": {
"cluster.blocks.read_only": true
}
(4)设置完以后查看设置是否添加成功:
GET /_cluster/settin

本文介绍了Elasticsearch集群管理的最佳实践,包括如何避免重启时的数据雪崩、解决脑裂问题等,提供了详细的步骤和配置参数。
最低0.47元/天 解锁文章
694

被折叠的 条评论
为什么被折叠?



