$ oc -n openshift-logging delete subscription <subscription>
日志记录更新分为两种类型:次要版本更新 (5.y.z) 和主要版本更新 (5.y)。
如果您使用**自动**更新批准选项安装了日志记录 Operators,则您的 Operators 会自动接收次要版本更新。您无需执行任何手动更新步骤。
如果您使用**手动**更新批准选项安装了日志记录 Operators,则必须手动批准次要版本更新。有关更多信息,请参阅手动批准挂起的 Operator 更新。
对于主要版本更新,您必须完成一些手动步骤。
有关主要版本兼容性和支持信息,请参阅OpenShift Operator 生命周期。
在 5.7 及更早版本的日志记录中,Red Hat OpenShift Logging Operator 只监视openshift-logging
命名空间。如果您希望 Red Hat OpenShift Logging Operator 监视集群中的所有命名空间,则必须重新部署 Operator。您可以完成以下步骤来重新部署 Operator,而无需删除日志记录组件。
您已安装 OpenShift CLI (oc
)。
您具有管理员权限。
运行以下命令删除订阅
$ oc -n openshift-logging delete subscription <subscription>
运行以下命令删除 Operator 组
$ oc -n openshift-logging delete operatorgroup <operator_group_name>
运行以下命令删除集群服务版本 (CSV)
$ oc delete clusterserviceversion cluster-logging.<version>
按照“安装日志记录”文档重新部署 Red Hat OpenShift Logging Operator。
检查OperatorGroup
资源中的targetNamespaces
字段是否不存在或设置为空字符串。
为此,请运行以下命令并检查输出
$ oc get operatorgroup <operator_group_name> -o yaml
apiVersion: operators.coreos.com/v1
kind: OperatorGroup
metadata:
name: openshift-logging-f52cn
namespace: openshift-logging
spec:
upgradeStrategy: Default
status:
namespaces:
- ""
# ...
要将 Red Hat OpenShift Logging Operator 更新到新的主要版本,必须修改 Operator 订阅的更新通道。
您已安装 Red Hat OpenShift Logging Operator。
您具有管理员权限。
您可以访问 AWS 上的 Red Hat OpenShift 服务 Web 控制台,并且正在查看**管理员**视角。
导航到**Operators** → **已安装的 Operators**。
选择**openshift-logging**项目。
单击**Red Hat OpenShift Logging** Operator。
单击**订阅**。在**订阅详细信息**部分,单击**更新通道**链接。此链接文本可能是**stable**或**stable-5.9**,具体取决于您当前的更新通道。
在**更改订阅更新通道**窗口中,选择最新的主要版本更新通道**stable-5.9**,然后单击**保存**。请注意cluster-logging.v5.9.<z>
版本。
等待几秒钟,然后转到**Operators** → **已安装的 Operators**以验证 Red Hat OpenShift Logging Operator 版本是否与最新的cluster-logging.v5.9.<z>
版本匹配。
在**Operators** → **已安装的 Operators**页面上,等待**状态**字段报告**成功**。
检查LokiStack
自定义资源是否包含v13
模式版本,如果缺少则添加它。有关正确添加v13
模式版本的信息,请参阅“升级 LokiStack 存储模式”。
要将 Loki Operator 更新到新的主要版本,必须修改 Operator 订阅的更新通道。
您已安装 Loki Operator。
您具有管理员权限。
您可以访问 AWS 上的 Red Hat OpenShift 服务 Web 控制台,并且正在查看**管理员**视角。
导航到**Operators** → **已安装的 Operators**。
选择**openshift-operators-redhat**项目。
单击**Loki Operator**。
单击**订阅**。在**订阅详细信息**部分,单击**更新通道**链接。此链接文本可能是**stable**或**stable-5.y**,具体取决于您当前的更新通道。
在**更改订阅更新通道**窗口中,选择最新的主要版本更新通道**stable-5.y**,然后单击**保存**。请注意loki-operator.v5.y.z
版本。
等待几秒钟,然后单击**Operators** → **已安装的 Operators**。验证 Loki Operator 版本是否与最新的loki-operator.v5.y.z
版本匹配。
在**Operators** → **已安装的 Operators**页面上,等待**状态**字段报告**成功**。
检查LokiStack
自定义资源是否包含v13
模式版本,如果缺少则添加它。有关正确添加v13
模式版本的信息,请参阅“升级 LokiStack 存储模式”。
如果您将 Red Hat OpenShift Logging Operator 与 Loki Operator 一起使用,则 Red Hat OpenShift Logging Operator 5.9 或更高版本支持LokiStack
自定义资源中的v13
模式版本。建议升级到v13
模式版本,因为它将是未来支持的模式版本。
按如下方式在LokiStack
自定义资源中添加v13
模式版本
apiVersion: loki.grafana.com/v1
kind: LokiStack
# ...
spec:
# ...
storage:
schemas:
# ...
version: v12 (1)
- effectiveDate: "<yyyy>-<mm>-<future_dd>" (2)
version: v13
# ...
1 | 不要删除。数据保留在其原始模式版本中。保留以前的模式版本以避免数据丢失。 |
2 | 在协调世界时 (UTC) 时区设置尚未开始的未来日期。 |
要编辑
|
在指定的effectiveDate
日期或之后,请检查在 Web 控制台的**管理员** → **观察** → **警报**中是否有**LokistackSchemaUpgradesRequired**警报。
要将 OpenShift Elasticsearch Operator 更新到最新版本,您必须修改订阅。
Logging 5.9 版本不包含 OpenShift Elasticsearch Operator 的更新版本。如果您目前使用的是 Logging 5.8 版本随附的 OpenShift Elasticsearch Operator,它将继续与 Logging 一起使用,直到 Logging 5.8 结束生命周期 (EOL)。作为使用 OpenShift Elasticsearch Operator 管理默认日志存储的替代方法,您可以使用 Loki Operator。有关 Logging 生命周期日期的更多信息,请参阅 与平台无关的 Operators。 |
如果您使用 Elasticsearch 作为默认日志存储,并使用 Kibana 作为 UI,请在更新 Red Hat OpenShift Logging Operator 之前更新 OpenShift Elasticsearch Operator。
如果您按错误的顺序更新 Operators,Kibana 将不会更新,并且不会创建 Kibana 自定义资源 (CR)。要解决此问题,请删除 Red Hat OpenShift Logging Operator pod。当 Red Hat OpenShift Logging Operator pod 重新部署时,它将创建 Kibana CR,Kibana 将再次可用。 |
Logging 状态正常
所有 pod 的状态均为 ready
。
Elasticsearch 集群状态正常。
您具有管理员权限。
您已安装 OpenShift CLI (oc
) 以进行验证步骤。
在 Red Hat Hybrid Cloud Console 中,单击Operators → 已安装的 Operators。
选择**openshift-operators-redhat**项目。
单击OpenShift Elasticsearch Operator。
单击Subscription → Channel。
在更改订阅更新通道窗口中,选择stable-5.y 并单击保存。请记下 elasticsearch-operator.v5.y.z
版本。
等待几秒钟,然后单击Operators → 已安装的 Operators。验证 OpenShift Elasticsearch Operator 版本是否与最新的 elasticsearch-operator.v5.y.z
版本匹配。
在**Operators** → **已安装的 Operators**页面上,等待**状态**字段报告**成功**。
通过输入以下命令并观察输出,验证所有 Elasticsearch pod 是否都具有Ready状态
$ oc get pod -n openshift-logging --selector component=elasticsearch
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
通过输入以下命令并观察输出,验证 Elasticsearch 集群状态是否为green
$ oc exec -n openshift-logging -c elasticsearch elasticsearch-cdm-1pbrl44l-1-55b7546f4c-mshhk -- health
{
"cluster_name" : "elasticsearch",
"status" : "green",
}
通过输入以下命令并观察输出,验证 Elasticsearch 定时作业是否已创建
$ oc project openshift-logging
$ oc get cronjob
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
通过输入以下命令并观察输出,验证日志存储是否已更新到正确的版本以及索引是否为green
$ oc exec -c elasticsearch <any_es_pod_in_the_cluster> -- indices
验证输出是否包含app-00000x
、infra-00000x
、audit-00000x
、.security
索引
Tue Jun 30 14:30:54 UTC 2020
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
green open infra-000008 bnBvUFEXTWi92z3zWAzieQ 3 1 222195 0 289 144
green open infra-000004 rtDSzoqsSl6saisSK7Au1Q 3 1 226717 0 297 148
green open infra-000012 RSf_kUwDSR2xEuKRZMPqZQ 3 1 227623 0 295 147
green open .kibana_7 1SJdCqlZTPWlIAaOUd78yg 1 1 4 0 0 0
green open infra-000010 iXwL3bnqTuGEABbUDa6OVw 3 1 248368 0 317 158
green open infra-000009 YN9EsULWSNaxWeeNvOs0RA 3 1 258799 0 337 168
green open infra-000014 YP0U6R7FQ_GVQVQZ6Yh9Ig 3 1 223788 0 292 146
green open infra-000015 JRBbAbEmSMqK5X40df9HbQ 3 1 224371 0 291 145
green open .orphaned.2020.06.30 n_xQC2dWQzConkvQqei3YA 3 1 9 0 0 0
green open infra-000007 llkkAVSzSOmosWTSAJM_hg 3 1 228584 0 296 148
green open infra-000005 d9BoGQdiQASsS3BBFm2iRA 3 1 227987 0 297 148
green open infra-000003 1-goREK1QUKlQPAIVkWVaQ 3 1 226719 0 295 147
green open .security zeT65uOuRTKZMjg_bbUc1g 1 1 5 0 0 0
green open .kibana-377444158_kubeadmin wvMhDwJkR-mRZQO84K0gUQ 3 1 1 0 0 0
green open infra-000006 5H-KBSXGQKiO7hdapDE23g 3 1 226676 0 295 147
green open infra-000001 eH53BQ-bSxSWR5xYZB6lVg 3 1 341800 0 443 220
green open .kibana-6 RVp7TemSSemGJcsSUmuf3A 1 1 4 0 0 0
green open infra-000011 J7XWBauWSTe0jnzX02fU6A 3 1 226100 0 293 146
green open app-000001 axSAFfONQDmKwatkjPXdtw 3 1 103186 0 126 57
green open infra-000016 m9c1iRLtStWSF1GopaRyCg 3 1 13685 0 19 9
green open infra-000002 Hz6WvINtTvKcQzw-ewmbYg 3 1 228994 0 296 148
green open infra-000013 KR9mMFUpQl-jraYtanyIGw 3 1 228166 0 298 148
green open audit-000001 eERqLdLmQOiQDFES1LBATQ 3 1 0 0 0 0
通过输入以下命令并观察输出,验证日志可视化工具是否已更新到正确的版本
$ oc get kibana kibana -o json
验证输出是否包含具有ready
状态的 Kibana pod
[
{
"clusterCondition": {
"kibana-5fdd766ffd-nb2jj": [
{
"lastTransitionTime": "2020-06-30T14:11:07Z",
"reason": "ContainerCreating",
"status": "True",
"type": ""
},
{
"lastTransitionTime": "2020-06-30T14:11:07Z",
"reason": "ContainerCreating",
"status": "True",
"type": ""
}
]
},
"deployment": "kibana",
"pods": {
"failed": [],
"notReady": []
"ready": []
},
"replicaSets": [
"kibana-5fdd766ffd"
],
"replicas": 1
}
]