1.4. 主要的技术变化
OpenShift Container Platform 4.10 包括以下显著的技术更改。
TLS X.509 证书必须具有对象备用名称
X.509 证书必须正确设置 Subject Alternative Name 字段。如果您在没有这个问题的情况下更新集群,则可能会破坏集群或呈现它无法访问。
在旧版本的 OpenShift Container Platform 中,X.509 证书在没有 Subject Alternative Name 的情况下可以正常工作,只要设置了 Common Name 字段。此行为在 OpenShift Container Platform 4.6 中删除。
在某些情况下,没有 Subject Alternative Name 的证书在 OpenShift Container Platform 4.6、4.7、4.8 和 4.9 中继续工作。由于它使用 Kubernetes 1.23,因此 OpenShift Container Platform 4.10 在任何情况下都不允许使用它。
云控制器管理器用于其他云供应商
Kubernetes 社区计划弃用 Kubernetes 控制器管理器,而是使用云控制器管理器与底层云平台交互。因此,无法为任何新的云平台添加 Kubernetes 控制器管理器支持。在这个 OpenShift Container Platform 发行版本中添加的实现支持对 Google Cloud Platform (GCP), VMware vSphere, IBM Cloud, 和 Alibaba Cloud 使用云控制器管理器(技术预览)。
要了解有关云控制器管理器的更多信息,请参阅 Kubernetes Cloud Controller Manager 文档。
要管理云控制器管理器和云节点管理器部署和生命周期,请使用 Cluster Cloud Controller Manager Operator。
如需更多信息,请参阅平台 Operator 参考中的 Cluster Cloud Controller Manager Operator 条目。
Operator SDK v1.16.0
OpenShift Container Platform 4.10 支持 Operator SDK v1.16.0。请参阅安装 Operator SDK CLI 来安装或更新到这个最新版本。
Operator SDK v1.16.0 支持 Kubernetes 1.22。
Kubernetes 1.22 中删除了很多过时的 v1beta1
API,包括 sigs.k8s.io/controller-runtime v0.10.0
和 controller-gen v0.7
。如果您需要 scaffold v1beta1
API 为自定义资源定义(CRD)或 webhook 将项目发布至旧的集群版本,则这个变化会造成破坏。
如需有关 Kubernetes 1.22 中引入的更改的更多信息,请参阅 OpenShift Container Platform 4.9 发行注记中的 Validating bundle manifests for APIs removed from Kubernetes 1.22 和 Beta APIs removed from Kubernetes 1.22。
如果您之前使用 Operator SDK v1.10.1 创建或维护了任何 Operator 项目,请参阅升级较新版本的 Operator SDK 版本的项目,以确保您的项目已升级以保持与 Operator SDK v1.16.0 的兼容性。
更改了 Cluster Autoscaler 警报的严重性
在以前的版本中,ClusterAutoscalerUnschedulablePods
警报会显示严重性为警告
的警报,这建议开发人员进行干预。此警报的信息并不正确,它没有包括需要干预的问题的信息。在这个版本中,ClusterAutoscalerUnschedulablePods
警报的严重性从 warning
减少到 info
。(BZ#2025230)
Network Observability operator 用于观察网络流
Network Observability Operator 在 OpenShift Container Platform 4.12 发行版本中是 General Availability (GA),它也在 OpenShift Container Platform 4.10 中被支持。
如需更多信息,请参阅 Network Observability。