6.6. 更新 OpenShift Elasticsearch Operator
要将 OpenShift Elasticsearch Operator 更新至当前版本,您必须修改订阅。
Logging 5.9 发行版本不包含 OpenShift Elasticsearch Operator 的更新版本。如果您目前使用随 Logging 5.8 发布的 OpenShift Elasticsearch Operator,它将继续使用 Logging,直到 Logging 5.8 的 EOL 为止。您可以使用 Loki Operator 作为 OpenShift Elasticsearch Operator 的替代方案来管理默认日志存储。如需有关日志记录生命周期日期的更多信息,请参阅平台 Agnostic Operator。
先决条件
如果您使用 Elasticsearch 作为默认日志存储,且 Kibana 作为 UI,请在更新 Red Hat OpenShift Logging Operator 前更新 OpenShift Elasticsearch Operator。
重要如果您以错误的顺序更新 Operator,则 Kibana 不会更新,并且不会创建 Kibana 自定义资源 (CR)。要解决这个问题,删除 Red Hat OpenShift Logging Operator pod。当 Red Hat OpenShift Logging Operator pod 重新部署时,它会创建 Kibana CR 和 Kibana 再次可用。
Logging 处于健康状态:
-
所有 pod 都处于
ready
状态。 - Elasticsearch 集群处于健康状态。
-
所有 pod 都处于
- 您的 Elasticsearch 和 Kibana 数据已被备份。
- 有管理员权限。
-
您已安装了 OpenShift CLI (
oc
) 进行验证步骤。
步骤
-
在 OpenShift Container Platform web 控制台中,点击 Operators
Installed Operators。 - 选择 openshift-operators-redhat 项目。
- 点 OpenShift Elasticsearch Operator。
-
点 Subscription
Channel。 -
在 Change Subscription Update Channel 窗口中,选择 stable-5.y 并点 Save。注意
elasticsearch-operator.v5.y.z
版本。 -
等待几秒钟,然后点 Operators
Installed Operators。验证 OpenShift Elasticsearch Operator 版本是否与最新的 elasticsearch-operator.v5.y.z
版本匹配。 -
在 Operators
Installed Operators 页面中,等待 Status 字段报告 Succeeded。
验证
输入以下命令并查看输出,验证所有 Elasticsearch pod 的状态是否为 Ready :
oc get pod -n openshift-logging --selector component=elasticsearch
$ oc get pod -n openshift-logging --selector component=elasticsearch
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME READY STATUS RESTARTS AGE elasticsearch-cdm-1pbrl44l-1-55b7546f4c-mshhk 2/2 Running 0 31m elasticsearch-cdm-1pbrl44l-2-5c6d87589f-gx5hk 2/2 Running 0 30m elasticsearch-cdm-1pbrl44l-3-88df5d47-m45jc 2/2 Running 0 29m
NAME READY STATUS RESTARTS AGE elasticsearch-cdm-1pbrl44l-1-55b7546f4c-mshhk 2/2 Running 0 31m elasticsearch-cdm-1pbrl44l-2-5c6d87589f-gx5hk 2/2 Running 0 30m elasticsearch-cdm-1pbrl44l-3-88df5d47-m45jc 2/2 Running 0 29m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令并查看输出来验证 Elasticsearch 集群状态是否为
绿色
:oc exec -n openshift-logging -c elasticsearch elasticsearch-cdm-1pbrl44l-1-55b7546f4c-mshhk -- health
$ oc exec -n openshift-logging -c elasticsearch elasticsearch-cdm-1pbrl44l-1-55b7546f4c-mshhk -- health
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
{ "cluster_name" : "elasticsearch", "status" : "green", }
{ "cluster_name" : "elasticsearch", "status" : "green", }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令并查看输出来验证 Elasticsearch cron 作业是否已创建:
oc project openshift-logging
$ oc project openshift-logging
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get cronjob
$ oc get cronjob
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME SCHEDULE SUSPEND ACTIVE LAST SCHEDULE AGE elasticsearch-im-app */15 * * * * False 0 <none> 56s elasticsearch-im-audit */15 * * * * False 0 <none> 56s elasticsearch-im-infra */15 * * * * False 0 <none> 56s
NAME SCHEDULE SUSPEND ACTIVE LAST SCHEDULE AGE elasticsearch-im-app */15 * * * * False 0 <none> 56s elasticsearch-im-audit */15 * * * * False 0 <none> 56s elasticsearch-im-infra */15 * * * * False 0 <none> 56s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令并验证日志存储是否已更新至正确的版本,并且索引是
绿色的
:oc exec -c elasticsearch <any_es_pod_in_the_cluster> -- indices
$ oc exec -c elasticsearch <any_es_pod_in_the_cluster> -- indices
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证输出是否包含
app-00000x
、infra-00000x
、audit-00000x
、.security
索引;例 6.1. 带有绿色状态索引的输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令并查看输出,验证日志可视化工具是否已更新至正确的版本:
oc get kibana kibana -o json
$ oc get kibana kibana -o json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证输出是否包含具有
ready
状态的 Kibana Pod:例 6.2. 带有就绪 Kibana pod 的输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow