为什么 OpenShift 显示群集版本不是最新的?
虚拟私有云 经典基础架构 Satellite
您将看到以下一个或多个延长的时间段。
-
OpenShift Web 控制台显示一条条幅,声明集群正在更新,并且“集群设置”页面显示当前版本的状态为
Partial
。 -
运行
ibmcloud oc cluster get --cluster <cluster_name>
命令时,会看到warning
状态,并显示集群操作员的状态不是最新版本。State: warning Status: Some Cluster Operators are down-level and need to be updated, see 'https://ibm.biz/rhos_clusterversion_ts'
-
运行
oc get clusterversion
命令时,您会看到较早的版本。NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.11.27 True True 27h Unable to apply 4.12.3: an unknown error has occurred: MultipleErrors
-
您看到集群主升级被取消,状态如下。
Version update canceled. CAE012: Cannot complete cluster master operations because the current OpenShift clusterversion rollout is not complete. For more information, see the troubleshooting docs: 'https://ibm.biz/rhos_clusterversion_ts'
尚未完成集群主节点对新补丁版本的更新或对新次版本的升级。
集群主节点更新将在更新集群版本操作程序后立即完成。 群集版本操作员管理对各种群集操作员的更新,在群集主控更新完成后继续进行更新。
$ oc get clusterversion
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS
version 4.13.11 True False 33h Cluster version is 4.13.11
$ oc get co
NAME VERSION AVAILABLE PROGRESSING DEGRADED SINCE MESSAGE
console 4.13.11 True False False 2d3h
csi-snapshot-controller 4.13.11 True False False 2d4h
dns 4.13.11 True False False 2d4h
image-registry 4.13.11 True False False 2d4h
ingress 4.13.11 True False False 2d4h
insights 4.13.11 True False False 2d4h
kube-apiserver 4.13.11 True False False 2d4h
kube-controller-manager 4.13.11 True False False 2d4h
kube-scheduler 4.13.11 True False False 2d4h
kube-storage-version-migrator 4.13.11 True False False 2d4h
marketplace 4.13.11 True False False 2d4h
monitoring 4.13.11 True False False 2d4h
network 4.13.11 True False False 2d4h
node-tuning 4.13.11 True False False 32h
openshift-apiserver 4.13.11 True False False 2d4h
openshift-controller-manager 4.13.11 True False False 2d4h
openshift-samples 4.13.11 True False False 33h
operator-lifecycle-manager 4.13.11 True False False 2d4h
operator-lifecycle-manager-catalog 4.13.11 True False False 2d4h
operator-lifecycle-manager-packageserver 4.13.11 True False False 2d4h
service-ca 4.13.11 True False False 2d4h
storage 4.13.11 True False False 2d4h
如果集群刚刚升级,那么集群操作程序可能需要几分钟才能升级。 正常情况下,会看到类似如下的状态,并且随着时间的推移,已完成的步骤数会增加。
Working towards 4.13.11: 511 of 616 done (82% complete), waiting on network
如果集群继续显示长时间的部分更新,那么集群中存在阻止集群操作程序更新到当前版本的问题。 这可能是由许多事情引起的,例如以下示例。
- 运行状况不佳的集群组件 (例如,阻止推出操作程序更新的工作程序节点)。
- 对集群操作程序配置的更改不正确。
- 集群配置的更改有冲突,例如影响 OpenShift 组件的 RBAC 更改。
首先获取有关集群操作员更新进度和问题的更多详细信息。
-
运行以下命令获取更多信息。
oc get clusterversion
oc get clusteroperators
oc describe clusteroperator NAME
-
请查看命令输出中的 MESSAGE 列,以确定哪些集群操作员当前正在阻止进度并指示问题。 OpenShift 更新操作程序的方式可能导致意外依赖关系; 例如,某些集群操作程序更新可能正在等待其他操作程序完成它们现在正在运行的步骤。
-
使用
oc get nodes
命令检查工作程序节点状态。 有时节点不是Ready
,这可能是由于节点上缺少资源或kube-proxy
或kubelet
存在问题。 这可能会导致更新期间发生问题。-
如果最近更改了其中一个不完整操作程序的配置,请通过运行
oc describe clusteroperator NAME
来描述操作程序以获取更多详细信息。例如,oc describe cluster-operator image-registry
可能会显示有助于识别问题的错误。 -
继续检查操作程序 pod 的状态和日志,以进一步调试问题。 有时操作程序会降级,但这并不意味着更新已失败或不起作用。
-
-
如果您无法识别或解决这些问题,或者如果问题仍然存在,请联系支持人员。 打开 支持案例。 在案例详细信息中,请确保包含任何相关日志文件,错误消息或命令输出。