3.4. 查看 Elasticsearch 日志存储的状态
您可以查看 OpenShift Elasticsearch Operator 的状态以及多个 Elasticsearch 组件的状态。
3.4.1. 查看 Elasticsearch 日志存储的状态 复制链接链接已复制到粘贴板!
您可以查看 Elasticsearch 日志存储的状态。
先决条件
- 安装了 Red Hat OpenShift Logging Operator 和 OpenShift Elasticsearch Operator。
流程
运行以下命令,切换到
openshift-logging
项目:oc project openshift-logging
$ oc project openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 查看状态:
运行以下命令,获取 Elasticsearch 日志存储实例的名称:
oc get Elasticsearch
$ oc get Elasticsearch
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME AGE elasticsearch 5h9m
NAME AGE elasticsearch 5h9m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来获取 Elasticsearch 日志存储状态:
oc get Elasticsearch <Elasticsearch-instance> -o yaml
$ oc get Elasticsearch <Elasticsearch-instance> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如:
oc get Elasticsearch elasticsearch -n openshift-logging -o yaml
$ oc get Elasticsearch elasticsearch -n openshift-logging -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出中包含类似于如下的信息:
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 在输出中,集群状态字段显示在
status
小节中。 - 2
- Elasticsearch 日志存储的状态:
- 活跃的主分片的数量。
- 活跃分片的数量。
- 正在初始化的分片的数量。
- Elasticsearch 日志存储数据节点的数量。
- Elasticsearch 日志存储节点的总数。
- 待处理的任务数量。
-
Elasticsearch 日志存储状态:
绿色
、红色
、黄色
。 - 未分配分片的数量。
- 3
- 任何状态条件(若存在)。Elasticsearch 日志存储状态指示在无法放置 pod 时来自于调度程序的原因。显示与以下情况有关的所有事件:
- 容器正在等待 Elasticsearch 日志存储和代理容器。
- Elasticsearch 日志存储和代理容器的容器终止。
- Pod 不可调度。此外还显示适用于多个问题的情况,具体请参阅情况消息示例。
- 4
- 集群中的 Elasticsearch 日志存储节点,带有
upgradeStatus
。 - 5
- Elasticsearch 日志存储在集群中的客户端、数据和 master pod,列在
failed
、notReady
或ready
状态下。
3.4.1.1. 情况消息示例 复制链接链接已复制到粘贴板!
以下是来自 Elasticsearch 实例的 Status
部分的一些情况消息的示例。
以下状态消息表示节点已超过配置的低水位线,并且没有分片将分配给此节点。
以下状态消息表示节点已超过配置的高水位线,并且分片将重新定位到其他节点。
以下状态消息表示自定义资源(CR)中的 Elasticsearch 日志存储节点选择器与集群中的任何节点都不匹配:
以下状态消息表示 Elasticsearch 日志存储 CR 使用不存在的持久性卷声明(PVC)。
以下状态消息表示 Elasticsearch 日志存储集群没有足够的节点来支持冗余策略。
此状态消息表示集群有太多 control plane 节点:
以下状态消息表示 Elasticsearch 存储不支持您尝试进行的更改。
例如:
reason
和 type
类型字段指定不受支持的更改类型:
StorageClassNameChangeIgnored
- 不支持更改存储类名称。
StorageSizeChangeIgnored
- 不支持更改存储大小。
StorageStructureChangeIgnored
不支持在临时存储结构和持久性存储结构间更改。
重要如果您尝试将
ClusterLogging
CR 配置为从临时切换到持久性存储,OpenShift Elasticsearch Operator 会创建一个持久性卷声明(PVC),但不创建持久性卷(PV)。要清除StorageStructureChangeIgnored
状态,您必须恢复对ClusterLogging
CR 的更改并删除 PVC。
3.4.2. 查看日志存储组件的状态 复制链接链接已复制到粘贴板!
您可以查看多个日志存储组件的状态。
- Elasticsearch 索引
您可以查看 Elasticsearch 索引的状态。
获取 Elasticsearch Pod 的名称:
oc get pods --selector component=elasticsearch -o name
$ oc get pods --selector component=elasticsearch -o name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
pod/elasticsearch-cdm-1godmszn-1-6f8495-vp4lw pod/elasticsearch-cdm-1godmszn-2-5769cf-9ms2n pod/elasticsearch-cdm-1godmszn-3-f66f7d-zqkz7
pod/elasticsearch-cdm-1godmszn-1-6f8495-vp4lw pod/elasticsearch-cdm-1godmszn-2-5769cf-9ms2n pod/elasticsearch-cdm-1godmszn-3-f66f7d-zqkz7
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 获取索引的状态:
oc exec elasticsearch-cdm-4vjor49p-2-6d4d7db474-q2w7z -- indices
$ oc exec elasticsearch-cdm-4vjor49p-2-6d4d7db474-q2w7z -- indices
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 日志存储 pod
您可以查看托管日志存储的 pod 的状态。
获取 Pod 的名称:
oc get pods --selector component=elasticsearch -o name
$ oc get pods --selector component=elasticsearch -o name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
pod/elasticsearch-cdm-1godmszn-1-6f8495-vp4lw pod/elasticsearch-cdm-1godmszn-2-5769cf-9ms2n pod/elasticsearch-cdm-1godmszn-3-f66f7d-zqkz7
pod/elasticsearch-cdm-1godmszn-1-6f8495-vp4lw pod/elasticsearch-cdm-1godmszn-2-5769cf-9ms2n pod/elasticsearch-cdm-1godmszn-3-f66f7d-zqkz7
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 获取 Pod 的状态:
oc describe pod elasticsearch-cdm-1godmszn-1-6f8495-vp4lw
$ oc describe pod elasticsearch-cdm-1godmszn-1-6f8495-vp4lw
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出中包括以下状态信息:
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 日志存储 pod 部署配置
您可以查看日志存储部署配置的状态。
获取部署配置的名称:
oc get deployment --selector component=elasticsearch -o name
$ oc get deployment --selector component=elasticsearch -o name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
deployment.extensions/elasticsearch-cdm-1gon-1 deployment.extensions/elasticsearch-cdm-1gon-2 deployment.extensions/elasticsearch-cdm-1gon-3
deployment.extensions/elasticsearch-cdm-1gon-1 deployment.extensions/elasticsearch-cdm-1gon-2 deployment.extensions/elasticsearch-cdm-1gon-3
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 获取部署配置状态:
oc describe deployment elasticsearch-cdm-1gon-1
$ oc describe deployment elasticsearch-cdm-1gon-1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出中包括以下状态信息:
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 日志存储副本集
您可以查看日志存储副本集的状态。
获取副本集的名称:
oc get replicaSet --selector component=elasticsearch -o name
$ oc get replicaSet --selector component=elasticsearch -o name replicaset.extensions/elasticsearch-cdm-1gon-1-6f8495 replicaset.extensions/elasticsearch-cdm-1gon-2-5769cf replicaset.extensions/elasticsearch-cdm-1gon-3-f66f7d
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 获取副本集的状态:
oc describe replicaSet elasticsearch-cdm-1gon-1-6f8495
$ oc describe replicaSet elasticsearch-cdm-1gon-1-6f8495
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出中包括以下状态信息:
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.4.3. Elasticsearch 集群状态 复制链接链接已复制到粘贴板!
OpenShift Container Platform Web 控制台的 Observe 部分中的仪表板显示 Elasticsearch 集群的状态。
要获取 OpenShift Elasticsearch 集群的状态,请访问位于 <cluster_url>/monitoring/dashboards/grafana-dashboard-cluster-logging
的 OpenShift Container Platform Web 控制台的 Observe 部分中的 Grafana 仪表板。
Elasticsearch 状态字段
eo_elasticsearch_cr_cluster_management_state
显示 Elasticsearch 集群是否处于受管状态或非受管状态。例如:
eo_elasticsearch_cr_cluster_management_state{state="managed"} 1 eo_elasticsearch_cr_cluster_management_state{state="unmanaged"} 0
eo_elasticsearch_cr_cluster_management_state{state="managed"} 1 eo_elasticsearch_cr_cluster_management_state{state="unmanaged"} 0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow eo_elasticsearch_cr_restart_total
显示 Elasticsearch 节点重启证书、滚动重启或调度重启的次数。例如:
eo_elasticsearch_cr_restart_total{reason="cert_restart"} 1 eo_elasticsearch_cr_restart_total{reason="rolling_restart"} 1 eo_elasticsearch_cr_restart_total{reason="scheduled_restart"} 3
eo_elasticsearch_cr_restart_total{reason="cert_restart"} 1 eo_elasticsearch_cr_restart_total{reason="rolling_restart"} 1 eo_elasticsearch_cr_restart_total{reason="scheduled_restart"} 3
Copy to Clipboard Copied! Toggle word wrap Toggle overflow es_index_namespaces_total
显示 Elasticsearch 索引命名空间的总数。例如:
Total number of Namespaces. es_index_namespaces_total 5
Total number of Namespaces. es_index_namespaces_total 5
Copy to Clipboard Copied! Toggle word wrap Toggle overflow es_index_document_count
显示每个命名空间的记录数。例如:
es_index_document_count{namespace="namespace_1"} 25 es_index_document_count{namespace="namespace_2"} 10 es_index_document_count{namespace="namespace_3"} 5
es_index_document_count{namespace="namespace_1"} 25 es_index_document_count{namespace="namespace_2"} 10 es_index_document_count{namespace="namespace_3"} 5
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
"Secret Elasticsearch fields are either missing or empty" 信息
如果 Elasticsearch 缺少 admin-cert
、admin-key
、logging-es.crt
或 logging-es.key
文件,仪表板会显示类似以下示例的状态消息:
message": "Secret \"elasticsearch\" fields are either missing or empty: [admin-cert, admin-key, logging-es.crt, logging-es.key]", "reason": "Missing Required Secrets",
message": "Secret \"elasticsearch\" fields are either missing or empty: [admin-cert, admin-key, logging-es.crt, logging-es.key]",
"reason": "Missing Required Secrets",