使用 Elasticsearch 遇到的一些问题
黄色分片问题
集群变为黄色,显示 “无法获取内存中分片锁” 错误消息。
原文:https://aws.amazon.com/cn/premiumsupport/knowledge-center/es-in-memory-shard-lock/
要解决错误消息,请尝试以下方法:
- 排查您的黄色群集状态。
- 增加最大重试设置。
- 更新副本数量(负载高时,不建议使用)。
操作:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| GET /_cat/indices?v&health=yellow
GET /_cluster/allocation/explain
PUT /info/_settings { "index.allocation.max_retries" : 10 }
PUT /info/_settings { "index" : { "number_of_replicas" : 0 } }
PUT /info/_settings { "index" : { "number_of_replicas" : 1 } }
|
进行上述操作后,问题并没有得到解决。后来系统占用小了(主要是内存降下来),就没有发现没有黄色分片了。
磁盘使用率过高,无法创建副本
我 es 集群中有一台电脑磁盘占用90%(3T),该节点上的所有分片都变成了灰色,使用以下方案解决了该问题。
临时修改
1 2 3 4 5 6 7 8
| PUT _cluster/settings { "transient": { "cluster.routing.allocation.disk.watermark.low": "150gb", "cluster.routing.allocation.disk.watermark.high": "100gb", "cluster.info.update.interval": "1m" } }
|
永久有效
修改 es 配置文件 elasticsearch.yml
1 2 3
| cluster.routing.allocation.disk.threshold_enabled: true cluster.routing.allocation.disk.watermark.low: 150gb cluster.routing.allocation.disk.watermark.high: 100gb
|