This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.12.5.3. 已达到 Elasticsearch 节点磁盘低水位线
Elasticsearch 不将分片分配给达到低水位线的节点。
故障排除
识别要在其上部署 Elasticsearch 的节点。
oc -n openshift-logging get po -o wide
oc -n openshift-logging get po -o wide
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查是否有
未分配的分片
。oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cluster/health?pretty | grep unassigned_shards
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=_cluster/health?pretty | grep unassigned_shards
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果存在未分配的分片,请检查每个节点上的磁盘空间。
for pod in `oc -n openshift-logging get po -l component=elasticsearch -o jsonpath='{.items[*].metadata.name}'`; do echo $pod; oc -n openshift-logging exec -c elasticsearch $pod -- df -h /elasticsearch/persistent; done
for pod in `oc -n openshift-logging get po -l component=elasticsearch -o jsonpath='{.items[*].metadata.name}'`; do echo $pod; oc -n openshift-logging exec -c elasticsearch $pod -- df -h /elasticsearch/persistent; done
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查
nodes.node_name.fs
字段,以确定该节点上的可用磁盘空间。如果使用的磁盘百分比超过 85%,则节点已超过低水位线,并且分片无法再分配给此节点。
- 尝试增加所有节点上的磁盘空间。
- 如果无法增加磁盘空间,请尝试向集群添加新数据节点。
如果添加新数据节点有问题,请减少集群冗余策略总数。
检查当前的
redundancyPolicy
。oc -n openshift-logging get es elasticsearch -o jsonpath='{.spec.redundancyPolicy}'
oc -n openshift-logging get es elasticsearch -o jsonpath='{.spec.redundancyPolicy}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意如果使用
ClusterLogging
CR,请输入:oc -n openshift-logging get cl -o jsonpath='{.items[*].spec.logStore.elasticsearch.redundancyPolicy}'
oc -n openshift-logging get cl -o jsonpath='{.items[*].spec.logStore.elasticsearch.redundancyPolicy}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
如果集群
redundancyPolicy
大于SingleRedundancy
,将其设置为SingleRedundancy
并保存这个更改。
如果前面的步骤没有解决这个问题,请删除旧的索引。
检查 Elasticsearch 上所有索引的状态。
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- indices
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- indices
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 确定可以删除的旧索引。
删除索引。
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name> -X DELETE
oc exec -n openshift-logging -c elasticsearch <elasticsearch_pod_name> -- es_util --query=<elasticsearch_index_name> -X DELETE
Copy to Clipboard Copied! Toggle word wrap Toggle overflow