Openshift提供了更新方式,可以实时更新整个平台。而我(也许还有其他人)只需要更新一些特定组件。
可以通过管理操作员并相应地设置映像来用新的容器映像更新控制台,openshift-apiserver等组件。 例如,要更新openshift-apiserver组件,请执行以下步骤:
#oc补丁openshiftapiservers.operator.openshift.io群集--patch'{“ spec”:{“ managementState”:“ Unmanaged”}}'--type = merge
#oc设置映像部署apiserver openshift-apiserver = registry.somecorp.com:5000 / ocp4 / openshift4:openshfit-apiserver-4.4.4-t1 -n openshift-apiserverb
#oc推出状态-w deploy / apiserver -n openshift-apiserver
对于基本的kube-apiserver组件,情况有所不同。 首先,禁用相关运算符的方法无效,看来kubeapiserver运算符不支持“非托管”功能。
#oc补丁kubeapiserver.operator.openshift.io群集--patch'{“ spec”:b {“ managementState”:“ Unmanaged”}}'--type = merge KubeAPIServer“群集”无效:spec.managementState:无效 值:“”:主体中的spec.managementState应该匹配 '^(Managed | Force)$'
第二,似乎没有部署,而是将pod用作kube-apiserver。虽然可以为特定的容器/容器设置图像,但我不知道如何应用该设置。
#oc设置映像容器kube-apiserver-master-0 kube-apiserver = registry.somecorp.com:5000 / ocp4 / openshift4:hyperkube-t1 -n openshift-kube-apiserver b pod / kube-apiserver-master-0图片已更新
是否有人可以帮助我找到一种在openshift系统中手动更新kube-apiserver的方法?感谢您提供任何信息。
答案 0 :(得分:0)
使用此处描述的选项A(https://github.com/openshift/enhancements/blob/master/enhancements/operator-dev-doc.md),可以为正在运行的集群真正更新kube-apiserver组件。