发行注记
OpenShift Container Platform 发行版本中的主要新功能及变化信息
摘要
第 1 章 OpenShift Container Platform 4.11 发行注记
Red Hat OpenShift Container Platform 为软件开发人员和 IT 机构提供了一个混合云应用平台。使用这个平台可以在配置和管理成本最小化的情况下,利用安全、可扩展的资源部署新的或已有的应用程序。OpenShift Container Platform 支持大量编程语言和开发平台,如 Java、JavaScript、Python、Ruby 和 PHP。
OpenShift Container Platform 基于 Red Hat Enterprise Linux(RHEL)和 Kubernetes,为当今的企业级应用程序提供了一个更加安全、可扩展的多租户操作系统,同时提供了集成的应用程序运行时及程序库。OpenShift Container Platform 可以满足用户对安全性、隐私、合规性及监管的要求。
1.1. 关于此版本
OpenShift Container Platform(RHSA-2022:5069)现已正式发布。此发行版本使用 Kubernetes 1.24 和 CRI-O 运行时。OpenShift Container Platform 4.11 的新功能、改变以及已知的问题包括在此文档中。
OpenShift Container Platform 4.11 集群位于 https://console.redhat.com/openshift。使用 OpenShift Container Platform 的 Red Hat OpenShift Cluster Manager 应用程序,您可以将 OpenShift 集群部署到内部环境或云环境中。
OpenShift Container Platform 4.11 需要运行在 Red Hat Enterprise Linux (RHEL) 8.5-8.9 上,以及 Red Hat Enterprise Linux CoreOS 4.11 上。
您必须将 RHCOS 机器用于 control plane,而 compute 系统可以使用 RHCOS 或 RHEL。
1.2. OpenShift Container Platform 层次和依赖组件支持和兼容性
OpenShift Container Platform 的层次组件和依赖组件的支持范围会独立于 OpenShift Container Platform 版本。要确定附加组件的当前支持状态和兼容性,请参阅其发行注记。如需更新相关信息,请参阅 Red Hat OpenShift Container Platform 生命周期政策。
1.3. 新功能及功能增强
此版本对以下方面进行了改进。
1.3.1. Red Hat Enterprise Linux CoreOS (RHCOS)
1.3.1.1. 改进了对使用 Fabric 的 NVMe 的支持
OpenShift Container Platform 4.11 引入了 nvme-cli
软件包,它为管理 NVMe 设备提供了一个接口。
1.3.1.2. 使用 kdump 在 AMD64 机器上调查内核崩溃
RHCOS 现在支持 kdump
用于 OpenShift Container Platform 4.11 中的 x86_64
架构。对其它构架上的 kdump
的支持仍为技术预览。
1.3.1.3. 使用 kdump 调查 ARM64 机器上的内核崩溃(技术预览)
RHCOS 现在支持 kdump
用于 OpenShift Container Platform 4.11 中的 arm64
架构,作为技术预览。
1.3.1.4. RHCOS 现在使用 RHEL 8.6
RHCOS 现在在 OpenShift Container Platform 4.11 及更高版本中使用 Red Hat Enterprise Linux (RHEL) 8.6 软件包。这可让您获得最新的修复、功能和增强,以及最新的硬件支持和驱动程序更新。
1.3.1.5. 更新了 RHCOS registry URL
下载 RHCOS 引导镜像的重定向器主机名现在是 rhcos.mirror.openshift.com
。您必须配置防火墙以授予引导镜像的访问权限。如需更多信息,请参阅为 OpenShift Container Platform 配置防火墙。
1.3.2. 安装和升级
1.3.2.1. RHEL 9 支持 OpenShift 安装程序
现在支持将 Red Hat Enterprise Linux (RHEL) 9 与 OpenShift 安装程序(openshift-install)搭配使用。
如需更多信息,请参阅您的平台安装文档中的"包含安装程序"部分。
1.3.2.2. 在单一节点上安装 OpenShift Container Platform 的新最小系统要求
此发行版本更新了在单一节点上安装 OpenShift Container Platform 的最低系统要求。在单一节点上安装 OpenShift Container Platform 时,您应该配置至少 16 GB RAM。特定工作负载的要求中可能需要额外 RAM。支持的平台的完整列表包括裸机、vSphere、Red Hat OpenStack Platform(RHOSP)和 Red Hat Virtualization Platform。在所有情况下,当使用 openshift-installer
二进制文件安装单节点 OpenShift 时,您必须在 install-config.yaml
配置文件中指定 platform.none: {}
参数。
1.3.2.3. OpenShift Container Platform on ARM
OpenShift Container Platform 4.11 现在支持基于 AWS 用户置备的基础架构和裸机安装程序置备的基础架构的 ARM 架构。有关实例可用性和安装文档的更多信息,请参阅支持的安装方法。
ARM 上的 OpenShift Container Platform 支持以下功能:
- 断开连接的安装支持
- AWS 的弹性文件系统(EFS)
- 裸机上的本地存储 Operator
- 用于裸机的互联网小型计算机系统接口(iSCSI)
ARM 上的 OpenShift Container Platform 支持以下 Operator:
- 特殊资源 operator(SRO)
1.3.2.4. 在 AWS 上的安装过程中对 bootstrap 进行故障排除会失败
安装程序现在从 AWS 上的 bootstrap 和 control plane 主机收集串口控制台日志。此日志数据被添加到标准 bootstrap 日志捆绑包中。
如需更多信息,请参阅故障排除安装问题。
1.3.2.5. 支持 Microsoft Hyper-V 生成版本 2
默认情况下,安装程序使用 Hyper-V 生成版本 2 虚拟机部署 Microsoft Azure 集群。如果安装程序检测到为虚拟机选择的实例类型不支持版本 2,它将使用版本 1 进行部署。
1.3.2.6. 默认 AWS 和 VMware vSphere 计算节点资源
从 OpenShift Container Platform 4.11 开始,安装程序现在使用 4 个 vCPU 和 16 GB 虚拟 RAM 部署 AWS 和 VMware vSphere 计算节点。
1.3.2.7. 支持 AWS SC2S 区域
OpenShift Container Platform 4.11 引入了对 AWS Secret Commercial Cloud Services(SC2S)区域的支持。现在,您可以在 us-isob-east-1
SC2S 区域中安装和更新 OpenShift Container Platform 集群。
如需更多信息,请参阅在 AWS 上安装集群到一个 Secret 或 Top Secret 区域
1.3.2.8. 使用安装程序置备的基础架构在 Nutanix 上安装集群
OpenShift Container Platform 4.11 支持使用安装程序置备的基础架构在 Nutanix 上安装集群。这种类型的安装允许您使用安装程序在安装程序置备和集群维护的基础架构上部署集群。
如需更多信息,请参阅在 Nutanix 上安装集群。
1.3.2.9. 使用 Azure Ultra SSD 安装 OpenShift Container Platform
现在,您可以在 Azure 上安装 OpenShift Container Platform 时启用 Ultra SSD 存储。此功能要求安装 OpenShift Container Platform 的 Azure 区域和区域都提供 Ultra 存储。
如需更多信息,请参阅其他 Azure 配置参数。
1.3.2.10. 添加了对 bootstrapExternalStaticIP 和 bootstrapExternalStaticGateway 配置设置的支持
当在 baremetal
网络中带有静态 IP 地址而没有 DHCP 服务器的裸机上部署安装程序置备的 OpenShift Container Platform 集群时,您必须为 bootstrap 虚拟机指定一个静态 IP 地址以及 bootstrap 虚拟机网关的静态 IP 地址。OpenShift Container Platform 4.11 提供 bootstrapExternalStaticIP
和 bootstrapExternalStaticGateway
配置设置,您可以在部署前在 install-config.yaml
文件中设置。通过引入这些设置,不再需要 OpenShift Container Platform 4.10 中的在 baremetal 网络中,在没有 DHCP 服务器的情况下为 bootstrap 虚拟机分配一个 IP 地址这一过程。
如需更多信息,请参阅配置 install-config.yaml 文件和额外 install-config 参数。
1.3.2.11. 配置 Fujitsu 硬件
OpenShift Container Platform 4.11 支持在 Fujitsu 硬件的裸机上安装 OpenShift Container Platform 时配置 control plane 节点的 BIOS 和 RAID 阵列。对于 OpenShift Container Platform 4.10,在 Fujitsu 硬件中配置 BIOS 和 RAID 阵列仅限于 worker 节点。
1.3.2.12. 使用 oc-mirror CLI 插件断开连接的镜像现已正式发布
您可以使用 oc-mirror OpenShift CLI (oc
)插件在断开连接的环境中镜像镜像。此功能以前作为技术预览功能在 OpenShift Container Platform 4.10 中引入,现在在 OpenShift Container Platform 4.11 中正式发布。
此 oc-mirror 插件发行版本包括以下新功能:
- 从目标镜像 registry 修剪镜像
- 为 Operator 软件包和 OpenShift Container Platform 发行版本指定版本范围
- 为 OpenShift Update Service(OSUS)使用生成支持工件
- 获取初始镜像设置配置的模板
如果您在 OpenShift Container Platform 4.10 中使用 oc-mirror 插件的技术预览版本,则无法将镜像 registry 迁移到 OpenShift Container Platform 4.11。您必须下载新的 oc-mirror 插件,使用新的存储后端,并在目标镜像 registry 上使用新的顶级命名空间。
如需更多信息,请参阅使用 oc-mirror 插件为断开连接的安装镜像镜像。
1.3.2.13. 使用用户管理的加密密钥在 Azure 上安装集群
OpenShift Container Platform 4.11 支持使用用户管理的磁盘加密在 Azure 上安装集群。
如需更多信息,请参阅为 Azure 启用用户管理的加密。
1.3.2.14. 默认启用 Azure 的加速网络
Azure 上的 OpenShift Container Platform 4.11 为 control plane 和计算节点提供加速网络。在安装程序置备的基础架构安装中支持的实例类型支持,默认启用加速网络。
如需更多信息,请参阅 Azure 上的 Openshift 4 - 加速联网。
1.3.2.15. AWS VPC 端点和受限安装
在 AWS 上安装受限 OpenShift Container Platform 集群时,不再需要配置 AWS VPC 端点。在配置 VPC 端点时,您还可以选择在没有 VPC 端点的情况下配置代理,或使用 VPC 端点配置代理。
如需更多信息,请参阅使用 VPC 的要求。
1.3.2.16. 安装 OpenShift Container Platform 时进行其他自定义
OpenShift Container Platform 4.11 允许您禁用 baremetal
和 marketplace
Operator 的安装,以及存储在 openshift
命名空间中的 openshift-samples
内容。在安装前,您可以通过将 baselineCapabilitySet
和 additionalEnabledCapabilities
参数添加到 install-config.yaml
配置文件来禁用这些功能。如果在安装过程中禁用这些功能,您可以在安装集群后启用它们。启用功能后,无法再次禁用该功能。
如需更多信息,请参阅您的平台安装文档中的"安装配置参数"部分。
1.3.2.17. Azure Marketplace offering
OpenShift Container Platform 现在包括在 Azure Marketplace 中。Azure Marketplace 产品可供在北美和 EMEA 处采购 OpenShift Container Platform 的客户使用。
如需更多信息,请参阅使用 Azure Marketplace 安装 OpenShift。
1.3.2.18. AWS Marketplace 产品
OpenShift Container Platform 现在包括在 AWS Marketplace 中。AWS Marketplace 产品可供在北美地区购买 OpenShift Container Platform 的客户使用。
如需更多信息,请参阅使用 AWS Marketplace 安装 OpenShift。
1.3.2.19. vSphere 集群上的 CSI 驱动程序安装
要在 vSphere 上运行的集群中安装 CSI 驱动程序,您必须安装以下组件:
- 虚拟硬件版本 15 或更高版本
- vSphere 版本 7.0 更新 2 或更高版本直到但不包括版本 8。vSphere 8 不被支持。
- VMware ESXi 版本 7.0 更新 2 或更高版本
早于以上版本的组件已弃用或删除。弃用的版本仍被完全支持,但红帽建议您使用 ESXi 7.0 Update 2 或更高版本和 vSphere 7.0 更新 2,但不包括版本 8. vSphere 8。
如需更多信息,请参阅已弃用和删除的功能。
1.3.3. 安装后配置
1.3.3.1. 集群功能
作为集群管理员,您可以在安装或安装后启用集群功能来选择或取消选择一个或多个可选组件。
如需更多信息,请参阅集群功能。
1.3.3.2. 带有多架构计算机器的 OpenShift Container Platform 集群(技术预览)
OpenShift Container Platform 4.11 引入了带有多架构计算机器的集群,使用 Azure 安装程序置备的基础架构作为技术预览。此功能提供第二天操作,能够将 arm64
计算节点添加到使用多架构安装程序二进制文件置备的现有 x86_64
Azure 集群。您可以通过创建一个使用手动生成的 arm64
引导镜像的自定义 Azure 机器集来在集群中添加 arm64
计算节点。目前不支持 arm64
构架上的 control planes。如需更多信息,请参阅配置多架构集群。
您可以使用 image-pullsec
手动将集群升级到最新的多架构发行镜像。如需更多信息,请参阅升级多架构计算机器。
1.3.4. Web 控制台
1.3.4.1. Developer Perspective (开发者视角)
在这个版本中,您可以在 Developer 视角中,将包含管道的 GitHub 存储库添加到 OpenShift Container Platform 集群中。现在,当相关 Git 事件(如推送或拉取请求)被触发时,可以在集群中的 GitHub 存储库中运行管道和任务。
- 在管理员视角中,您可以将 GitHub 应用程序与 OpenShift 集群配置为使用管道作为代码。使用这个配置,可以执行构建部署所需的一组任务。
- 在这个版本中,您可以使用自己的一组策展的任务创建自定义管道。您可以直接从开发人员控制台搜索、安装和升级任务。
- 在这个版本中,您可以在 web 终端中有多个标签,查看 bash 历史记录,web 终端会保持打开,直到您关闭浏览器窗口或标签页。
- 在这个版本中,在开发者视角的 Add+ 页面中,添加了一个新的菜单来共享项目和 Helm Chart 仓库,以便向项目中添加或删除用户。
1.3.4.2. 动态插件更新
在这个版本中,您可以使用新的 console.openshift.io/use-i18next
注解来确定 ConsolePlugin
包含本地化资源。如果注解被设置为 "true"
,则加载来自 i18n 命名空间的本地化资源。如果注解被设置为任何其他值,或者在 ConsolePlugin
资源中缺失,则不会加载本地化资源。
如需更多信息,请参阅动态插件概述。
1.3.4.3. 支持暗模式主题
OpenShift Container Platform web 控制台现在支持暗模式主题。在用户首选项页面中,选择您首选的主题来查看 Web 控制台。
1.3.4.4. 显示 Installed Operator 页面中所有受管命名空间的操作对象实例
在这个版本中,Operator → Installed Operator 页显示所有命名空间中的所有 Operator。您仍然只能查看项目选择器内所选命名空间中的实例。当查看操作对象实例时,新的切换控制允许从所有命名空间或只查看当前命名空间的所有操作对象实例。
1.3.4.5. 条件更新
在这个版本中,如果有条件更新可用,您可以在更新集群模态的选择新版本
下拉列表中启用包括但不推荐的版本
来填充有条件更新的下拉列表。如果选择了支持但不推荐
的版本,则会在下拉菜单下显示与版本相关的问题的提示。
1.3.4.6. Pod 中断预算 (PDB)
在这个版本中,为 OpenShift Container Platform Web 控制台提供对 pod 中断预算 (PDB) 的支持。在 Workloads → PodDisruptionBudgets 中,您可以为 pod 资源创建 PDB。您可以从可用要求列表中选择 maxUnavailable
和 minAvailable
,并设置正在运行的 pod 的值。另外,也可以通过 pod 控制器资源
列表和详情页创建 pod 中断预算。例如,从 Workloads → Deployments 点 Add PodDisruptionBudget
。
如需更多信息,请参阅 Pod 抢占和其他调度程序设置。
1.3.5. OpenShift CLI (oc)
1.3.5.1. RHEL 9 支持 OpenShift CLI (oc)
现在支持将 Red Hat Enterprise Linux (RHEL) 9 与 OpenShift CLI (oc
) 搭配使用。
不支持将 OpenShift CLI(oc
)安装为 Red Hat Enterprise Linux(RHEL)9 的 RPM。您必须下载二进制文件,为 RHEL 9 安装 OpenShift CLI。
如需更多信息,请参阅安装 OpenShift CLI。
1.3.6. IBM Z 和 LinuxONE
在这个版本中,IBM Z 和 LinuxONE 与 OpenShift Container Platform 4.11 兼容。可以使用 z/VM 或 RHEL KVM 进行安装。有关安装说明,请参阅以下文档:
主要改进
IBM Z 和 LinuxONE 中的 OpenShift Container Platform 4.11 支持以下新功能:
- 备用身份验证提供程序
- 使用 Local Storage Operator 自动设备发现
CSI 卷
- 克隆
- 扩展
- Snapshot
- File Integrity Operator
- 用户定义项目的监控
- Operator API
- OC CLI 插件
支持的功能
IBM Z 和 LinuxONE 也支持以下功能:
目前,支持以下 Operator:
- Cluster Logging Operator
- Compliance Operator
- Local Storage Operator
- NFD Operator
- NMState Operator
- OpenShift Elasticsearch Operator
- Service Binding Operator
- Vertical Pod Autoscaler Operator
支持以下 Multus CNI 插件:
- Bridge
- Host-device
- IPAM
- IPVLAN
- 加密数据存储在 etcd 中
- Helm
- Pod 横向自动扩展
- 多路径(Multipathing)
- 使用 iSCSI 的持久性存储
- 使用本地卷的持久性存储(本地存储 Operator)
- 使用 hostPath 的持久性存储
- 使用 Fibre Channel 持久性存储
- 使用 Raw Block 的持久性存储
- OVN-Kubernetes,包括 IPsec 加密
- 支持多个网络接口
- 三节点集群支持
- SCSI 磁盘中的 z/VM 模拟 FBA 设备
- 4K FCP 块设备
以下功能仅适用于 IBM Z 和 4.11 上的 OpenShift Container Platform:
- IBM Z 和 LinuxONE 为附加的 ECKD 存储的虚拟机启用了 HyperPAV
限制
以下限制会影响 OpenShift Container Platform 对 IBM Z 和 LinuxONE 的影响:
以下 OpenShift Container Platform 技术预览功能不被支持:
- 精度时间协议 (PTP) 硬件
以下 OpenShift Container Platform 功能不被支持:
- 使用机器健康检查功能自动修复损坏的机器
- Red Hat OpenShift Local
- 在节点上控制过量使用和管理容器密度
- FIPS 加密
- NVMe
- OpenShift Metering
- OpenShift Virtualization
- 在 OpenShift Container Platform 部署过程中启用 Tang 模式磁盘加密
- Compute 节点必须运行 Red Hat Enterprise Linux CoreOS(RHCOS)
- 必须使用 Red Hat OpenShift Data Foundation 或其他支持的存储协议来置备持久性共享存储
- 必须使用本地存储(如 iSCSI、FC 或者带有 DASD、FCP 或 EDEV/FBA 的 LSO)置备持久性非共享存储
1.3.7. IBM Power
在这个版本中,IBM Power 与 OpenShift Container Platform 4.11 兼容。有关安装说明,请参阅以下文档:
主要改进
OpenShift Container Platform 4.11 的 IBM Power 支持以下新功能:
- 备用身份验证提供程序
CSI 卷
- 克隆
- 扩展
- Snapshot
- File Integrity Operator
- IPv6
- 用户定义项目的监控
- Operator API
- OC CLI 插件
支持的功能
IBM Power 还支持以下功能:
目前,支持以下 Operator:
- Cluster Logging Operator
- Compliance Operator
- Local Storage Operator
- NFD Operator
- NMState Operator
- OpenShift Elasticsearch Operator
- Cluster Network Operator
- Service Binding Operator
- Vertical Pod Autoscaler Operator
支持以下 Multus CNI 插件:
- Bridge
- Host-device
- IPAM
- IPVLAN
- 加密数据存储在 etcd 中
- Helm
- Pod 横向自动扩展
- 多路径(Multipathing)
- Multus SR-IOV
- OVN-Kubernetes,包括 IPsec 加密
- 使用 iSCSI 的持久性存储
- 使用本地卷的持久性存储(本地存储 Operator)
- 使用 hostPath 的持久性存储
- 使用 Fibre Channel 持久性存储
- 使用 Raw Block 的持久性存储
- 支持多个网络接口
- 支持 Power10
- 三节点集群支持
- 4K 磁盘支持
限制
OpenShift Container Platform 对 IBM Power 的影响如下:
以下 OpenShift Container Platform 技术预览功能不被支持:
- 精度时间协议 (PTP) 硬件
以下 OpenShift Container Platform 功能不被支持:
- 使用机器健康检查功能自动修复损坏的机器
- Red Hat OpenShift Local
- 在节点上控制过量使用和管理容器密度
- FIPS 加密
- OpenShift Metering
- OpenShift Virtualization
- 在 OpenShift Container Platform 部署过程中启用 Tang 模式磁盘加密
- Compute 节点必须运行 Red Hat Enterprise Linux CoreOS(RHCOS)
- 持久性存储必须是使用本地卷、Red Hat OpenShift Data Foundation、网络文件系统(NFS)或 Container Storage Interface(CSI)的 Filesystem 类型
1.3.8. 安全性与合规性
1.3.8.1. 审计日志现在包含 OAuth 服务器审计事件
现在,OAuth 服务器审计事件被记录在审计日志中的元数据级别。登录事件包括失败的登录尝试。
如需更多信息,请参阅关于审计日志策略配置集。
1.3.9. 网络
1.3.9.1. 二级网络的 Pod 级别绑定
在 pod 级别的绑定对于启用需要高可用性和更多吞吐量的 pod 内的工作负载至关重要。使用 pod 级别绑定,您可以在内核模式接口上从多个根 I/O 虚拟化(SR-IOV)虚拟功能接口创建绑定接口。SR-IOV 虚拟功能传递到 pod,并附加到内核驱动程序中。
需要 pod 级别绑定的情况包括从不同物理功能的多个 SR-IOV 虚拟功能创建绑定接口。可以利用主机上的两个不同物理功能创建绑定接口,以便在 pod 级别上实现高可用性。
如需更多信息,请参阅从两个 SR-IOV 接口配置绑定接口
1.3.9.2. 带有 hostnetwork 端点的 Ingress Controller 的新选项
在这个版本中,为 Ingress Controller 引入了一个新的选项,它带有 hostnetwork
端点策略。现在,您可以使用 httpPort
、httpsPort
和 statsPort
绑定端口在同一 worker 节点上托管多个 Ingress Controller。
1.3.9.3. control plane 和 worker 节点的多节点配置
您可以同时对集群中的多个裸机、安装程序置备的基础架构节点应用单个配置。将单个配置应用到多个节点会降低错误配置因单一置备过程造成的风险。
当使用 install-config
文件时,此机制仅适用于初始部署。
1.3.9.4. 支持在 AWS 上配置 Classic Load Balancer Timeouts
现在,您可以为 Ingress Controller 中的 AWS Classic Load Balancers (CLBs) 配置闲置连接超时。
如需更多信息,请参阅配置 Classic Load Balancer 超时
1.3.9.5. 更新至 HAProxy 2.2.24
OpenShift Container Platform 更新至 HAProxy 2.2.24。
1.3.9.6. 支持为 HAProxy 进程配置最大连接数
现在,您可以将 Ingress Controller 中每个 HAProxy 进程建立的最大同时连接数设置为 2000 和 2,000,000 之间的任何值。
如需更多信息,请参阅 Ingress Controller 配置参数。
1.3.9.7. 设置 Ingress Controller 健康检查间隔
在这个版本中,集群管理员可以设置健康检查间隔,以定义路由器在两个连续健康检查之间等待的时间。这个值会作为所有路由的默认值进行全局应用。默认值为 5 秒。
如需更多信息,请参阅 Ingress Controller 配置参数。
1.3.9.8. 支持配置接口级安全网络 sysctl
使用新的 tuning-cni
meta 插件设置一个接口级别的安全网络 sysctl,该 sysctl 仅适用于特定的接口。例如,您可以通过配置 tuning-cni
插件来更改特定网络接口上的 accept_redirects
的行为。文档中提供了可设置的接口特定安全 sysclts 的完整列表。
除了此增强外,系统范围内的安全 sysctl 已进行了增强,以支持 net.ipv4.ping_group_range
和 net.ipv4.ip_unprivileged_port_start
。
有关配置 tuning-cni
插件的更多信息,请参阅设置接口级别网络 sysctl。
有关新支持的接口级别网络安全 sysclts 和更新的更多信息,请参阅在容器中使用 sysctl。
1.3.9.9. 支持通过 TLS 转发 DNS 请求
在高度监管的环境中工作时,您可能需要在将请求转发到上游解析器时保护域名系统(DNS)流量,以便您确保额外的 DNS 流量和数据隐私。集群管理员现在可以配置传输层安全(TLS)来转发 DNS 查询。这个功能只适用于 DNS Operator,不适用于 Machine Config Operator 管理的 CoreDNS 实例。
如需更多信息,请参阅 使用 DNS 转发。
1.3.9.10. OVN-Kubernetes 的内部流量支持
作为集群管理员,在使用 OVN-Kubernetes Container Network Interface (CNI) 集群网络供应商时,您可以在 Kubernetes 服务对象上配置 internalTrafficPolicy=Local
。此功能允许集群管理员将流量路由到流量来自的同一节点上的端点。如果没有本地节点端点,流量将被丢弃。
如需更多信息,请参阅服务内部流量策略。
1.3.9.11. 支持 AWS Load Balancer Operator(技术预览)
作为集群管理员,您可以使用 OpenShift Container Platform Web 控制台或 CLI 安装来自 OperatorHub 的 AWS Load Balancer Operator。AWS Load Balancer Operator 只是一个技术预览。
如需更多信息,请参阅安装 AWS Load Balancer Operator。
1.3.9.12. Route API 的增强
在以前的版本中,您无法指定路由的子域,并且需要 spec.host
字段来设置主机名。现在,您可以指定 spec.subdomain
字段,并省略路由的 spec.host
字段。公开路由的路由器部署将使用 spec.subdomain
值来确定主机名。
您可以使用此功能增强来简化分片,通过使路由具有多个不同的主机名,由公开路由的每个路由器部署决定。
1.3.9.13. 外部 DNS Operator
在 OpenShift Container Platform 4.11 中,外部 DNS Operator 可用于 AWS Route53、Azure DNS、GCP DNS 和 Infoblox。这个功能是正式发布 (GA) 状态。对于 GovCloud 中的 BlueCat 和 AWS Route53,External DNS Operator 仍然为技术预览(TP)状态。在这个版本中,外部 DNS Operator 提供以下改进:
- 您可以在 Infoblox 的 DNS 区域中创建 DNS 记录。
-
默认情况下,External DNS Operator 在命名空间
external-dns-operator
中创建操作对象。在安装前,您不必为操作对象和基于角色的访问控制(RBAC)手动创建命名空间。 - 您可以使用路由的状态来检索 DNS FQDN 名称。
- 现在,提供了对 BlueCat DNS 供应商的代理支持。
- 在使用 BlueCat DNS 提供者时,您可以启用自动 DNS 配置部署。
确保您从 TP 迁移到 GA。OpenShift Container Platform 4.11 的 ExternalDNS
的上游版本是 v0.12.0
,TP 为 v0.10.2
。如需更多信息,请参阅关于外部 DNS Operator。
1.3.9.14. 对双 NIC 边界时钟的 PTP 支持
现在,您可以将双网络接口(NIC)配置为使用每个 NIC 频道的 PtpConfig
配置集的边界时钟。
如需更多信息,请参阅使用带有双 NIC 硬件 的 PTP。
1.3.9.15. PTP 事件增强
新的 PTP 事件 API 端点可用,即 api/cloudNotifications/v1/publishers
。使用此端点,您可以获取 PTP os-clock-sync-state
、ptp-clock-class-change
,以及集群节点的 lock-state
详情。
如需更多信息,请参阅将 DU 应用程序订阅到 PTP 事件 REST API 参考。
1.3.9.16. SR-IOV 支持 Pensando DSC 卡
SR-IOV 支持现在可用于 PensandoDS 卡。支持 OpenShift SR-IOV,但在使用 SR-IOV 时,您必须使用 SR-IOV CNI 配置文件设置静态的虚拟功能(VF)介质访问控制(MAC)地址。
1.3.9.17. SR-IOV 支持 Mellanox MT2892 卡
SR-IOV 支持现在可用于 Mellanox MT2892 卡。
1.3.9.18. OpenShift Container Platform CIDR 范围
请注意,集群安装后无法调整网络的 CIDR 范围。红帽不对确定范围提供直接指导,因为它需要仔细考虑创建的 pod 数量。
1.3.9.19. OVN-Kubernetes 网络供应商:在运行时启用 IPsec
如果使用 OVN-Kubernetes 集群网络供应商,现在可以在集群安装后启用 IPsec 加密。有关如何启用 IPsec 的更多信息,请参阅配置 IPsec 加密。
1.3.9.20. 支持额外的 MetalLB CRD 并控制日志详细程度
添加了额外的 MetalLB 自定义资源定义(CRD)来支持更复杂的配置。
添加了以下 CRD:
-
IPAddressPools
-
L2Advertisement
-
BGPAdvertisement
-
社区
通过这些改进,您可以使用 Operator 进行更复杂的配置。例如,您可以使用增强功能来隔离节点或网络段。另外,可以对 FRRouting(FRR)日志记录组件进行的改进控制所生成的日志的详细程度。
OpenShift Container Platform 4.10 以及配置 MetalLB 和 MetalLB Operator 所述现有 CRD 仍被支持,但已弃用。AddressPool
配置已弃用。
在 4.10 中,使用 AddressPool
第 2 层和 BGP IP 地址从不同的地址池中分配。在 OpenShift Container Platform 4.11 中,可从相同的地址池中分配第 2 层和 BGP IP 地址。
如需更多信息,请参阅关于 MetalLB 和 MetalLB Operator。
1.3.9.21. 使用 Ingress 注解中的目标 CA 证书创建路由的功能
route.openshift.io/destination-ca-certificate-secret
注解现在可用于 Ingress 对象来定义带有自定义证书(CA)的路由。
如需更多信息,请参阅在 Ingress 注解中使用目标 CA 证书创建路由。
1.3.9.22. 托管 control plane(技术预览)
使用 OpenShift Container Platform 的托管 control plane,您可以大规模托管集群,降低管理成本,优化集群部署时间,以及单独的管理和工作负载问题。当您为 Kubernetes Operator 版本 2.0 安装 multicluster engine 时,您可以启用此部署模型作为技术预览功能。如需更多信息,请参阅托管 control planes 概述(技术预览)。
Open Virtual Network(OVN)被重新设计为在集群的 control plane 和数据存储中托管其 control plane 和数据存储。使用托管的 control plane,OVN 支持分割 control plane。
1.3.9.23. 在使用 OVN-Kubernetes 集群网络供应商的用户置备的裸机基础架构上支持 IPv6 单栈和双栈
对于用户置备的裸机基础架构上的集群,OVN-Kubernetes 集群网络供应商支持 IPv4 和 IPv6 地址系列。
1.3.9.24. RHOSP 上的 OVS hardware offloading
对于在 RHOSP 上运行的集群,Open vSwitch(OVS) hardware offloading 现已正式发布。
如需更多信息,请参阅启用 OVS 硬件卸载。
1.3.9.25. RHOSP 的 NFV 用户体验改进
对于在 RHOSP 上运行的集群,网络功能虚拟化部署体验有所改进。这个版本的更改包括:
- 从元数据服务 URL 获取的网络信息,而不是配置驱动器
- 在所有发现的设备中带有非 IOMMU 的自动 VFIO 载入
- DPDK vHost 用户端口
这些更改反映了安装后和网络配置文档的简化。
1.3.9.26. 在 Red Hat OpenStack Platform、VMware vSphere 或 oVirt 上的安装,现在使用单播配置 keepalived 作为默认值
对于 Red Hat OpenStack Platform (RHOSP)、VMware vSphere 或 oVirt 上的 OpenShift Container Platform 安装程序置备安装,Beepalived 现在被默认配置为使用单播(而不是多播)。您不再需要允许多播流量。单播迁移会在集群完成升级后的几分钟发生,因为所有节点都必须同时进行迁移。同时拥有多播和单播集群不会造成任何问题,因为 keepalived 将单播和多播视为完全独立的。
1.3.10. Storage
1.3.10.1. 使用 Microsoft Azure File CSI Driver Operator 的持久性存储已正式发布
OpenShift Container Platform 可以使用 Azure File 的 Container Storage Interface(CSI)驱动程序置备持久性卷(PV)。此功能以前作为技术预览功能在 OpenShift Container Platform 4.10 中引入,现在在 OpenShift Container Platform 4.11 中正式发布并启用。
如需更多信息,请参阅 Azure File CSI Driver Operator。
1.3.10.2. OpenStack Cinder 自动 CSI 迁移已正式发布
从 OpenShift Container Platform 4.8 开始,在树内卷插件自动迁移到对应的 Container Storage Interface(CSI)驱动程序作为技术预览。OpenShift Container Platform 4.8 中提供了对 Cinder 的支持,OpenShift Container Platform 4.11 支持 Cinder 自动迁移(GA)。现在,Cinder 的 CSI 迁移会被默认启用,且管理员不需要操作。
这个功能会自动将树内对象转换为对应的 CSI 表示,并对用户完全透明。翻译的对象不存储在磁盘上,用户数据不会迁移。
虽然引用 in-tree 存储插件的存储类将继续工作,但我们建议将默认存储类切换到 CSI 存储类。
如需更多信息,请参阅 CSI 自动迁移。
1.3.10.3. 正式发布 Microsoft Azure Disk 的自动 CSI 迁移
从 OpenShift Container Platform 4.8 开始,在树内卷插件自动迁移到对应的 Container Storage Interface(CSI)驱动程序作为技术预览。OpenShift Container Platform 4.9 提供了对 Azure Disk 的支持,OpenShift Container Platform 4.11 现在支持对 Azure Disk 进行自动迁移(GA)。现在,Azure Disk 的 CSI 迁移会被默认启用,且管理员不需要操作。
这个功能会自动将树内对象转换为对应的 CSI 表示,并对用户完全透明。翻译的对象不存储在磁盘上,用户数据不会迁移。
虽然引用 in-tree 存储插件的存储类将继续工作,但我们建议将默认存储类切换到 CSI 存储类。
如需更多信息,请参阅 CSI 自动迁移。
1.3.10.4. 扩展 CSI 卷正式发布
从 OpenShift Container Platform 4.3 开始,在创建了 Container Storage Interface(CSI)存储卷后扩展它们作为技术预览功能,现在在 OpenShift Container Platform 4.11 中正式发布。
如需更多信息,请参阅扩展 CSI 卷。
1.3.10.5. 对 CSI 通用临时卷的支持已正式发布
OpenShift Container Platform 4.11 支持 Container Storage Interface(CSI)通用临时卷(GA)。通用临时卷是临时卷类型,可以由所有存储驱动程序提供,同时支持持久卷和动态置备。
如需更多信息,请参阅通用临时卷。
1.3.10.6. VMware vSphere 支持调整大小和快照
OpenShift Container Platform 4.11 支持 vSphere Container Storage Interface(CSI)Driver Operator 的卷大小和快照,其限制如下:
快照:
- 需要 vSphere 版本 7.0 更新 3 或更高版本,但不支持包括版本 8.v 8 版本。vCenter Server 和 ESXi 不支持。
- 不支持 fileshare 卷。
调整大小:
- 离线卷扩展:最低所需的 vSphere 版本为 6.7 更新 3 P06
- 在线卷扩展:最低的 vSphere 版本为 7.0 更新 2。
如需更多信息,请参阅 OpenShift Container Platform 支持的 CSI 驱动程序。
1.3.11. 容器镜像仓库(Registry)
1.3.11.1. Image Registry Operator 在可用区间分布
Image Registry Operator 的默认配置现在将镜像 registry pod 分散到拓扑区中,以防止在完全区失败时造成延迟恢复时间,因为所有 pod 都会受到影响。
如需更多信息,请参阅 在在可用区间分布 Image Registry Operator。
1.3.11.2. Red Hat OpenShift Data Foundation registry 存储
OpenShift Container Platform 4.11 支持的 Red Hat OpenShift Data Foundation registry 存储。
OpenShift Data Foundation 集成了可与内部镜像 registry 搭配使用的多个存储类型,其中包括:
- Ceph,这是具有内部对象存储的共享和分布式文件系统
- NooBaa,它提供多云对象网关
1.3.12. Operator 生命周期
1.3.12.1. 基于文件的目录格式
基于文件的目录格式的 OpenShift Container Platform 4.11 的默认红帽提供的 Operator 目录。OpenShift Container Platform 4.6 到 4.10 以 SQLite 数据库格式发布。基于文件的目录是 Operator Lifecycle Manager (OLM) 中目录格式的最新迭代。它是 JSON 或 YAML 中的纯文本文件,是早期 SQLite 数据库格式的声明性配置演进。集群管理员和用户不会看到通过新的目录格式安装工作流和 Operator 消耗的任何更改。
如需更多信息,请参阅基于文件的目录。
1.3.13. Operator 开发
1.3.13.1. 基于 Java 的 Operator(技术预览)
从 OpenShift Container Platform 4.11 作为技术预览功能开始,Operator SDK 包含了用于开发基于 Java 的 Operator 的工具和库。Operator 开发人员可以利用 Operator SDK 中的 Java 编程语言支持来构建基于 Java 的 Operator 并管理其生命周期。
如需更多信息,请参阅开始使用基于 Java 的 Operator 的 Operator SDK。
1.3.13.2. 基于文件的目录的 Operator SDK 支持
自 OpenShift Container Platform 4.11 起,run bundle
命令默认支持 Operator 目录基于文件的目录格式。Operator 目录已弃用的 SQLite 数据库格式仍被支持,但将在以后的发行版本中删除。
如需更多信息,请参阅使用捆绑包镜像。
1.3.13.3. 验证 Operator 捆绑包
作为 Operator 作者,您可以在 Operator SDK 中运行 bundle validate
命令来验证 Operator 捆绑包的内容和格式。除了默认测试外,您还可以运行可选的验证器来测试捆绑包中的问题,如空 CRD 描述或不支持的 Operator Lifecycle Manager(OLM)资源。
如需更多信息,请参阅验证 Operator 捆绑包。在早期版本的 OpenShift Container Platform 中,Performance Addon Operator 为应用程序提供了自动、低延迟的性能调整。在 OpenShift Container Platform 4.11 中,这些功能是 Node Tuning Operator 的一部分。Node Tuning Operator 是 OpenShift Container Platform 4.11 的标准安装的一部分。如果您升级到 OpenShift Container Platform 4.11,Node Tuning Operator 会在启动时删除 Performance Addon Operator 以及所有相关的工件。
如需更多信息,请参阅 Node Tuning Operator。
1.3.14. Jenkins
-
此增强添加了一个新的 Jenkins 环境变量
JAVA_FIPS_OPTIONS
,用于控制 JVM 在 FIPS 节点上运行。如需更多信息,请参阅 OpenJDK 支持文章 (BZ#2066019)
1.3.15. 机器 API
1.3.15.1. Amazon EC2 实例元数据服务的配置选项
现在,您可以使用机器集创建使用 Amazon EC2 实例元数据服务 (IMDS) 的特定版本的计算机器。机器集可以创建允许使用 IMDSv1 和 IMDSv2 的计算机器或需要使用 IMDSv2 的计算机器。
如需更多信息,请参阅 Amazon EC2 实例元数据服务的机器设置选项。
1.3.15.2. Azureultra 磁盘的机器 API 支持
现在,您可以创建一个在 Azure 上运行的机器集,该机器集使用 ultra 磁盘部署机器。您可以将大量磁盘的机器部署为数据磁盘,也可以使用 in-tree 或 Container Storage Interface(CSI) PVC 的持久性卷声明(PVC)。
如需更多信息,请参阅以下主题:
1.3.15.3. Google Cloud Platform 持久磁盘类型的配置选项
现在支持 Google Cloud Platform(GCP)Compute Engine 的 pd-balanced
持久磁盘类型。如需更多信息,请参阅使用机器集配置持久性磁盘类型。
1.3.15.4. Nutanix 集群的机器 API 支持
对 Nutanix 集群的新平台支持包括使用 Machine API 机器集管理机器的功能。如需更多信息,请参阅在 Nutanix 上创建机器集。
1.3.15.5. 使用集群 API 管理虚拟机(技术预览)
OpenShift Container Platform 4.11 引进了使用上游 Cluster API(集成到 OpenShift Container Platform)作为 AWS 和 GCP 集群的技术预览来管理机器的功能。这个功能是使用 Machine API 管理机器的补充或替代功能。如需更多信息,请参阅使用集群 API 管理虚拟机。
1.3.16. Machine Config Operator
1.3.16.1. MCO 现在根据区和年龄更新节点
Machine Config Operator(MCO)现在根据 topology.kubernetes.io/zone
标签按区按字母顺序更新受影响的节点。如果一个区域有多个节点,则首先更新最旧的节点。对于不使用区的节点,如裸机部署中的节点,节点会按使用的时间升级,首先更新最旧的节点。在以前的版本中,MCO 不会考虑区或节点年龄。
如需更多信息,请参阅机器配置概述。
1.3.16.2. 增强在证书续订时暂停的机器配置池的通知
现在,如果 MCO 试图在机器配置池(MCP)上更新已过期的 kube-apiserver-to-kubelet-signer
CA 证书,您现在会收到 OpenShift Container Platform Web 控制台的 Alerting UI 中的警报。如果 MCP 暂停,MCO 无法将新轮转的证书推送到这些节点,这会导致失败。
如需更多信息,请参阅暂停机器配置池。
1.3.17. 节点
1.3.17.1. self Node Remediation Operator 替换 Poison Pill Operator
OpenShift Container Platform 4.11 引入了可替代 Poison Pill Operator 的 Self Node Remediation Operator。
Self Node Remediation Operator 提供了以下改进:
- 根据补救策略引进单独的补救模板。
- 如果补救失败,捕获最后的错误消息。
- 通过提供参数的最小值,改进自助服务修复 Operator 配置参数的指标。
如需更多信息,请参阅使用自助节点修复 Operator 修复节点。
1.3.17.2. 单节点 OpenShift 集群的 worker 节点
现在,您可以将 worker 节点添加到单节点 OpenShift 集群。这在需要向集群添加额外的容量时,在资源有约束的环境中部署或网络边缘部署非常有用。
如需更多信息,请参阅用于单节点 OpenShift 集群的 Worker 节点。
1.3.17.3. descheduler 现在会默认模拟 pod 驱除
默认情况下,descheduler 现在以预测模式运行,这意味着它只模拟 pod 驱除。您可以查看 descheduler 指标来查看要被驱除的 pod 的详情。
要驱除 pod 而不是模拟驱除,将 descheduler 模式改为自动。
如需更多信息,请参阅使用 descheduler 驱除 pod。
1.3.17.4. 新的 descheduler 自定义
此发行版本为 descheduler 引进了以下自定义:
-
priority threshold 过滤:按类名称(
thresholdPriorityClassName
)或数值(thresholdPriority
)设置优先级阈值,而不是驱除优先级等于或大于该值的 pod。 -
命名空间过滤:设置用户创建命名空间列表,以便从 descheduler 操作中包含或排除。请注意,受保护的命名空间(
openshift-*
、kube-system
、overshift
)始终被排除。 -
LowNodeUtilization
策略的阈值:为利用不足并为LowNodeUtilization
策略设置实验性阈值。
如需更多信息,请参阅使用 descheduler 驱除 pod。
1.3.17.5. 节点维护 Operator 的改进
Node Maintenance Operator 提供以下改进:
-
现在,针对
NodeMaintenance
CR 任务的状态提供了额外的反馈、ddrainProgress
和lastUpdate
。 - 对于使用裸机节点的集群,现在可在 web 控制台中使用简单的方法将节点置于维护模式,并从维护模式恢复节点。
如需更多信息,请参阅使用 Node Maintenance Operator 将节点设置为维护模式。
1.3.18. 日志记录
1.3.18.1. RHV Logging 上的 Red Hat OpenShift(技术预览)
OpenShift Container Platform 4.11 为 RHV API 引入了一个新的连接器,它为集群中的所有安装和 oVirt 组件添加了自动日志消息。
1.3.19. 监控
此版本的监控堆栈包括以下新功能和修改后的功能。
1.3.19.1. 监控堆栈组件和依赖项更新
监控堆栈组件和依赖项的更新包括:
- Alertmanager 更新到 0.24.0
- kube-state-metrics 更新到 2.5.0
- Prometheus 更新到 2.36.2
- Prometheus operator 更新到 0.57.0
- Thanos 更新到 0.26.0
1.3.19.2. 对警报规则的更改
红帽不保证记录规则或警报规则的向后兼容性。
New
-
添加了
KubePersistentVolumeInodesFillingUp
警报,它与现有KubePersistentVolumeFillingUp
警报类似,但应用到内节点,而不是卷空间。 -
添加了
PrometheusScrapeBodySizeLimitHit
警报,以检测目标达到正文大小限制。 -
添加了
PrometheusScrapeSampleLimitHit
警报以检测目标达到示例限制。
-
添加了
已更改
-
修复了
KubeDaemonSetRolloutStuck
警报,以使用kube-state-metrics
中的更新指标kube_daemonset_status_updated_number_scheduled
。 -
将
KubeJobCompletion
警报替换为KubeJobNotCompleted
。新的KubeJobNotCompleted
警报可以避免,当一个早期的作业失败但大多数当前的作业都成功的情况下产生假的正状态。 -
更新了
NodeNetworkInterfaceFlapping
警报,以便从警报表达式中排除tunbr
接口。
-
修复了
1.3.19.3. 为用户工作负载监控启用警报路由
集群管理员现在可以为用户工作负载监控启用警报路由,以便开发人员和其他用户能够为其用户定义的项目配置自定义警报和警报路由。
1.3.19.4. 为用户定义的警报启用专用 Alertmanager 实例
现在,您可以选择启用一个单独的 Alertmanager 实例,专门用于为用户定义的项目发送警报。这个功能可以帮助减少默认平台 Alertmanager 实例上的负载,并可更好地将用户定义的警报与默认平台警报分开。
1.3.19.5. 对远程写入配置使用额外的验证设置
现在,您可以使用以下身份验证方法访问远程写端点:AWS Signature Version 4、自定义授权标头和 OAuth 2.0。在此版本之前,您只能使用 TLS 客户端和基本身份验证。
1.3.19.6. 在 web 控制台中更轻松地创建、浏览和管理 PromQL 查询
OpenShift Container Platform Web 控制台的 Observe → Metrics 页面中的 Query Browser 增加了各种改进,以改进您在创建、浏览和管理 PromQL 查询的功能。例如,管理员现在可以在构建和编辑查询时复制现有的查询并使用自动完成建议。
1.3.19.7. 在单一节点部署中为 ServiceMonitor 加倍的提取间隔
在单节点 OpenShift Container Platform 部署中,所有由 Cluster Monitoring Operator(CMO)控制的 ServiceMonitor 都重复提取间隔。现在,最大间隔为两分钟。
1.3.19.8. 基于平台监控指标创建警报规则(技术预览)
此发行版本引入了一个技术预览功能,管理员可基于现有平台监控指标创建警报规则。此功能可帮助管理员更快、更轻松地创建特定于其环境的新警报规则。
1.3.19.9. 将集群 ID 标签添加到远程写入存储中
现在,您可以在发送到远程写入存储的指标中添加集群 ID 标签。然后,您可以查询这些标签来标识指标的源集群,并区分与其他集群发送的类似指标数据的数据。
1.3.19.10. 使用联邦端点为用户工作负载监控查询指标
现在,您可以使用 Prometheus /federate
端点从集群外的网络位置提取用户定义的指标。在此版本前,您只能访问联邦端点,以便在默认平台监控中提取指标。
1.3.19.11. 为默认平台监控启用指标提取的正文大小限制
现在,您可以为默认平台监控设置 enforcedBodySizeLimit
配置映射选项,以启用指标提取的正文大小限制。当至少有一个 Prometheus 刮除提取目标回复带有的响应正文大于配置的 enforcedBodySizeLimit
时,此设置会触发新的 PrometheusScrapeBodySizeLimitHit
警报。此设置可以限制一个恶意目标可在整个集群中对 Prometheus 组件和集群上产生的影响。
1.3.19.12. 为指标存储配置保留大小设置
现在,您可以为默认平台监控和用户工作负载监控配置保留的 metrics 存储的最大磁盘空间量。在此发行版本中,您无法配置此设置。
1.3.19.13. 在用户定义的项目中为 Thanos Ruler 配置保留周期
现在,您可以为用户定义的项目中的 Thanos Ruler 数据配置保留时间周期。在此版本之前,您无法更改默认值 24h
。
1.3.20. Network Observability Operator
现在,您可以安装 Network Observability Operator 来在控制台中观察 OpenShift Container Platform 集群的网络流量。您可以使用不同的图形表示来查看和监控网络流量数据。Network Observability Operator 使用 eBPF 技术来创建网络流。网络流包括了 OpenShift Container Platform 的信息并存储在 Loki 中。您可以使用网络流量信息来详细地进行故障排除和分析。
如需更多信息,请参阅 Network Observability。
1.3.21. 可伸缩性和性能
1.3.21.1. Node Tuning Operator 的工作负载提示
OpenShift Container Platform 4.11 支持对 Node Tuning Operator 的提示机制,它可以微调 PerformanceProfile
以满足不同行业标准的需求。在本发行版本中,工作负载提示可用于 highPowerConsumption
(非常低的延迟,但会增加功耗的成本),以及 realtime
(实现最佳延迟具有高优先级)。对于这些提示使用 true/false 设置的组合来处理特定于应用程序的工作负载配置文件和要求。
1.3.21.2. etcd 集群的扩展操作增强
Raft 算法允许使用新 learner
状态扩展 etcd 成员。因此,维护集群仲裁、添加和删除新成员,并在不影响集群操作的情况下提升 learner
。
OpenShift Container Platform 4.11 引进了 imageStorage
选项,作为 AgentServiceConfig
自定义资源的一部分。此选项允许用户指定用于镜像服务的持久性存储声明详情,从而提高了应用程序性能。
ClusterImageSet
自定义资源的 releaseImage
参数现在支持操作系统镜像版本标识。发现 ISO 基于操作系统镜像版本,作为 releaseImage,或者在指定的版本不可用时基于最新版本。
AgentServiceConfig
自定义资源(CR)的 openshiftVersion
参数现在支持 "x.y"(major.minor)或 "x.y.z"(major.minor.patch)格式。
1.3.21.3. 配置 Ingress Controller(路由器)存活度、就绪度和启动探测
OpenShift Container Platform 4.11 引入了为 kubelet 的存活度、就绪度和启动探测(由 OpenShift Container Platform ingress Operator 管理的路由器部署)配置超时值的功能。与较短的默认 1 秒超时相比,设置较大的超时值可以降低不必要的和非预期的重启风险。
如需更多信息,请参阅配置 Ingress Controller(路由器)存活度、就绪度和启动探测
1.3.21.4. 新的电源缩减 CPU 功能
您可以通过在性能配置集中的 offlined
字段中指定 CPU,通过 Node Tuning Operator 减少功耗。如需更多信息,请参阅通过使 CPU 离线来降低功耗。
1.3.21.5. Node Observability Operator(技术预览)
OpenShift Container Platform 4.11 在技术预览中引入了 Node Observability Operator。
Node Observability Operator 提供了以下功能:
- 在 worker 节点上部署节点 Observability 代理。
- 触发 CRIO-O 和 Kubelet 分析。
- 使性能分析数据文件可用于进一步分析。
如需更多信息,请参阅使用 Node Observability Operator 请求 CRI-O 和 Kubelet 分析数据。
1.3.21.6. Performance Addon Operator 的功能现在包括在 Node Tuning Operator 中
在早期版本的 OpenShift Container Platform 中,Performance Addon Operator 为应用程序提供了自动、低延迟的性能调整。在 OpenShift Container Platform 4.11 中,这些功能是 Node Tuning Operator 的一部分。Node Tuning Operator 是 OpenShift Container Platform 4.11 的标准安装的一部分。如果您升级到 OpenShift Container Platform 4.11,Node Tuning Operator 会在启动时删除 Performance Addon Operator 以及所有相关的工件。
如需更多信息,请参阅 Node Tuning Operator。
当使用 Performance Profile Creator 运行 must-gather
命令时,仍必须使用 performance-addon-operator-must-gather
镜像。如需更多信息,请参阅使用 must-gather 收集有关集群的数据
1.3.21.7. 低延迟调整文档更新
在 OpenShift Container Platform 的早期版本中,低延迟调整的文档包括了对 Performance Addon Operator 的引用。因为 Node Tuning Operator 现在提供低延迟调整,所以文档标题从 "Performance Addon Operator for low latency nodes" 改为 "Low latency tuning",并相应地更新对本文档的多个跨引用。如需更多信息,请参阅延迟调整。
1.3.21.8. hub 和 spoke 集群的支持
对于定制集群需要树外驱动程序支持的 hub 和 spoke 部署,您可以使用 hub 集群中部署的 Special Resource Operator(SRO)来管理将所需的内核模块部署到一个或多个受管集群。这使用 Red Hat Advanced Cluster Management(RHACM),不再需要使用 Node Feature Discovery(NFD)。如需更多信息,请参阅为 hub-and-spoke 拓扑构建并运行 simple-kmod SpecialResource。
1.3.21.9. 增强的 SRO 集群升级支持
当升级要管理特殊资源的集群时,您可以运行预升级自定义资源,以验证是否存在新的驱动程序容器来支持内核更新。这有助于避免对受管特殊资源造成混乱。当前还没有这个功能的文档,它们将在以后发布。
1.3.21.10. 增强的 SRO 的调试和日志记录
Special Resource Operator(SRO)包含一致的日志输出格式,它更详细地用于故障排除。
1.3.21.11. 支持外部 registry
在此次更新之前,SRO 不支持在断开连接的环境中连接到 registry。此发行版本支持将驱动程序容器托管在 OpenShift Container Platform 集群之外的 registry 中的断开连接的环境。
1.3.22. Insights Operator
1.3.22.1. 深入了解 Operator 数据收集功能的增强
在 OpenShift Container Platform 4.11 中,Insights Operator 会收集以下额外信息:
-
images.config.openshift.io
资源定义 -
当存在
"Internal error occurred: error resolving resource"
或"syncing garbage collector with updated resources from discovery"
错误信息时,kube-controller-manager
容器会进行日志 -
storageclusters.ocs.openshift.io/v1
资源
通过这些附加信息,红帽改进了 OpenShift Container Platform 功能并增强了 Insights Advisor 建议。
1.3.23. 认证和授权
1.3.23.1. 其他支持的 OIDC 供应商
现在,OpenShift Container Platform 测试并支持以下 OpenID Connect(OIDC)供应商:
Active Directory Federation Services for Windows Server
注意目前,在使用自定义声明时,不支持将 Active Directory Federation Services for Windows Server 用于 OpenShift Container Platform。
Microsoft 身份平台(Azure Active Directory v2.0)
注意目前,当需要同步组名称时,不支持使用 Microsoft 身份平台。
有关 OIDC 供应商的完整列表,请参阅支持的 OIDC 供应商。
1.3.23.2. Pod 安全准入
现在,OpenShift Container Platform 上启用了 Pod 安全准入。
Pod 准入由 Pod 安全和安全性上下文约束 (SCC) 准入来实施。Pod 安全准入在全局范围内运行,并带有 privileged
强制和 restricted
审计日志记录和 API 警告。
控制器监控用户创建的命名空间中的服务帐户的 SCC 相关的权限,并使用 pod 安全准入 warn
和 audit
标签自动标记这些命名空间。
为了根据 restricted
pod 安全配置集提高工作负载安全性,这个版本引入了根据新的 Pod 安全准入控制来强制使用 Pod 安全性的 SCC。这些 SCC 为:
-
restricted-v2
-
hostnetwork-v2
-
nonroot-v2
它们与旧的、类似命名的 SCC 相对应,但有以下改进:
-
ALL
能力会从容器中丢弃。在以前的版本中,只有KILL
、MKNOD
、SETUID
和SETGID
能力会被丢弃。 -
NET_BIND_SERVICE
功能现在可以明确添加。 -
如果未设置,则
seccompProfile
默认为runtime/default
。在以前的版本中,此字段必须为空。 -
在安全上下文中,需要取消设置
allowPrivilegeEscalation
或将其设为false
。在以前的版本中,允许true
值。
在 OpenShift Container Platform 4.11 中,对于新安装,用户被授予的 SCC 默认是 restricted-v2
,而不是 restricted
SCC。在新集群中,restricted-v2
SCC 用于任何经过身份验证的用户(取代了 restricted
SCC)。restricted
SCC 不再可供新集群用户使用,除非访问权限被明确授予。在最初在 OpenShift Container Platform 4.10 或更早版本安装的集群中,所有经过身份验证的用户都可以在升级到 OpenShift Container Platform 4.11 及之后的版本时使用 restricted
SCC。这会把 OpenShift Container Platform 的默认安全权限保留为 secure-default,并与上游 Kubernetes 项目的 pod 安全准入和 pod 安全标准保持一致,同时保持升级的集群的权限与之前的状态一致。
您可以为大多数命名空间启用同步,并为所有命名空间禁用同步。
在本发行版本中,带有 openshift-
前缀的命名空间没有限制强制。计划将把此类命名空间的受限实施包含在未来的版本中。
如需更多信息,请参阅了解和管理 pod 安全准入。
1.4. 主要的技术变化
OpenShift Container Platform 4.11 包括以下显著的技术更改。
Network Observability operator 用于观察网络流
Network Observability Operator 在 OpenShift Container Platform 4.12 发行版本中是 General Availability (GA),它也在 OpenShift Container Platform 4.11 中被支持。
如需更多信息,请参阅 Network Observability。
更新为设置路由器负载平衡算法的默认值
haproxy.router.openshift.io/balance
变量设置路由器负载平衡算法,现在默认为 random
,而不是 leastconn
。如需更多信息,请参阅特定于路由的注解。
LegacyServiceAccountTokenNoAutoGeneration 默认为 on
在以前的版本中,当创建服务帐户时会生成两个服务帐户令牌 secret:
- 用于向 OpenShift Container Platform 内部 registry 进行身份验证的服务帐户令牌 secret
- 用于访问 Kubernetes API 的服务帐户令牌 secret
从 OpenShift Container Platform 4.11 开始,不再创建用于访问 Kubernetes API 的第二个服务帐户令牌 secret。这是因为在 Kubernetes 1.24 中启用了 LegacyServiceAccountTokenNoAutoGeneration
上游 Kubernetes 功能门,这会停止自动生成基于 secret 的服务帐户令牌来访问 Kubernetes API。升级到 OpenShift Container Platform 4.11 后,任何现有服务帐户令牌 secret 都不会被删除,并可以继续正常工作。
不要依赖于这些自动生成的 secret 以供您自己使用;它们可能会在以后的 OpenShift Container Platform 发行版本中删除。
工作负载自动注入投射卷以获取绑定服务帐户令牌。如果您的工作负载需要额外的服务帐户令牌,请在工作负载清单中添加额外的投射卷。如需更多信息,请参阅使用绑定服务帐户令牌。
如果您可以接受在一个可读的 API 对象暴露没有过期的令牌,您也可以手动创建服务帐户令牌 secret 来获取令牌。如需更多信息,请参阅创建服务帐户令牌 secret。
Operator SDK 1.22.2
OpenShift Container Platform 4.11 支持 Operator SDK 1.22.2。请参阅安装 Operator SDK CLI 来安装或更新到这个最新版本。
Operator SDK 1.22.2 支持 Kubernetes 1.24。
如果您之前使用 Operator SDK 1.16.0 创建或维护的 Operator 项目,更新您的项目以保持与 Operator SDK 1.22.2 的兼容性。
集群 Operator 不再被称为平台 Operator
在以前的 OpenShift Container Platform 文档,集群 Operator 有时也被称为 "platform Operators"。这可能在讨论此类 Operator 时会造成混淆。现在,在引用集群 Operator (由 ClusterOperator
API 对象表示)时不再使用术语 "platform Operator" 。现在,为 OpenShift Container Platform 4.11 及更早的版本设置了相关文档,现在只会使用 "cluster Operator"。
例如,请参阅 Cluster Operator 引用。
1.5. 弃用和删除的功能
之前版本中的一些功能已被弃用或删除。
弃用的功能仍然包含在 OpenShift Container Platform 中,并将继续被支持。但是,这个功能会在以后的发行版本中被删除,且不建议在新的部署中使用。有关 OpenShift Container Platform 4.11 中已弃用并删除的主要功能的最新列表,请参考下表。表后列出了更多已弃用和删除的功能的更多详细信息。
在下表中,被标记为以下状态的功能:
- GA: 正式发行
- DEP: 已弃用
- REM: 删除
功能 | OCP 4.9 | OCP 4.10 | OCP 4.11 |
---|---|---|---|
Operator 目录的 SQLite 数据库格式 | DEP | DEP | DEP |
Cluster Samples Operator 的 | DEP | DEP | DEP |
Cluster Samples Operator 的 | DEP | DEP | DEP |
Cluster Loader | DEP | REM | REM |
使用自己的 RHEL 7 计算机器 | DEP | REM | REM |
Jenkins Operator | DEP | REM | REM |
监控堆栈中的 Grafana 组件 | - | DEP | REM |
访问监控堆栈中的 Prometheus 和 Grafana UI | DEP | REM | |
vSphere 6.7 更新 2 或更早版本 | DEP | DEP | REM |
vSphere 7.0 Update 1 或更早版本 | - | - | DEP |
虚拟硬件版本 13 | DEP | DEP | REM |
VMware ESXi 6.7 更新 2 或更早版本 | DEP | DEP | REM |
VMware ESXi 7.0 Update 1 或更早版本 | - | - | DEP |
Snapshot.storage.k8s.io/v1beta1 API 端点 | DEP | DEP | REM |
Microsoft Azure 集群的 Mint 凭证 | GA | REM | REM |
使用 FlexVolume 的持久性存储 | - | DEP | DEP |
自动生成服务帐户令牌 secret | GA | GA | REM |
从安装有效负载中删除 Jenkins 镜像 | GA | GA | REM |
多集群控制台(技术预览) | - | REM | REM |
1.5.1. 已弃用的功能
1.5.1.1. 用于请求令牌的 OpenShift CLI (oc) 命令和标志已弃用
以下用于请求令牌的 oc
命令和标志现已弃用:
-
oc serviceaccounts create-kubeconfig
命令 -
oc serviceaccounts get-token
命令 -
oc serviceaccounts new-token
命令 -
oc registry login
命令的--service-account/-z
标志
使用 oc create token
命令来请求令牌。
1.5.1.2. Red Hat Virtualization(RHV)作为 OpenShift Container Platform 的主机平台已弃用
即将推出的 OpenShift Container Platform 版本中将弃用 Red Hat Virtualization(RHV)。对 RHV 上的 OpenShift Container Platform 的支持将在未来的 OpenShift Container Platform 版本中删除,目前还计划为从 OpenShift Container Platform 4.14 开始删除。
1.5.1.3. 对 vSphere 7.0 Update 1 更早版本的支持已弃用
在 OpenShift Container Platform 4.11 中,对 VMware vSphere 7.0 Update 1 或更早版本的支持已被弃用。虽然 vSphere 7.0 Update 1 或更早版本被完全支持,但红帽建议您使用 vSphere 7.0 Update 2 或更高版本,但不支持包括版本 8. vSphere 8。
1.5.1.4. 对 ESXi 7.0 Update 1 或更早版本的支持已弃用
在 OpenShift Container Platform 4.11 中,对 VMware ESXi 7.0 Update 1 或更早版本的支持已被弃用。虽然 EXSi 7.0 Update 1 或更早版本被完全支持,但红帽建议您使用 ESXi 7.0 Update 2 或更高版本。
1.5.1.5. 对 pidsLimit
和 logSizeMax
CRI-O 参数的支持将被弃用
在 OpenShift Container Platform 4.11 中,ContainerRuntimeConfig
CR 中的 pidsLimit
和 logSizeMax
字段将在以后的版本中被弃用并删除。在 KubeletConfig
CR 中使用 podPidsLimit
和 containerLogMaxSize
字段。podPidsLimit
字段的默认值为 4096
。
1.5.2. 删除的功能
1.5.2.1. 删除了对 OpenShift CLI (oc) 的 RHEL 7 支持
删除了在 OpenShift CLI (oc
) 中使用 Red Hat Enterprise Linux (RHEL) 7 的支持。如果您在 RHEL 中使用 OpenShift CLI (oc
),则必须使用 RHEL 8 或更高版本。
1.5.2.2. OpenShift CLI (oc) 命令已被删除
本发行版本中删除了以下 OpenShift CLI(oc
)命令:
-
oc adm migrate etcd-ttl
-
oc adm migrate image-references
-
oc adm migrate legacy-hpa
-
oc adm migrate storage
1.5.2.3. 从监控堆栈中删除的 Grafana 组件
Grafana 组件不再是 OpenShift Container Platform 4.11 监控堆栈的一部分。另外,也可进入 OpenShift Container Platform Web 控制台中的 Observe → Dashboards 来查看监控仪表板。
1.5.2.4. Prometheus 和 Grafana 用户界面访问从监控堆栈中删除
从 OpenShift Container Platform 4.11 监控堆栈中删除了对第三方 Prometheus 和 Grafana 用户界面的访问。另外,点 OpenShift Container Platform Web 控制台中的 Observe 来查看用于监控组件的警报、指标、仪表板和指标目标。
1.5.2.5. 删除了对虚拟硬件版本 13 的支持
在 OpenShift Container Platform 4.11 中,删除了对虚拟硬件版本 13 的支持。OpenShift Container Platform 4.9 中弃用了对虚拟硬件版本 13 的支持。红帽建议您使用虚拟硬件版本 15 或更高版本。
1.5.2.6. 对 vSphere 6.7 Update 2 或更早版本的支持
在 OpenShift Container Platform 4.11 中,删除了对 VMware vSphere 6.7 Update 2 或更早版本的支持。OpenShift Container Platform 4.9 中已弃用对 vSphere 6.7 Update 2 或更早版本的支持。红帽建议您使用 vSphere 7.0 Update 2 或更高版本,但不支持包括版本 8. vSphere 8。
1.5.2.7. 对 ESXi 6.7 Update 2 或更早版本的支持已删除
在 OpenShift Container Platform 4.11 中,删除了对 VMware ESXi 6.7 Update 2 或更早版本的支持。OpenShift Container Platform 4.10 中已弃用对 ESXi 6.7 Update 2 或更早版本的支持。红帽建议您使用 ESXi 7.0 Update 2 或更高版本。
1.5.2.8. 删除了对 snapshot v1beta1 API 端点的支持
在 OpenShift Container Platform 4.11 中,删除了 snapshot.storage.k8s.io/v1beta1
API 端点的支持。OpenShift Container Platform 4.7 中弃用了对 snapshot.storage.k8s.io/v1beta1
API 端点的支持。红帽建议您使用 snapshot.storage.k8s.io/v1
。所有以 v1beta1
创建的对象都可通过 v1 端点获得。
1.5.2.9. 删除了手动部署自定义调度程序的支持
此发行版本删除了手动部署自定义调度程序的支持。使用 Red Hat OpenShift 的 Secondary Scheduler Operator 代替在 OpenShift Container Platform 中部署自定义二级调度程序。
1.5.2.10. 删除了对使用 OpenShiftSDN 部署单节点 OpenShift 的支持
此发行版本删除了部署带有 OpenShiftSDN 的单节点 OpenShift 集群的支持。OVN-Kubernetes 是单节点 OpenShift 部署的默认网络解决方案。
1.5.2.11. 从安装有效负载中删除 Jenkins 镜像
-
OpenShift Container Platform 4.11 将 "OpenShift Jenkins" 和 "OpenShift Agent Base" 镜像移到
registry.redhat.io
的ocp-tools-4
存储库中,以便红帽可以在 OpenShift Container Platform 生命周期外生成和更新镜像。在以前的版本中,这些镜像位于 OpenShift Container Platform 安装有效负载以及registry.redhat.io
的openshift4
存储库中。如需更多信息,请参阅 OpenShift Jenkins。 OpenShift Container Platform 4.11 从其有效负载中删除 "OpenShift Jenkins Maven" 和 "NodeJS Agent" 镜像。在以前的版本中,OpenShift Container Platform 4.10 弃用了这些镜像。红帽不再生成这些镜像,它们不能从
registry.redhat.io
的ocp-tools-4
存储库中提供。但是,升级到 OpenShift Container Platform 4.11 不会从 4.10 及更早的版本中删除 "OpenShift Jenkins Maven" 和 "NodeJS Agent" 镜像。红帽根据 OpenShift Container Platform 生命周期政策,通过 4.10 发行版本生命周期结束为这些镜像提供程序错误修正和支持。
如需更多信息,请参阅 OpenShift Jenkins。
1.5.3. 将来的 Kubernetes API 删除
OpenShift Container Platform 的下一个次版本应该使用 Kubernetes 1.25。目前,Kubernetes 1.25 被调度以删除几个已弃用的 v1beta1
和 v2beta1
API。
有关删除计划的 Kubernetes API 列表,请参阅上游 Kubernetes 文档中的已弃用 API 迁移指南。
如需了解如何检查集群是否有 Kubernetes API 进行删除的信息,请参阅浏览启用和删除的 Kubernetes API。
1.6. 程序错误修复
裸机硬件置备
-
在以前的版本中,当将 RHCOS 镜像写入一些磁盘时,
qemu-img
将空间分配给整个磁盘,包括稀疏区域。这延长了在某些硬件上写入进程的时间。在这个版本中,禁用镜像创建中的qemu-img
稀疏。因此,在受影响的硬件上镜像写入将不再需要很长时间。(BZ#2002009) -
在以前的版本中,如果为
RootDeviceHints
设置rotational
字段,则主机可能会失败。在这个版本中,RootDeviceHints
中的rotational
字段会被正确复制并被检查。因此,在使用rotational
字段时置备会成功。(BZ#2053721) 在以前的版本中,Ironic 无法使用虚拟介质置备 Nokia OE 20 服务器,因为 BMC 需要在请求中明确设置
TransferProtocolType
属性,尽管这是可选属性。另外,BMC 还需要使用一个专用的RedFish
设置资源来覆盖引导订购,而大多数 BMC 只是使用system
资源。发生此错误的原因是,Nokia OE 20 严格要求 vMedia 附加一个可选的TransferProtocolType
属性,且需要使用RedFish
设置资源来覆盖引导序列。因此,基于虚拟介质的置备会在 Nokia OE 20 上会失败。这个问题有两个临时解决方案:-
当 vMedia 附加请求失败时,出现错误表示缺少
TransferProtocolType
属性,请重试请求并明确指定此属性。 - 检查系统中是否存在 RedFish 设置资源。如果存在,请将其用于引导序列覆盖。
因此,基于虚拟介质的置备会在 Nokia OE 20 机器上成功。(BZ#2059567)
-
当 vMedia 附加请求失败时,出现错误表示缺少
- 在以前的版本中,在使用 OpenShift Container Platform 裸机 IPI 部署时,Ironic API 检查器镜像无法清理属于被动多路径设置一部分的磁盘。在这个版本中,当使用主动或被动存储阵列时,会失败。现在,当客户想使用主动或被动的多路径设置时,可以使用 OpenShift Container Platform 裸机 IPI。(BZ#2089309)
-
在以前的版本中,Ironic 无法将
wwn
序列号与多路径设备匹配。因此,在install-config.yaml
配置文件中的rootDeviceHint
参数中无法使用wwn
的序列号。在这个版本中,Ironic 会识别wwn
序列号作为多路径设备的唯一标识符。作为结果,现在可以为install-config.yaml
文件为设备 mapper 设备使用wwn
序列号。(BZ#2098392) - 在此次更新之前,当 Redfish 系统具有 Settings URI 时,Ironic 置备服务总是尝试使用此 URI 来更改引导相关的 BIOS 设置。但是,如果 Baseboard Management Controller (BMC) 带有 Settings URI,但不支持使用此设置 URI 更改特定的 BIOS 设置,裸机置备会失败。在 OpenShift Container Platform 4.11 及更高版本中,如果系统具有 Settings URI,Ironic 会在继续操作前使用 Settings URI 来验证它是否可以更改特定的 BIOS 设置。否则,Ironic 使用 System URI 实现更改。此额外逻辑可确保 Ironic 可以应用与引导相关的 BIOS 设置更改,裸机置备可以成功。(OCPBUGS-2052)
Builds
-
在以前的版本中,在
BuildConfig
实例的ImageLabel
名称中使用正斜杠(/
)会导致错误。在这个版本中,通过更改用于验证的实用程序解决了这个问题。因此,您可以在BuildConfig
实例的ImageLabel
名称中使用正斜杠。(BZ#2105167) -
在以前的版本中,当使用
$ oc new-app --search <image_stream_name>
命令时,可能会收到与docker.io
镜像相关的错误信息。这会给用户造成混淆,因为 OpenShift Container Platform 不使用指向docker.io
的镜像流。在这个版本中,添加了代码检查以防止对docker.io
的引用。因此,该命令的输出不包括消息。(BZ#2049889) - 在以前的版本中,共享资源 CSI Driver 指标不会导出到 Telemetry 服务。因此,无法分析 Shared Resource CSI Driver 的使用指标。在这个版本中,共享资源 CSI Driver 指标会公开到 Telemetry 服务。因此,可以收集和分析 Shared 资源 CSI Driver 的使用指标。(BZ#2058225)
默认情况下,Buildah 会输出日志文件的步骤,包括环境变量的内容,其中可能包括 构建输入 secret。虽然您可以使用
--quiet
构建参数来禁止打印这些环境变量,但如果使用 Source-to-image(S2I)构建策略,则此参数将不可用。当前发行版本解决了这个问题。要禁止打印环境变量,请在构建配置中设置BUILDAH_QUIET
环境变量:sourceStrategy: ... env: - name: "BUILDAH_QUIET" value: "true"
-
在此次更新之前,使用
$ oc new-app --search <image_stream_name>
命令提供了一个警告,您可能无法访问容器镜像"docker.io/library/<image_name>:<tag>
"。这会导致 OpenShift Container Platform 带有指向docker.io
的镜像流的混乱。在这个版本中解决了这个问题,增加了代码检查以防止混淆对 'docker.io' 的引用。现在,该命令的输出不包括docker.io
的信息(BZ#2049889)
Cloud Compute
-
CertificateSigningRequest
(CSR)资源续订由 Kubernetes 控制器管理器处理,并被 Cluster Machine Approver Operator 正确保留等待,这会将mapi_current_pending_csr
指标的值增加到1
。在以前的版本中,当 Kubernetes 控制器管理器批准 CSR 时,Operator 会忽略它,并保留指标没有改变。因此,mapi_current_pending_csr
指标一直处于1
状态,直到 Operator 下一个协调为止。在这个版本中,来自其他控制器的 CSR 批准始终被协调来更新指标数据,在每个协调后更新mapi_current_pending_csr
指标的值。(BZ#2047702) - 在以前的版本中,只有 AWS SDK 中已知区域列表里的区域被验证,并指定任何其他区域会导致错误。这意味着,随着新区域被添加的,在 SDK 已更新以包含新区域信息前无法使用它们。在这个版本中,使用不太严格的设置验证区域,在无法识别区域时警告用户。因此,新区域可能会导致警告信息,但可以被立即使用。(BZ#2065510)
-
在以前的版本中,Cluster Machine Approver Operator 将
"Approved"
状态条件附加到其 condition 列表中。因此,Kubernetes API 服务器会记录包含消息[SHOULD NOT HAPPEN] failed to update managedFields
。在这个版本中,Operator 被更新为在附加到列表前检查其条件,并仅在需要时更新条件。因此,在CertificateSigningRequest
资源中不再重复条件,Kubernetes API 服务器不再记录与重复相关的错误。(BZ#1978303) - 在以前的版本中,Cisco ACI neutron 实现中存在 Red Hat OpenStack Platform(RHOSP)版本 16 中的一个缺陷,导致对属于给定网络的子网的查询返回非预期的结果。因此,RHOSP Cluster API 供应商可能会尝试置备同一子网上带有重复端口的实例,从而导致置备失败。在这个版本中,RHOSP Cluster API 供应商中的其他过滤可确保每个子网没有多个端口,现在可以使用 Cisco ACI 在 RHOSP 版本 16 上部署 OpenShift Container Platform。(BZ#2033862)
- 在以前的版本中,Red Hat OpenStack Platform(RHOSP)Machine API 供应商不使用代理环境变量指令,从而导致在 HTTP 或 HTTPS 代理后安装失败。在这个版本中,供应商可以在一个 egress 网络流量需要通过一个代理的受限环境中正确处理代理指令和功能。(BZ#2046133)
- 在以前的版本中,当从 OpenShift Container Platform 4.9 升级到 4.10 时,多个控制器间的不一致会导致版本号不正确。因此,版本号不一致。在这个版本中,对版本号的读取一致,集群 operator 状态中的发行版本现在稳定。(BZ#2059716)
- 在以前的版本中,可能会发生 AWS Machine API 供应商中的负载均衡器目标。这是因为在替换 control plane 机器时,基于 IP 的负载均衡器附加可能会保留在负载均衡器注册中。在这个版本中,在从 AWS 中删除 Amazon EC2 实例前,基于 IP 的负载均衡器附加会从负载均衡器中删除。因此,可以避免泄漏。(BZ#2065160)
-
在以前的版本中,在升级过程中,通过 Machine API 创建的新机器默认为 HW-13,这会导致集群降级。在这个版本中,虚拟机控制器会在从模板克隆创建过程中检查虚拟机的硬件版本。如果模板的硬件版本小于 15,则机器会进入
failed
状态,这是 OpenShift Container Platform 4.11 及以上版本所支持的最小硬件版本。(BZ#2059338) - 在以前的版本中,Azure 可用性集的 procedural 名称生成器超过了 80 个字符的最大限制。这可能导致 Machine API 在名称截断过程中重复使用相同的集合,而不是创建多个可用性集。在这个版本中,procedural 名称生成器被更新,以确保名称不再超过 80 个字符,且集群名称不会在集合名称中重复。因此,Azure 可用性集不再以意外的方式截断。(BZ#2093044)
- 因为 Cluster Autoscaler Operator 是在不设置任何领导选举参数的情况下部署集群自动扩展,所以集群自动扩展可能会意外失败,并在集群重启后重启。在这个版本中,Cluster Autoscaler Operator 会使用定义良好的领导选举标记部署集群自动扩展。因此,集群自动扩展在重启后可以正常工作。(BZ#2063194)"
-
在以前的版本中,证书签名请求(CSR)续订由
kube-controller-manager
处理,由机器批准程序正确保留等待,这会将mapi_current_pending_csr
增加到1
。之后,kube-controller-manager
批准 CSR,但机器批准者将忽略它,这会使指标保持不变。因此,mapi_current_pending_csr
一直处于1
个状态,直到有其他机器批准人被协调。在这个版本中,CSR 批准与其它控制器协调,以正确更新指标。因此,每次协调后mapi_current_pending_csr
始终保持最新状态。(BZ#2072195) - 在以前的版本中,如果集群安装时启动了 worker 节点数量,Machine API Operator 不会报告降级,即使其他 Operator 被报告为 degraded。在这个版本中,Machine API Operator 会被报告为 degraded,并会在安装日志中发布错误。因此,当 Machine API Operator 出现在失败的 Operator 列表中,用户现在知道检查机器的状态作为 worker 节点不足的原因。(BZ#1994820)
- 因为 Machine API Operator 没有遵循代理环境变量指令,所以在 HTTP 或 HTTPS 代理后安装会失败。在这个版本中,Machine API Operator 的 HTTP 传输逻辑现在遵循代理指令。因此,Machine API Operator 现在可以在只通过代理允许出口流量的受限环境中工作。(BZ#2082667)
- 在以前的版本中,在 vSphere 上安装有数千个标签和重度 API 负载的集群会失败。现在,机器控制器只查询与特定 OpenShift Container Platform 安装相关的标签。因此,OpenShift Container Platform 在 vSphere 上为这些集群正确安装。(BZ#2097153)
-
因为 kubelet 需要联系 vCenter 来获取节点区标签,如果 vCenter 凭证存储在 secret 中,所以 kubelet 无法启动,因为 kube 客户端没有及时创建。因此,如果您重新引导节点,在编辑
cloud-provider-config
配置映射时会出现,节点没有启动。在这个版本中,如果凭证存储在 secret 中,kubelet 会在节点注册后获取区标签。因此,节点会如预期重启。(BZ#1902307) -
在以前的版本中,因为缺少
timeout
选项,可能会导致控制器阻塞的问题(vCenter 永远不会进行响应或响应非常慢。此发行版本为 vSphere 机器控制器中的 vCenter 客户端添加timeout
选项。(BZ#2083237)
Cluster Version Operator
-
在以前的版本中,当 Cluster Version Operator(CVO)在升级过程中遇到错误时,Cluster Version Operator(CVO)会停止协调当前发行清单。在这个版本中,版本加载与协调不同,后者不会阻断前,并添加了一个新的条件
ReleaseAccepted
来阐明发行负载的状态。(BZ#1822752)
控制台 Metal3 插件
-
在以前的版本中,UI 中有一个缺少的选项来设置
bootMode
策略。因此,UI 会始终使用默认的(UEFI)引导策略,这会导致引导某些类型的裸机部署出现问题。在这个版本中,Add Bare Metal 主机表单中会公开一个新字段,以选择适当的引导模式策略。因此,裸机会正确启动。(BZ#2091030) - 在以前的版本中,节点维护功能被移到新项目中,这会导致 API 更改。因此,节点维护停止工作。在这个版本中,代码被修复,以便与新的 API 正常工作。因此,节点维护可以再次正常工作。(BZ#2090621)
- 在以前的版本中,在某些情况下,由辅助安装程序创建的集群中的第 2 天 worker 缺少底层裸机主机和机器资源。因此,当尝试显示 worker 节点的详情时,UI 会失败。在这个版本中,裸机主机和机器资源更为安全处理,UI 会显示所有可用的详情。(BZ#2090993)
域名系统(DNS)
-
拓扑了解 OpenShift Container Platform 4.11 中的新功能,它允许
EndpointSlice
控制器指定容器网络接口(CNI)的提示,以便它如何将流量路由到服务的端点。DNS Operator 没有为集群 DNS 服务启用拓扑了解提示。因此,CNI 网络供应商不会将 DNS 流量保留在区或节点。在这个版本中,DNS operator 被更新为在集群 DNS 服务中指定拓扑感知提示。(BZ#2095941) -
在以前的版本中,kubelet 根据来自节点主机的
/etc/resolv.conf
,为 pod 创建默认的/etc/resolv.conf
。因此,错误的resolv.conf
文件可能会导致解析器无法解析resolv.conf
,因此破坏 pod 中的 DNS 解析。在这个版本中,kubelet 接受resolv.conf
文件,pod 获得有效的resolv.conf
文件。(BZ#2063414) -
在以前的版本中,DNS Operator 不会在 DNS pod 上设置
cluster-autoscaler.kubernetes.io/enable-ds-eviction
注解。因此,在删除节点前,集群自动扩展不会从节点中删除 DNS pod。在这个版本中,DNS 操作器被修改为将cluster-autoscaler.kubernetes.io/enable-ds-eviction
注解添加到 DNS pod。现在,在按照集群自动扩展删除节点前,DNS pod 可以从节点中删除。(BZ#2061244)
镜像 Registry
-
在以前的版本中,镜像 registry 只有在一个完全匹配时才会将
ImageContentSourcePolicy
(ICSP)用作源。对于任何子仓库,应该拉取相同的源文件。ICSP 名称和路径与子仓库不匹配。因此,不使用镜像。现在,ICSP 已被成功应用到子仓库,可以使用镜像的镜像。(BZ#2014240) - 在以前的版本中,如果修剪器失败,镜像 registry Operator 会报告 degraded,直到修剪器成功运行。在这个版本中,Operator 对修剪器失败更具弹性。(BZ#1990125)
-
在以前的版本中,当应用
ImageContentSourcePolicy
(ICSP)时,registry 会根据准确匹配。在这个版本中,ICSP 适用于子存储库和镜像现在可以正常工作。(BZ#2014240) - 在以前的版本中,Image Registry Operator 无法用于 RHOSP 上的 AWS S3。在这个版本中,Image Registry Operator 在所有平台上信任 AWS S3。(BZ#2007611)
- 在以前的版本中,OpenShift Container Platform 镜像 registry 无法用于 Ceph Radosgw。借助此次更新,镜像 registry 可与 Ceph Radosgw 一起工作。(BZ#1976782)
-
在以前的版本中,Image Registry Operator 会将来自上游 registry 的
429
错误消息解析为数据不可用。Operator 会返回404 Not Found
消息,而不是429 Too Many Requests
。在这个版本中,可以返回正确的429 Too Many Requests
消息,以便管理员可以重新尝试请求。(BZ#1923536) - 在以前的版本中,Image Registry Operator 无法用于配置 CloudFront。在这个版本中,Image Registry Operator 可以配置 CloudFront。(BZ#2065224)
- 在以前的版本中,当启用 KMS 加密时,Image Registry Operator 会拉取镜像,而不会推送镜像。在这个版本中,可以在启用了 KMS 加密的情况下推送和拉取镜像。(BZ#2048214)
- 在以前的版本中,因为未提供凭证,Image Registry Operator 无法匿名拉取公共镜像。在这个版本中,客户端可以匿名拉取公共镜像。(BZ#2060605)
-
在以前的版本中,Image Registry Operator 无法使用
ap-southeast-3
AWS 区域。在这个版本中,registry 可以配置为ap-southeast-3
。(BZ#2065552)
安装程序
- 在以前的版本中,如果用户使用句点指定 OpenShift Container Platform 集群名称,安装会失败。在这个版本中,为安装程序添加了一个验证检查,如果集群名称中存在句点,它会返回一个错误。(BZ#2084580)
-
在以前的版本中,在使用安装程序创建
install-config.yaml
文件时,用户可以选择 AWSus-gov-east-1
区域。这会导致部署失败,因为安装程序只能用于为公共 AWS 区域创建install-config.yaml
文件。在这个版本中,从公共 AWS 云不支持的安装程序中删除所有 AWS 区域。(BZ#2048222) -
在以前的版本中,在使用安装程序创建
install-config.yaml
文件时,用户无法选择ap-north-east-3
区域。导致此问题的 AWS SDK 已更新,用户现在可以选择ap-north-east-3
区域。(BZ#1996544) - 在以前的版本中,在 Azure Stack Hub 上安装私有(内部)OpenShift Container Platform 集群会失败,因为安装程序没有为 API 虚拟 IP 地址创建 DNS 记录。在这个版本中,删除了导致这个问题的无效检查。安装程序现在可以正确地为私有集群创建 DNS 记录。(BZ#2061549)
- 在以前的版本中,卸载 IBM Cloud VPC 集群可能会导致意外的结果。当用户卸载集群(集群 1)时,当集群 1 的名称 (example) 是集群 2 (myexample) 的一部分,或者两个集群共享一个基域时,另外一个集群(集群 2)的 DNS 记录会被删除。在这个版本中修正了此行为。现在,只有特定于正在卸载的集群的资源才会被删除。(BZ#2060617)
- 在以前的版本中,Azure Stack Hub 不支持 Standard_LRS 以外的任何磁盘类型。在这个版本中,增加了自定义磁盘类型的功能,它允许集群在没有手动自定义的情况下使用默认磁盘类型。这会导致使交换机从硬编码磁盘类型进行,以接受用户输入并根据 Stack Hub API 验证它。(BZ#2061544)
- 在以前的版本中,当销毁集群时,当从托管区中删除 DNS 记录时,集群的私有 route5 托管区的 ID 会错误地报告。这会导致在 destroyer 的日志中报告不正确的主机区 ID。在这个版本中,日志中使用正确的主机区 ID。因此,当销毁基域的托管区中的 DNS 记录时,日志会显示正确的托管区 ID。(BZ#1965969)
-
在以前的版本中,在请求 AWS 自定义服务端点时,系统代理设置不会被考虑。在这个版本中,配置了 AWS 自定义服务端点验证,以考虑系统代理设置,以及 AWS 自定义服务端点的
HEAD
请求。因此,AWS 自定义服务端点可以从用户的机器访问。(BZ#2048451) -
在以前的版本中,安装程序在安装程序主机的
$PATH
中使用任何 Terraform 供应商。因此,如果$PATH
中存在使用不正确的版本或供应商中的 Terraform 供应商,而不是安装程序中嵌入的供应商,则安装会失败。在这个版本中,安装程序会将供应商嵌入到已知目录中,并将 Terraform 设置为使用已知的目录。因此,安装会成功,因为安装程序总是使用已知目录中的供应商。(BZ#1932812) - 在以前的版本中,更新新的负载均衡器时,AWS Terraform 供应商中存在一个最终一致性问题。因此,当尝试访问新的负载均衡器时,安装会失败。在这个版本中,安装程序被更新为一个上游 Terraform 供应商,以确保最终一致性。因此,安装不会失败。(BZ#1898265)
-
在以前的版本中,安装程序包含检查配额和权限所需的 API 列表,如果用户没有提供权限,列表包含一些不必要的 API。在这个版本中,API 列表被分成
required
和optional
,optional
API 不能访问。为optional
API 显示一个警告信息。(BZ#2084280) -
在以前的版本中,
.apps
条目没有标签kubernetes.io_cluster<infraID>
,安装程序使用这个标签从数据库中删除代码,这会隔离为给定集群创建的所有资源,并删除它们。在这个版本中,在创建过程中添加了一个标签到集群 Ingress Operator 中,这样会使条目无法删除。(BZ#2055601) -
在以前的版本中,当使用内部发布策略时,
openshift-install
命令会失败。在这个版本中,openshift-install
命令不再失败。(BZ#2047670) - 在以前的版本中,当更新到新创建的虚拟私有云(VPC)时,AWS Terraform 供应商中存在一个最终一致性问题。因此,当尝试访问 VPC 时,安装程序会失败。在这个版本中,安装程序被更新到上游 Terraform 供应商,安装不会失败。(BZ#2043080)
- 在以前的版本中,当更新到新创建的网络接口时,AWS Terraform 供应商中存在一个最终一致性问题。因此,安装将无法访问网络接口。在这个版本中,Terraform 供应商被更新为接受最终一致性,且安装不会失败。(BZ#2047741)
-
在以前的版本中,当使用安装程序置备的基础架构安装 VMware 集群时,
corespersocket
值可能大于numCores
值。这可能会在安装过程中造成意外的结果。在这个版本中,用户在创建集群前收到更正这些值的警告信息。(BZ#2034147) - 在以前的版本中,在 AWS 集群安装过程中造成不一致的错误。安装程序已更新,以避免这种情况。(BZ#2046277)
- 在以前的版本中,支持的用户定义的标签数量是 8,保留的 OpenShift Container Platform 标签是 2 个用于 AWS 资源。在这个版本中,支持的用户定义标签的数量是 25,对于 AWS 资源,保留的 OpenShift Container Platform 标签为 25。现在,您可以在安装过程中最多添加 25 个用户标签。(CFE#592)
- 在以前的版本中,当使用安装程序置备的基础架构在 Azure 上安装时,bootstrap 机器使用默认大小和实例类型。在这个版本中,bootstrap 机器使用 control plane 机器的大小和实例类型。现在,您可以通过修改安装配置中的 control plane 设置来控制 bootstrap 机器的大小和实例类型。(BZ#2026356)
- 在以前的版本中,安装程序提供带有模糊的网络名称的 Terraform。这可能会导致 Terraform 无法确定要使用的正确网络。在这个版本中,安装程序会提供唯一网络 ID 的 Terraform,以便安装成功。(BZ#1918005)
- 在以前的版本中,在 AWS 上安装集群时可创建 control plane 机器,从而导致安装失败。在这个版本中,Terraform 可确保在创建 control plane 机器前创建 NAT 网关。这样可确保安装成功。(BZ#2049108)
- 在以前的版本中,如果您使用 OVN 网络而不是默认的 OSN 网络,则扩展任务会失败,因为它需要的时间更长。在这个版本中,扩展任务期间的重试数量加倍,以便可以完成任务。(BZ#2090151)
-
在以前的版本中,当尝试同时从数据库中删除多个集群时,删除过程会失败,因为
vmware
和govmomi
库中存在错误。错误会导致集群的标签被删除,当删除过程无法找到标签时会导致 404 错误。在这个版本中,忽略了未找到的标签,并继续删除过程,以便其完成且无错误。(BZ#2021041) - 在这个版本中,Red Hat Virtualization(RHV)上的 OpenShift Container Platform 支持用于安装程序置备的基础架构的 control plane 和 worker 节点的预分配磁盘。在高负载环境中,预分配的磁盘可受益于 etcd 和其他组件的性能。(BZ#2035334)
-
在以前的版本中,当尝试并行删除多个集群时,因为
vmware/govmomi
库中存在错误,进程会失败。错误会导致删除集群标签,当删除过程无法找到标签时会导致404
错误。在这个版本中,忽略未找到的标签,并继续删除,以便它完成且没有错误。(BZ#2021041) - 在以前的版本中,VMware vSphere 的安装方法包括检查在创建配置文件过程中检查是否有网络的验证。这会导致用户置备的基础架构和其它安装方法创建网络作为置备基础架构的一部分,在这种情况下,当生成配置文件时,网络可能不存在。在这个版本中,安装程序只在安装程序置备的基础架构安装中执行网络验证。因此,用户置备的基础架构和其他安装方法都可以生成配置文件,而不考虑网络存在。(BZ#2050767)
-
在以前的版本中,
runc
依赖于libseccomp
2.5 或更高版本,这会导致操作系统使用 8.3 或更高版本安装并不会完全更新至 8.4 或更高版本。在这个版本中,RHEL 主机成功安装,避免了软件包的早期版本的问题。(BZ#2060147) - 在以前的版本中,安装程序会指定网络资源来按相对路径进行 terraform。当网络资源嵌套在文件夹中时,terraform 供应商无法找到该资源。在这个版本中,网络资源由 ID 指定,安装可以成功。(BZ#2063829)
-
在以前的版本中,vSphere RHCOS 镜像没有
/etc/resolv.conf
文件。这会导致默认的networkmanager
设置显示/etc/resolv.conf
的错误。在这个版本中,会设置rc-manager=unmanaged
值,networkmanager
设置不会定向到/etc/resolv.conf
。(BZ#2029438) - 在以前的版本中,安装程序不会创建云供应商配置,因为 Amazon Web Services(AWS)不需要它。这会导致 Kubernetes API 服务器提供在没有云供应商配置的情况下的错误。在这个版本中,为 AWS 创建一个空的云供应商配置,Kubernetes API 服务器可以成功运行。(BZ#1926975)
Kubernetes API 服务器
-
在以前的版本中,
KubeAPIErrorBudgetBurn
计算的长期运行请求被考虑。因此,KubeAPIErrorBudgetBurn
中的警报会被触发,并导致误报。在这个版本中,从KubeAPIErrorBudgetBurn
计算中排除了长时间运行的请求。因此,在KubeAPIErrorBudgetBurn
指标上会减少假的正。(BZ#1982704)
Kubernetes 调度程序
- 在 OpenShift Container Platform 4.11 中,当启用了托管 control planes 的集群中安装 descheduler 时,托管 control plane 命名空间不会被驱除。因此,当安装 descheduler 时,pod 不再从托管的 control plane 命名空间中驱除。(BZ#2000653)
-
在以前的版本中,资源错误地在
kubedescheduler
自定义资源(CR)的所有者引用中指定 API 版本。因此,所有者引用无效,在kubedescheduler
CR 运行时不会删除受影响的资源。在这个版本中,指定所有所有者引用中的正确的 API 版本。因此,在删除 CR 后会删除对kubedescheduler
CR 的所有者引用的所有资源。(BZ#1957012)
Machine Config Operator
-
因为
keyFile
没有配置为 RHEL 节点上的 NetworkManager 的默认插件,所以 RHEL 节点重启后可能无法进入就绪状态。在这个版本中,keyFile
设置为所有集群节点上的默认 NetworkManager 插件。因此,节点重启后可以正确地进入ready
状态。(BZ#2060133) -
因为 vSphere UPI 集群在安装时没有设置
PlatformStatus.VSphere
参数,所以该参数被设置为nil
。这会导致 MCO 日志被填充,带有不必要的重复性信息,这些参数无法具有值nil
。在这个版本中删除了这个警告信息,它被添加来解决这个问题。因此,日志不再列出 vSphere UPI 安装此消息。(BZ#2080267) -
在以前的版本中,当您试图使用 FIPS 和
realTimeKernel
创建集群时,Machine Config Operator (MCO) 会因为代码中的合并逻辑问题而降级。在这个版本中,当创建带有 FIPS 和realTimeKernel
的集群时,MCO 不再降级。(BZ#2096496)
Compliance Operator
-
在以前的版本中,Compliance Operator 会引用机器配置数据,这显著提高了内存用量。因此,因为内存不足例外,Compliance Operator 会失败并显示
CrashLoopBackoffs
。作为临时解决方案,您应该使用 Compliance Operator 的更新版本,例如:0.1.53,它可更好地处理内存中的大型机器配置数据集。因此,Compliance Operator 在处理大型机器配置数据集时会继续运行。(BZ#2094854)
管理控制台
-
在以前的版本中,在批准
InstallPlans
时,web 控制台没有正确验证权限。这会导致一个可能的未处理的错误。在这个版本中,在 web 控制台中正确显示权限以一致性,错误消息会被正确显示。(BZ#2006067)
监控
-
在此次更新之前,OpenShift Container Platform web 控制台中的仪表板包括了使用
container_fs*
指标的查询没有返回数据点的查询,因为容器标签因为高卡而丢弃了容器标签。在这个版本中解决了这个问题,这些仪表板现在会按预期显示数据。(BZ#2037513) -
在此次更新之前,
prometheus-operator
组件允许配置映射中ScrapeTimeout
的任何时间值。如果将ScrapeTimeout
设置为大于ScrapeInterval
的值,Prometheus 将停止加载配置映射设置,且无法应用所有后续配置更改。在这个版本中,如果指定的ScrapeTimeout
值大于ScrapeInterval
值,则系统将设置无效,但继续载入其他配置映射设置。(BZ#2037762) - 在此次更新之前,在 OpenShift Container Platform Web 控制台中的 Kubernetes / Compute Resources / Cluster 仪表板的 CPU U tilis 面板中,用于计算节点的 CPU 使用率的公式可能会错误地显示无效的负值。在这个版本中,公式已被更新,CPU Utilisation 面板现在显示正确的值。(BZ#2040635)
-
在此次更新之前,在自动更新期间,无法访问
prometheus-adapter
组件的数据,每 15 天发生,因为更新过程在新 Pod 可用前删除了旧的 pod。在这个版本中,自动更新过程仅在新 pod 能够服务请求后删除旧的 pod,以便在更新过程中继续提供旧 pod 的数据。(BZ#2048333) -
在此次更新之前,
kube-state-metrics
错误地缺少以下指标:kube_pod_container_status_terminated_reason
、kube_pod_init_container_status_terminated_reason
、kube_pod_status_scheduled_time
。在这个版本中,kube-state-metrics
可以正确地显示这些指标,以便它们可用。(BZ#2050120) -
在此次更新之前,如果
prometheus-operator
组件存在无效的 write relabel 配置映射设置,则配置仍会加载所有后续设置。在这个版本中,组件会在载入配置时检查有效的写入重新标记设置。如果无效设置,则会记录错误,配置加载过程将停止。(BZ#2051470) -
在此次更新之前,Prometheus pod 的
init-config-reloader
容器请求100m
CPU 和50Mi
内存,即使实践了容器需要较少的资源。在这个版本中,容器请求1m
CPU 和10Mi
内存。这些设置与config-reloader
容器的设置一致。(BZ#2057025) -
在此次更新之前,当管理员启用了用户工作负载监控时,
user-workload-monitoring-config
配置映射不会被自动创建。因为具有user-workload-monitoring-config-edit
角色的非管理员用户没有手动创建配置映射的权限,所以他们需要管理员创建该配置映射。在这个版本中,当管理员启用用户工作负载监控并可供具有适当角色的用户编辑时,user-workload-monitoring-config
配置映射会自动创建。(BZ#2065577) - 在此次更新之前,在删除部署后,Cluster Monitoring Operator(CMO)不会等待删除完成,从而导致协调错误。在这个版本中,CMO 会在重新创建前等待部署被删除,从而解决这个问题。(BZ#2069068)
- 在此次更新之前,对于用户工作负载监控,如果您在 Prometheus 中为指标配置了外部标签,则 CMO 不会正确将这些标签传播到 Thanos Ruler。如果您查询了用户定义的项目的外部指标,则不会由 Prometheus 的用户工作负载监控实例提供,有时也会看到这些指标的外部标签,即使您已配置了 Prometheus 来添加它们。在这个版本中,CMO 会正确地传播您在 Prometheus 中配置的外部标签到 Thanos Ruler,您可以在查询外部指标时看到标签。因此,对于用户定义的项目,如果您查询不是由 Prometheus 的用户工作负载监控实例提供的外部指标,有时即使您配置了 Prometheus 来添加这些指标,您有时不会看到这些指标的外部标签。在这个版本中,CMO 会正确地传播您在 Prometheus 中配置的外部标签到 Thanos Ruler,您可以在查询外部指标时看到标签。(BZ#2073112)
-
在此次更新之前,
tunbr
接口会错误地触发NodeNetworkInterfaceFlapping
警报。在这个版本中,tunbr
接口被包含在警报忽略的接口列表中,不再导致警报触发错误。(BZ#2090838) - 在以前的版本中,Prometheus Operator 允许无效的重新标签(re-label)配置。在这个版本中,Prometheus Operator 会验证 re-label 的配置。(BZ#2051407)
网络
- 在以前的版本中,当将 bond CNI 插件用于额外网络附加时,它与 Multus 不兼容。当绑定 CNI 插件与 Whereabouts IPAM 插件一同使用时,网络附加定义的 IP 地址被错误协调。现在,使用 bond CNI 插件的网络附加定义与 Whereabouts IPAM 插件进行 IP 地址分配正常工作。(BZ#2082360)
- 在以前的版本中,当将 OVN-Kubernetes 集群网络供应商使用多个默认网关时,选择了错误的网关,从而导致 OVN-Kubernetes pod 意外停止。现在选择了正确的默认网关,以便这些 pod 不再失败。(BZ#2040933)
- 对于使用 OVN-Kubernetes 集群网络供应商的集群,之前,如果 NetworkManager 服务在节点上重启,该节点会丢失网络连接。现在,重启 NetworkManager 服务时会保留网络连接。(BZ#2048352)
-
在以前的版本中,在保留
mutex
的同时,goroutine
处理缓存更新可能会停止写入未缓冲的频道。在这个版本中,解决了这些竞争条件。(BZ#2052398) -
在以前的版本中,对于 ovn-kubernetes,在启动时使用绑定或组接口设置
br-ex
会导致br-ex
和绑定接口间的介质访问控制(MAC)地址不匹配。因此,由于意外的br-ex
MAC 地址,裸机或某些虚拟平台都会因为网络接口控制器(NIC)驱动程序丢弃流量而丢失所有流量。在这个版本中,br-ex
和绑定接口使用相同的 MAC 地址,从而导致没有丢弃的流量。(BZ#2103080) -
在以前的版本中,具有
cluster-reader
角色的用户无法从 kubernetes-nmstate 读取自定义资源,如NodeNetworkConfigurationPolicy
。在这个版本中,具有cluster-reader
角色的用户可以读取 kubernetes-nmstate 自定义资源。(BZ#2022745) -
在以前的版本中,当删除服务端点时,当因为端点失败而被删除时,
LoadBalancer
IP 的 contrack 条目不会被删除。在这个版本中,Contrack 条目不会导致连接失败。(BZ#2061002) -
在以前的版本中,因为缺少
jq 软件包
会导致在节点部署中扩展带有 RHEL 节点的集群会失败。在这个版本中,在部署时安装了jq 软件包
,扩展带有 RHEL 节点的集群会成功。(BZ#2052393) - 在以前的版本中,当发生服务配置更改时,OVN-Kubernetes 会花费过量时间。这会导致服务配置更改出现显著延迟。在这个版本中,OVN-Kubernetes 被优化,以减少服务配置更改的延迟。(BZ#2070674)
- 在以前的版本中,因为 API 连接问题导致 Whereabouts IPAM CNI 的 IP 协调 CronJob 会失败,这会导致 CronJob 间歇性失败。在这个版本中,在 Whereabouts IPAM CNI 上启动 CronJob 使用 api-internal 服务器地址和一个扩展的 api 超时来防止连接问题。(BZ#2048575)
-
在这个版本中,安装了 Kubernetes-NMstate 的 OpenShift Container Platform 集群现在包括在
must-gather
的 Kubernetes-NMstate 资源中。这通过在must-gathers
中包含 Kubernetes-NMstate 中的资源来提高问题处理。(BZ#2062355) -
目前,在使用集群流量策略配置负载均衡器时,主机路由存在一个已知问题。因此,负载均衡器服务的出口流量会使用默认网关,而不是主机路由表中存在的最佳匹配路由。作为临时解决方案,将负载均衡器类型服务设置为
Local
流量策略。(BZ#2060159) -
在以前的版本中,
PodDisruptionBudget
规格不适用于单节点 OpenShift 集群,因为所有 pod 无法被驱除,这限制了升级功能。在这个版本中,PodDisruptionBudget
规格会根据可以在单节点 OpenShift 集群上升级的集群拓扑调整。(BZ#2075491) -
在以前的版本中,在引导时设置
br-ex
网桥时,DHCP 客户端 ID 和 IPv6 地址生成模式配置无法正常工作,导致在br-ex
中有预期外的 IP 地址。在这个版本中,在br-ex
上正确设置了 DHCP 客户端 id 和 IPv6 生成模式配置。(BZ#2058030) -
在以前的版本中,
egress-router-cni
pod 缺少一些集群内部路由,因为依赖 CNI 定义的gateway
字段来删除默认路由并注入自己的路由。在这个版本中,egress-router-cni
pod 会注入正确的路由信息,以便 pod 可以访问外部和内部集群目的地。(BZ#2075475) -
在以前的版本中,pod 中断预算用于在单节点 OpenShift 上创建 OVN raft 仲裁。这会引发在单节点 OpenShift 集群中引发一个无格式的
PodDisruptionBudgetAtLimit
警报。在这个版本中,PodDisruptionBudgetAtLimit
警报不再在这些集群中出现。(BZ#2037721) -
在以前的版本中,
NetworkManager
重启中的一个竞争条件有时会阻止 DHCP 解析在节点引导时成功设置br-ex
网桥。在这个版本中,设置br-ex
时NetworkManager
不再重启,从而消除了竞争条件。(BZ#2055433) -
在以前的版本中,
PtpConfigSlave
源自定义资源(CR)被设置为不受支持的网络传输 UDPv4,从而导致分布式单元(DU)节点出现错误。在这个版本中更新了PtpConfigSlave
源 CR,以使用网络传输 L2 而不是 UDPv4。因此,在 DU 节点上不再发现错误。(BZ#2060492) - 在以前的版本中,当更新网络策略时,所有 OpenShift Container Platform 策略日志记录配置都会更新。这会导致在一些并发或之后的网络策略中出现显著的延迟。在这个版本中,添加新策略时不再更新所有网络策略,从而消除了延迟。(BZ#2089392)
网络性能改进
-
在以前的版本中,
systemd
服务根据性能配置集中保留的 CPU 列表,为 udev 排除虚拟设备查看的所有网络设备,设置一个默认的 Recieve Packet Steering(RPS)掩码。crio
hook 脚本设置/sys/devices
中所有网络设备的 RPS 掩码,用于保证 pod。这会导致对网络性能进行多次影响。在这个版本中,systemd
服务只为/sys/devices/virtual
下的虚拟接口设置默认 RPS 掩码。crio
hook 脚本现在也会排除物理设备。此配置可减少进程过载、长度轮询间隔和延迟高峰等问题。(BZ#2081852)
节点
- 在以前的版本中,pod Manager 处理 pod secret 和配置映射的注册和取消注册。因此,pod secret 有时可能无法挂载到 pod 中。在这个版本中,kubelet 用来管理注册的 pod 的密钥中包含 pod ID。因此,secret 会如预期正确挂载。(BZ#1999325)
- 由于垃圾回收过程中存在一个内存泄漏问题,pod 可能会因为内存不足而无法在节点上启动。在这个版本中,在垃圾回收过程中不会在节点中出现内存泄漏问题,节点会如预期启动。(BZ#2065749)
- 由于上游 Kubernetes 的变化,kubelet 没有在被终止的 pod 上运行就绪度探测。因此,负载均衡器或控制器可能会更快地对终止 pod 做出反应,这可能会造成错误。在这个版本中,就绪度探测再次在 pod 终止上执行。(BZ#2089933)
-
由于一个程序漏洞,kubelet 可能会错误地拒绝具有
OutOfCpu
错误的 pod,如果 API 中报告其他 pod 后快速调度 pod。在这个版本中,kubelet 会等待将 pod 的阶段报告为 API 中的终端,直到所有运行中的容器都停止并且没有启动新容器。短期存在的 pod 可能需要更长的时间,大约 1s 才能在此更改后报告成功或失败。(BZ#2022507) -
因为最新版本的
prometheus-adapter
会发送额外的 pod 指标,所以 Vertical Pod Autoscaler(VPA)推荐程序会产生大量不必要的重复的信息。在这个版本中,VPA 会识别并忽略额外的指标。因此,不会再生成这些消息。(BZ#2102947)
OpenShift CLI (oc)
-
在以前的版本中,如果一个旧的、弃用的镜像版本用作源,则
oc
catalog mirror 会失败。现在,镜像清单版本会被自动探测,mirror 可以成功正常工作。(BZ#2049133) -
在以前的版本中,当出现回退检查时,很难理解日志中的信息。现在,日志已被改进,以便更明确。因此,
must-gather run
的输出更为明确。(BZ#2035717) -
在以前的版本中,如果您使用无效的参数运行
must-gather
,它不会统一报告错误,而在无法实现时可能会尝试收集数据。现在,如果使用无效选项调用must-gather
,它会提供有用的错误输出。(BZ#1999891) -
在以前的版本中,如果
oc adm catalog mirror
命令出错,它仍然继续并返回0
退出代码。现在,可以使用--continue-on-error
标志来确定命令是否应该继续是否存在错误,或使用非零退出代码退出。(BZ#2088483) -
在这个版本中,在
oc adm policy who-can
命令中添加了--subresource
标志,以检查谁可以对子资源执行指定操作。(BZ#1905850) -
在以前的版本中,用户无法对
oc project
命令使用 tab 自动完成功能。现在,在oc project
正确列出项目后按 tab 键。(BZ#2080416) -
在以前的版本中,启动探测不会从 debug pod 中删除,如果启动探测失败,可能会导致 debug pod 出现问题。添加了
--keep-startup
标志,默认为false
,即从 debug pod 中删除启动探测。(BZ#2056122) -
在以前的版本中,调用
oc debug node
后没有指定超时,因此用户从不会注销集群。添加了TMOUT
环境变量,以便在不活跃的时间超过设置的值后,话会自动终止。(BZ#2043314) -
在这个版本中,
oc login
会显示 web 控制台的 URL,即使用户已注销。(BZ#1957668) -
在以前的版本中,当容器找不到时,
oc rsync
命令会显示一个错误输出。在这个版本中,oc rsync
命令在特定容器没有运行时会显示正确的错误消息。(BZ#2057633) - 在以前的版本中,如果大型镜像对于集群是新的,则无法修剪它们。这会导致在过滤大的镜像时会省略最新的镜像。在这个版本中,您可以修剪超过给定大小的镜像。(BZ#2083999)
-
在以前的版本中,
gather
脚本中有一个拼写错误。因此,无法正确收集 insights 数据。在这个版本中,拼写错误已被修正,Insights 数据现在可以通过must-gather
正确收集。(BZ#2106543) -
在以前的版本中,您无法通过
oc
CLI 应用集群中的EgressNetworkPolicy
资源类型。在这个版本中,您可以创建、更新和删除EgressNetworkPolicy
资源。(BZ#2071614)
Kubernetes Controller Manager
-
在以前的版本中,默认启用用于使用 pod 终结器跟踪作业的 beta 功能。在某些情况下,pod 并不总是被删除,因为在它们上的终结器没有被删除。在这个版本中,功能门
JobTrackingWithizers
会被默认禁用。因此,删除过程不会遗留任何 pod。(BZ#2075621) -
在以前的版本中,当 CR 副本数为零时就会发生
PodDisruptionBudgetAtLimit
警报。在这个版本中,如果没有应用程序中断或副本数为零,警报将不再触发。(BZ#2053622)
Operator Lifecycle Manager (OLM)
- 在此次更新之前,当资源名称超过 63 个字符时,会创建无效的订阅标签。修剪超过 63 个字符限制的标签会解决这个问题,订阅资源不再拒绝 Kubernetes API。(BZ#2016425)
-
在此次更新之前,Marketplace Operator 的目录源 pod 会阻止节点排空。因此,Cluster Autoscaler 无法有效地缩减。在这个版本中,将
cluster-autoscaler.kubernetes.io/safe-to-evict
注解添加到目录源 pod 会修复这个问题,Cluster Autoscaler 可以有效地缩减。(BZ#2053343) -
在此次更新之前,在某些情况下,
collect-profiles
作业可能需要很长时间才能完成,比如当 pod 无法调度时。因此,如果已调度了足够的作业但无法运行,调度的作业数量会超过 pod 的配额限制。在这个版本中,每次只有一个collect-profiles
pod,而collect-profiles
作业不会超过 pod 配额限制。(BZ#2055861) -
在此次更新之前,在定义其领导选举期、续订期限和重试期限时,软件包服务器不知道 pod 拓扑。因此,对于只有有限资源的环境(如单节点环境),软件包服务器可能会出现资源紧张的情况。这个版本引入了一个
leaderElection
软件包,它设定合理的租期持续时间、续订期限和重试周期。这可以减少了对具有有限资源的集群出现资源紧张的问题。(BZ#2048563) -
在以前的版本中,
openshift-marketplace
命名空间中有一个错误的目录源。因此,所有订阅都被阻断。在这个版本中,如果openshift-marketplace
命名空间中有一个错误的目录源,用户可以从自己的命名空间的质量目录源中订阅 operator。因此,如果本地命名空间中存在错误的目录源,用户无法订阅命名空间中的任何 Operator。(BZ#2076323) -
在以前的版本中,在
operator-marketplace
项目轮询过程中会生成 info 级别的日志,这会导致日志垃圾邮件。在这个版本中,使用命令行标志将日志行减少到 debug 级别,并为用户添加更多日志级别。因此,这减少了日志垃圾邮件。(BZ#2057558) -
在以前的版本中,由 Cluster Version Operator(CVO)管理的每个组件都包含在项目存储库根目录下的
/manifest
目录中定义的 YAML 文件。从/manifest
目录中删除 YAML 文件时,您需要添加release.openshift.io/delete: "true"
注解,否则 CVO 不会从集群中删除资源。在这个版本中,重新引入从/manifest
目录中删除的所有资源,并添加release.openshift.io/delete: "true"
注解,以便 CVO 清理资源。因此,从集群中移除 OLM 组件不再需要的资源。(BZ#1975543) -
在以前的版本中,gRPC 目录源使用的
CheckRegistryServer
功能没有确认与目录源关联的服务帐户是否存在。这会导致没有服务帐户的不健康目录源存在。在这个版本中,gRPCCheckRegistryServer
函数检查服务帐户是否存在,并在找不到该服务时重新创建该服务。因此,OLM 会在 gRPC 目录源拥有时重新创建服务帐户(如果它们不存在)。(BZ#2074612) -
在以前的版本中,当用户针对基于文件的目录镜像运行
opm index prune
时发生错误信息中,并没有明确指明此命令不支持该目录格式。在这个版本中,相关的错误信息更加明确,用户可以知道命令opm index prune
只支持基于 SQLite 的镜像。(BZ#2039135) - 在以前的版本中,Operator API 有一个有问题的线程安全。因此,Operator 资源不能正确删除。在这个版本中,Operator 资源可以被正确删除。(BZ#2015023)
- 在以前的版本中,pod 失败是通常扩展证书的有效性周期,从而导致它们错误地轮转。在这个版本中,证书有效期被正确决定,证书会正确轮转。(BZ#2020484)
-
在 OpenShift Container Platform 4.11 中,所有命名空间的默认集群范围的 Pod 安全策略被设置为
baseline
,默认的警告级别设置为restricted
。在此次更新之前,Operator Lifecycle Manager 在operator-marketplace
命名空间中显示 Pod 安全准入警告。在这个版本中,将警告级别降到baseline
可解决这个问题。(BZ#2088541)
Operator SDK
- 在此次更新之前,Operator SDK 使用上游镜像而不是下游支持的镜像来构建基于 Helm 的 Operator。在这个版本中,Operator SDK 使用受支持的下游镜像来构建基于 Helm 的 Operator。(BZ#2039135)
-
在 OpenShift Container Platform 4.11 中,Operator SDK 允许构建
arm64
Operator 镜像。因此,Operator SDK 现在支持构建以arm64
为目标的 Operator 镜像。(BZ#2035899) - 在以前的版本中,运行与 Operator SDK 构建的混合 Helm Operator 的 {product-tile} 会使用上游镜像,而不是支持下游镜像。在这个版本中,构建混合 Helm Operator 使用下游镜像。(BZ#2066615)
OpenShift API 服务器
- 因为多个身份验证 Operator 控制器同时同步,所以 Authentication Operator 需要很长时间才能响应其配置的更改。此功能在常规同步周期中添加了 jitter,以便 Authentication Operator 控制器不会争用资源。现在,Authentication Operator 需要较少的时间来响应配置更改。(BZ#1958198)
- 使用 OpenShift Container Platform 4.11 时,来自外部身份提供程序的身份验证会尝试登录到审计日志。因此,您可以在审计日志中查看成功、失败和登录尝试。(BZ#2086465)
Red Hat Enterprise Linux CoreOS (RHCOS)
-
在此次更新之前,如果机器是通过 PXE 引导并且
BOOTIF
参数在内核命令行上,则计算机只会在单一接口上启用 DHCP。在这个版本中,机器在所有接口上启用 DHCP 进行引导,即使提供了BOOTIF
参数。(BZ#2032717) - 在以前的版本中,从 VMware OVA 镜像置备的节点不会在初始置备后删除 Ignition 配置。因此,当 secret 存储在 Ignition 配置中时,这会产生安全问题。在这个版本中,Ignition 配置会在新节点上初始置备后从 VMware hypervisor 中删除,当从现有节点上的以前的 OpenShift Container Platform 版本升级时,Ignition 配置会从 VMware hypervisor 中删除。(BZ#2082274)
-
在以前的版本中,当首次调用命令时,为
toolbox
命令提供的任何参数都会被忽略。在这个版本中更新了 toolbox 脚本,以启动podman container create
命令,后跟podman start
和podman exec
命令。它还修改脚本,以处理作为数组的多个参数和空格。因此,传递给toolbox
命令的参数会如预期执行。(BZ#2039589)
Performance Addon Operator
-
在以前的版本中,CNF cyclictest 运行程序应提供
--mainaffinity
参数,它会告知二进制应在哪个线程上运行,但 cyclictest 运行程序缺少--mainaffinity
参数。在这个版本中,在 cyclictest 运行程序中添加了--mainaffinity
参数,以便它被正确传递给cyclitest
命令。(BZ#2051540) -
在以前的版本中,
oslat
容器规格缺少cpu-quota.crio.io: "disable"
注解,这会导致延迟很高。因此,在创建 pod 的定义中缺少cpu-quay.crio.io:"disable"
注解。在这个版本中,cpu-quota.crio.io:"disable"
注解会在创建 pod 时附加,因此会在oslat
pod 的specification
字段中出现。(BZ#2061676)
路由
- 在以前的版本中,Ingress Operator 不会验证 OpenShift Ingress 命名空间中的 Kubernetes 服务对象是否由 Ingress Controller 创建,或者由 Ingress Controller 创建,而是试图与它进行协调。因此,无论所有权如何,Ingress Operator 会修改或删除具有相同名称和命名空间的 Kubernetes 服务,而不会导致意外行为。在这个版本中,Ingress Operator 可以在尝试修改或删除服务前检查现有 Kubernetes 服务的所有权。如果所有权不匹配,Ingress Operator 会显示一个错误,且不会执行任何操作。因此,Ingress Operator 无法修改或删除它要修改或删除的 OpenShift Ingress 命名空间的名称。(BZ#2054200)
- 在以前的版本中,OpenShift Container Platform 4.8 添加了一个 API 来自定义平台路由。此 API 包括集群入口配置中的 status 和 spec 字段,用于分别报告自定义路由的当前主机名以及这些路由的用户所需的主机名。API 也定义了这些值的限制。这些限制是会限制并排除一些有效的潜在主机名。因此,API 的限制验证会阻止用户指定应该允许的自定义主机名,并阻止用户使用应该允许的域安装集群。在这个版本中,主机名的限制会被放宽,以允许所有对路由有效的主机名,而 OpenShift Container Platform 允许用户使用带有十进制数字的 TLDs 的集群域。(BZ#2039256)
-
在以前的版本中,Ingress Operator 不会检查配置了集群
spec.domain
参数的 Ingress Controller 与spec.baseDomain
参数匹配。这会导致 Operator 创建 DNS 记录并将DNSManaged
条件设置为false
。在这个版本中,Ingress Operator 会检查spec.domain
参数是否与集群spec.baseDomain
匹配。因此,对于自定义 Ingress Controller,Ingress Operator 不会创建 DNS 记录,并将DNSManaged
条件设置为 false。(BZ#2041616) -
在以前的版本中,在 OpenShift Container Platform 4.10 中,HAProxy must-gather 功能最多可能需要一小时才能运行。当处于终止状态的路由器延迟
oc cp
命令时会出现这种情况。延迟持续到 pod 终止为止。在新发行版本中,oc op
命令的 10 分钟限制会阻止更长的延迟。(BZ#2104701) - 在以前的版本中,当 Ingress Controller 被删除时,Ingress Operator 不会清除路由状态,显示该路由在删除后仍然处于 Operator 中。在这个版本中,当 Ingress Controller 被删除时清除路由状态,这会导致删除 Ingress Controller 后清除路由。(BZ#1944851)
-
在以前的版本中,因为 API 中存在一个不正确的信息,
oc explain router.status.ingress.conditions
命令的输出会将路由状态显示为Currently only Ready
而不是Admitted
。在这个版本中修正了 API 中的信息。现在,命令会输出正确的信息。(BZ#2041133) -
在以前的版本中,Ingress Operator 会检测到用户修改 Operator 在
LoadBalancer-type
服务上管理的注解。因此,Operator 会将 Ingress Cluster Operator 的Upgradeable
状态条件设置为False
以阻止升级,Ingress Operator 会错误地将Upgradeable
状态条件设置为False
,如果服务没有注解,则会阻止升级。现在,检查服务注解的逻辑可以正确地处理空注解,Ingress Operator 不再错误地阻止升级。(BZ#2097555) -
在以前的版本中,Ingress Operator 删除了 Operator 从以前的 OpenShift Container Platform 版本添加到
LoadBalancer-type
服务中的终结器。在这个版本中,Ingress Operator 不再删除终结器。(BZ#2069457) -
Ingress Operator 对 ingress Canary 路由执行健康检查。在此次更新之前,在连接中启用
keepalive
守护进程,这会导致 Ingress Operator 在健康检查完成后不会关闭到负载均衡器(LB)的 TCP 连接。为下一个健康检查创建新的连接,而不使用现有连接。因此,在负载均衡器上构建的连接,并在负载均衡器上创建太多连接。在这个版本中,在连接到 Canary 路由时,keepalive
守护进程会被禁用,并在每次运行 Canary 探测时都进行新的连接。(BZ#2037447) -
在以前的版本中,Ingress Controller 在路由器部署中没有将
allowPrivilegeEscalation
值设置为 false,这会导致路由器 Pod 被选择到不正确的安全上下文约束(SCC)中,并创建与自定义 SCC 冲突。在这个版本中,将allowPrivilegeEscalation
值设置为true
,确保路由器 Pod 被选为正确的 SCC,并避免与自定义 SCC 冲突。(BZ#2007246) -
在以前的版本中,当 Canary 路由没有被接受到 Ingress Controller 时,Ingress Operator 状态条件没有显示为
degraded
。因此,当其状态条件显示为not admitted
时,canary 路由可能会显示为valid
。在这个版本中,Ingress Operator 状态可以更准确地反映 canary 控制器的状态。(BZ#2021446) -
在以前的版本中,
openshift-router
进程会简单忽略SIGTERM
关闭信号。这会导致容器忽略 Kubernetes 关闭请求,从而导致一小时的关机时间。在这个版本中,路由器会响应SIGTERM
信号。(BZ#2076297) -
在以前的版本中,当删除接受路由的 Ingress Controller 被删除或添加分片配置时,会给出一个失败的
admitted
状态。在这个版本中,Ingress Controller 会清除unadmitted
路由的状态,避免了失败状态的情况。(BZ#1944851) -
在以前的版本中,使用版本 4.7 或更早版本安装的 OpenShift Container Platform 集群会维护一个
service.beta.kubernetes.io/aws-load-balancer-internal
注解值0.0.0.0/0
。使用 4.8 或更高版本安装的集群具有注解值true
。对于检查注解值true
的 AWS 云供应商实现,如果其值为0.0.0.0/0
,则会返回错误的结果。因此,将集群升级到 4.10 将无法完成。在这个版本中,注解值被规范化为true
,以便集群升级可以完成。(BZ#2055470)
可伸缩性和性能
- 在此次更新之前,SRO 默认安装了 Node Feature Discovery(NFD),无论是否安装了 NFD。如果安装了 NFD,这会导致 SRO 部署失败。SRO 不再默认部署 NFD。
Storage
- 在以前的版本中,当用户创建小于 20 GiB 的持久性卷声明(PVC)时,OpenShift Container Platform 附带的 Alibaba Container Storage Interface(CS)驱动程序会返回错误。这是因为 Alibaba Cloud 只支持大于 20 GiB 的卷。在这个版本中,Alibaba CSI 驱动程序会自动将所有卷大小增加到至少 20 GiB,较小的 PVC 现在会被动态置备。这会提高成本。管理员可以对受限环境中的每个命名空间的 PVC 数量使用配额来限制成本。(BZ#2057495)
-
在以前的版本中,Local Storage Operator(LSO)会添加对它创建的持久性卷(PV)的所有者引用,这样删除节点也会为 PV 发出删除请求。这可能会导致 PV 在仍附加到 pod 时处于
Terminating
状态。LSO 不再创建这个 OwnerReference,这意味着集群管理员必须在从集群中删除节点后删除任何未使用的 PV。(BZ#2061447)如需更多信息,请参阅使用本地卷的持久性存储。 - 在这个版本中,确保 GCP CSI Driver 被 GCP CSI Driver 正确置备只读卷。(BZ#1968253)
- OpenShift Container Platform 允许安装由上游社区或 VMware 提供的 vSphere CSI 驱动程序。虽然红帽不支持这个驱动程序,但集群管理员仍然可以安装和使用,因为它的功能比红帽提供的 vSphere CSI 驱动程序更多。OpenShift Container Platform 可以使用上游和 VMware vSphere CSI 驱动程序升级到 4.11,但会警告存在第三方 CSI 驱动程序。如需更多信息,请参阅 (BZ#2089419) 和 (BZ#2052071)。
- 在这个版本中,Amazon Web Services(AWS)的默认凭证请求被修改,允许使用客户管理的密钥从 Key Managment Service(KMS)挂载加密卷。如果管理员打算在 AWS 上使用客户管理的密钥以手动模式创建凭证请求的管理员,则需要手动应用这些更改。其他管理员不应受到此更改的影响。(BZ#2049872)
- 在以前的版本中,删除在 IBM Cloud 上部署的 OpenShift Container Platform 集群后,后端存储卷不会被删除。这将使集群资源不能被完全删除。在这个版本中,增加了对安装程序和 Container Storage Interface(CSI)驱动程序的支持,从而导致在集群被删除后删除后端卷。(BZ#2047732)
Web 控制台 (开发者视角)
- 在此次更新之前,当输入无效的 devfile 存储库(早于 devfile v2.2)时,Git Import 表单会显示错误消息。在这个版本中,错误消息会指出 devfile 早于 v2.2。(BZ#2046435)
- 在此次更新之前,如果集群中没有 ConsoleLink CR (openshift-blog),则博客链接未定义。点博客链接没有重定向到 OpenShift 博客。在这个版本中,即使集群中的 ConsoleLink CR(openshift-blog)没有包括 ConsoleLink CR (openshift-blog)也会添加回退到 https://developers.redhat.com/products/openshift/whats-new 的链接。(BZ#2050637)
- 在此次更新之前,kafka CR 的 API 版本已更新。此版本不支持旧版本,因此在 Create Event Source - KafkaSource 事件中显示一个空的 Bootstrap 服务器,即使这个服务器已创建。在这个版本中,Kafka CR 的更新 API 支持旧版本,并在 Create Event Source - KafkaSource 表单中显示 Bootstrap 服务器列表。(BZ#2058623)
- 在此次更新之前,当您使用 Import from Git 表单导入私有 Git 存储库时,不会识别正确的导入类型和构建器镜像,因为 secret 不会被解码。在这个版本中,Import from Git 表单会解码 secret 来获取私有存储库详情。(BZ#2053501)
- 在此次更新之前,从开发人员的角度来看,Observe 仪表板为最近查看的工作负载打开,而不是您在 Topology 视图中选择的仪表板。出现这个问题的原因是,会话首选使用 redux 存储,而不是 URL 中的查询参数。在这个版本中,Observe 仪表板根据 URL 中的查询参数呈现组件。(BZ#2052953)
-
在此次更新之前,即使集群中不存在,用于以硬编码值
gp2
作为默认存储类的 Pipeline。在这个版本中,您可以使用默认的指定的存储类名称,而不是硬编码的值。(BZ#2084635) -
在此次更新之前,在运行高容量管道日志时,auto-scroll 功能无法正常工作,日志会显示旧的信息。运行大量管道日志会为
scrollIntoView
方法生成大量调用。在这个版本中,高容量管道日志不会为scrollIntoView
方法生成任何调用,并提供一个平稳的自动进度功能。(BZ#2014161) - 在此次更新之前,当使用 Create RoleBinding 表单创建 RoleBinding 时,主题名称是必需的。缺少主体名称无法加载项目访问选项卡。在这个版本中,没有 Subject Name 属性的 RoleBinding 不会在 Project Access 选项卡中列出。(BZ#2051558)
-
在此次更新之前,事件源的 sink 和触发器会显示所有资源,即使这些资源是独立或者支持
k-native 服务
、Broker
或KameletBinding
的一部分。在 sink 下拉列表中显示的地址资源。在这个版本中,添加了一个过滤器来仅显示独立资源作为接收器。(BZ#2054285) - 在此次更新之前,拓扑视图的边栏中的空标签页在渲染前不会被过滤。这在拓扑视图中显示 Workloads 无效标签页。在这个版本中,在渲染前会正确过滤空标签页。(BZ#2049483)
-
在此次更新之前,当使用 Start Last Run 按钮启动管道时,创建的
PipelineRun
的started-by
注解没有更新为正确的用户名,因此部分触发的用户名没有显示正确的用户名。在这个版本中,start-by
注解值更新为正确的用户名,由部分触发的显示了启动管道的正确用户的用户名。(BZ#2046618) -
在此次更新之前,
ProjectHelmChartRepository
CR 不会在集群中显示。因此,集群中还没有初始化此 CR 的 API 模式。在这个版本中,ProjectHelmChartRepository
显示在集群中。(BZ#2054197) - 在此次更新之前,当您在拓扑中使用键盘进行导航时,所选项目不会被突出显示。借助此次更新,使用键盘突出显示和更新样式进行导航。(BZ#2039277)
- 在此次更新之前,web 终端在默认视图之外打开的布局,且无法调整大小。在这个版本中,web 终端会在默认视图中打开,并正确调整大小。(BZ#2022253)
- 在此次更新之前,一些侧边栏项不包含命名空间上下文。因此,当从另一个浏览器打开链接或从不同的活跃命名空间中打开链接时,Web 控制台不会切换到正确的命名空间。在这个版本中,在打开 URL 时会选择正确的命名空间。(BZ#2039647)
- 在以前的版本中,当使用控制台实例化模板时,其参数将存储为 secret 资源。移除模板后,secret 会保留下来。因此,在集群中创建了一个不必要的 secret 构建。在这个版本中,所有权引用添加到映射到模板实例的 secret 中。现在,当模板实例被删除时,secret 也会被删除。(BZ#2015042)
-
在这个版本中,
jsonData
属性已弃用,并替换为ping
源中的数据
。(BZ#2084438) -
在以前的版本中,对于带有多于 100 个节点的集群,OpenShift Container Platform Web 控制台中的拓扑视图会失败。在这个版本中,拓扑视图会显示超过 100 个节点的集群有一个
LimitExceeded
状态。提供了一个选项,用于改为使用 Search 页面来查看资源。或者,您可以点 Show topology anyway 来继续载入拓扑视图。(BZ#2060329) -
在以前的版本中,如果服务公开多个服务端口,路由目标端口为
8080
,尝试更改目标端口会导致另一个服务端口被更新,而不是端口8080
服务端口。在这个版本中,当设置了新的目标端口时,与活跃目标端口对应的服务端口会被替换。(BZ#2077943) -
在以前的版本中,用于管理实例 API 的
git
检测,以获取存储库信息无法用于自托管 GitHub 和 Bitbucket 的存储库。在这个版本中,检测自托管的 GitHub 和 Bitbucket 实例存储库可以正常工作。(BZ#2038244) -
在以前的版本中,在 EventSource 创建表单中,
apiVersion
不会以正确格式传递给 Resource 下拉菜单。这会导致在 EventSource 创建下选择InContext
,这会从 Resource 下拉菜单中选择它。在这个版本中,Resource 下拉菜单中包括了来自InContext
的资源
。(BZ#2070020) -
在以前的版本中,Pipeline metrics 页面会显示指标查询的所有 API 调用,并失败且显示
404
错误。在这个版本中,prometheus-tenancy
API 用于获取管道的指标数据。现在,管道指标页面显示对具有至少查看命名空间访问权限的非 admin 用户的所有数据和图形。(BZ#2041769) - 在以前的版本中,您可以使用 Crtl+space 键盘快捷键访问快速搜索并添加模态,但您不能使用相同的键盘快捷方式关闭它们。在这个版本中,您可以使用 Ctrl+space 键盘快捷键关闭快速搜索并添加模态。(BZ#2093586)
-
在以前的版本中,如果用户被删除,则不会删除为用户设置创建的资源。因此,
openshift-console-user-settings
命名空间中创建的资源永远不会被删除。在这个版本中,ownerReference
会在创建时添加到您的元数据中。这允许在用户不再存在时自动删除资源。(BZ#2019564)
1.7. 技术预览功能
这个版本中的一些功能当前还处于技术预览状态。它们并不适用于在生产环境中使用。请参阅红帽门户网站中关于对技术预览功能支持范围的信息:
在下表中,功能被标记为以下状态:
- TP: 技术预览
- GA: 正式发行
- -: Not Available
- DEP: 已弃用
功能 | OCP 4.9 | OCP 4.10 | OCP 4.11 |
---|---|---|---|
PTP 单 NIC 硬件配置为边界时钟 | - | TP | GA |
PTP dual NIC 硬件配置为边界时钟 | - | - | TP |
带有普通时钟的 PTP 事件 | TP | GA | GA |
带有边界时钟的 PTP 事件 | - | TP | GA |
共享资源 CSI 驱动程序和 OpenShift 构建中的 CSI 卷 | - | TP | TP |
服务绑定 | TP | GA | GA |
CSI 卷扩展 | TP | TP | GA |
CSI AliCloud Disk Driver Operator | - | GA | GA |
CSI Azure Disk Driver Operator | TP | GA | GA |
CSI Azure File Driver Operator | - | TP | GA |
CSI Azure Stack Hub Driver Operator | GA | GA | GA |
CSI GCP PD Driver Operator | GA | GA | GA |
CSI IBM VPC Block Driver Operator | - | GA | GA |
CSI AWS EFS Driver Operator | TP | GA | GA |
CSI vSphere Driver Operator | TP | GA | GA |
CSI 自动迁移(AWS EBS、Azure 文件、GCP 磁盘、VMware vSphere) | TP | TP | TP |
CSI 自动迁移(Azure Disk、OpenStack Cinder) | TP | TP | GA |
CSI inline 临时卷 | TP | TP | TP |
CSI 通用临时卷 | - | - | GA |
共享资源 CSI 驱动程序 | - | TP | TP |
使用 Local Storage Operator 进行自动设备发现和置备 | TP | TP | TP |
OpenShift Pipelines | GA | GA | GA |
OpenShift GitOps | GA | GA | GA |
OpenShift 沙盒容器 | TP | GA | GA |
使用 kvc 向节点添加内核模块 | TP | TP | TP |
非抢占优先级类 | TP | TP | GA |
Kubernetes NMState Operator | TP | GA | GA |
支持的安装程序 | TP | GA | GA |
| TP | TP | GA |
| - | - | TP |
| TP | TP | TP |
| TP | TP | TP |
OpenShift on ARM platforms | - | GA | GA |
无服务器功能 | TP | TP | TP |
Memory Manager | GA | GA | GA |
Alibaba Cloud 的云控制器管理器 | - | TP | TP |
Amazon Web Services 的云控制器管理器 | TP | TP | TP |
Google Cloud Platform 的云控制器管理器 | - | TP | TP |
IBM Cloud 的云控制器管理器 | - | TP | TP |
Microsoft Azure 的云控制器管理器 | TP | TP | TP |
Red Hat OpenStack Platform(RHOSP)的云控制器管理器 | TP | TP | TP |
VMware vSphere 的云控制器管理器 | - | TP | TP |
驱动程序工具包 | TP | TP | TP |
Special Resource Operator (SRO) | TP | TP | TP |
简单内容访问 | TP | GA | GA |
Node Health Check Operator | TP | TP | GA |
二级网络的 Pod 级别绑定 | - | GA | |
IPv6 双栈 | GA | GA | GA |
可选择 Cluster Inventory | - | TP | TP |
异构集群 | - | - | TP |
超线程感知 CPU Manager 策略 | - | TP | |
异构集群 | - | - | TP |
动态插件 | - | TP | TP |
混合 Helm Operator | - | TP | TP |
用户定义的项目监控的警报路由 | - | TP | GA |
使用 oc-mirror CLI 插件断开连接镜像镜像 | - | TP | GA |
在 RHEL 中的 BuildConfig 中挂载共享权利 | - | TP | TP |
在 RHEL 中挂载共享 secret | - | GA | GA |
支持 RHOSP DCN | - | TP | TP |
支持 RHOSP 上集群的外部云供应商 | - | TP | TP |
RHOSP 上集群的 OVS 硬件卸载 | - | TP | GA |
外部 DNS Operator | - | GA | GA |
Web Terminal Operator | TP | GA | GA |
基于平台监控指标的警报规则 | - | - | TP |
AWS Load Balancer Operator | - | - | TP |
Node Observability Operator | - | - | TP |
基于 Java 的 Operator | - | - | TP |
为 OpenShift Container Platform 托管的 control plane | - | - | TP |
使用 Cluster API 管理机器 | - | - | TP |
Topology Aware Lifecycle Manager | - | TP | TP |
使用安装程序置备的基础架构在 Alibaba Cloud 上安装集群 | - | TP | TP |
1.8. 已知问题
在 OpenShift Container Platform 4.1 中,匿名用户可以访问发现端点。之后的版本会取消对这端点的访问,以减少可能的安全漏洞攻击面。一些发现端点被转发到聚合的 API 服务器。但是,升级的集群中会保留未经身份验证的访问,因此现有用例不会中断。
如果您是一个从 OpenShift Container Platform 4.1 升级到 4.11 的集群的集群管理员,您可以撤销或继续允许未经身份验证的访问。除非对未经身份验证的访问有特殊需要,否则您应该撤销它。如果您继续允许未经身份验证的访问,请注意相关的风险。
警告如果您的应用程序依赖未经身份验证的访问,在撤销了未经身份验证的访问后可能会收到 HTTP
403
错误。使用以下脚本撤销对发现端点的未经身份验证的访问:
## Snippet to remove unauthenticated group from all the cluster role bindings $ for clusterrolebinding in cluster-status-binding discovery system:basic-user system:discovery system:openshift:discovery ; do ### Find the index of unauthenticated group in list of subjects index=$(oc get clusterrolebinding ${clusterrolebinding} -o json | jq 'select(.subjects!=null) | .subjects | map(.name=="system:unauthenticated") | index(true)'); ### Remove the element at index from subjects array oc patch clusterrolebinding ${clusterrolebinding} --type=json --patch "[{'op': 'remove','path': '/subjects/$index'}]"; done
此脚本从以下集群角色绑定中删除未经身份验证的对象:
-
cluster-status-binding
-
discovery
-
system:basic-user
-
system:discovery
-
system:openshift:discovery
-
-
oc annotate
命令不适用于包含了等号(=
)的 LDAP 组名称,因为命令使用等号作为注释名称和值之间的分隔符。作为临时解决方案,使用oc patch
或oc edit
添加注解。(BZ#1917280) - 在监控堆栈中,如果您为用户定义的警报启用并部署了专用的 Alertmanager 实例,您可以在 OpenShift Container Platform Web 控制台的 Developer 视角中静默警报。这个问题已在 4.11.8 中解决。(BZ#2100860)
-
在新安装的 OpenShift Container Platform 4.11 集群中,平台监控警报没有
openshift_io_alert_source="platform"
标签。这个问题不会影响从以前的次版本升级的集群。这个问题目前还没有临时解决方案。(BZ#2103127) - 在 Red Hat OpenStack Platform(RHOSP)中,当端口池使用各种批量端口创建请求填充时,潜在的问题可能会影响 Kuryr。在这些批量请求期间,如果其中一个 IP 地址的 IP 分配失败,Neutron 会为所有端口重试操作。这个问题已在之前的勘误中解决,但您可以为端口池批处理设置小的值,以避免大量的端口创建请求。(BZ#2024690)
- oc-mirror CLI 插件无法与版本 4.9 相比,对 OpenShift Container Platform 目录进行镜像(mirror)。(BZ#2097210)
-
如果镜像设置配置中的
archiveSize
值小于容器镜像大小,则 oc-mirror CLI 插件可能无法将镜像设置为目标镜像 registry。(BZ#2106461) 在 OpenShift Container Platform 4.11 中,MetalLB Operator 范围已从命名空间改为集群,这会导致从以前的版本升级失败。
作为临时解决方案,删除以前版本的 MetalLB Operator。不要删除 MetalLB 自定义资源的命名空间或实例,并部署新的 Operator 版本。这会保持 MetalLB 运行并配置。
如需更多信息,请参阅升级 MetalLB Operator。(BZ#2100180)
-
删除双向转发检测 (BFD) 配置集并删除添加到边框网关协议 (BGP) 对等资源中的
bfdProfile
不会禁用 BFD。相反,BGP 对等点开始使用默认的 BFD 配置集。要从 BGP peer 资源禁用 BFD,请删除 BGP 对等配置,并在没有 BFD 配置集的情况下重新创建它。(BZ#2050824) -
OpenShift Container Platform 4.11 的 OpenShift CLI(
oc
)在 macOS 上无法正常工作,因为处理 Go 1.18 库中的不可信证书有改变。由于此更改,oc login
和其它oc
命令可能会失败并带有certificate is not trusted
错误,而不会在 macOS 上运行时继续进一步。在 Go 1.18 中正确处理错误处理(由 Go 问题 #52010跟踪),其临时解决方案是使用 OpenShift Container Platform 4.10oc
CLI。请注意,当将 OpenShift Container Platform 4.10oc
CLI 与 OpenShift Container Platform 4.11 集群搭配使用时,无法使用oc serviceaccounts get-token <service_account>
命令获取令牌。(BZ#2097830) (BZ#2109799) -
目前,Add Helm Chart Repositories 表单中有一个已知问题来扩展项目的 Developer Catalog。Quick Start 指南显示您可以在所需命名空间中添加
ProjectHelmChartRepository
CR,但不提到执行 kubeadmin 所需的权限。(BZ#2054197) -
当前存在一个已知问题。如果您创建使用 TLS 验证的
ProjectHelmChartRepository
自定义资源(CR)实例,则无法列出软件仓库并执行与 Helm 相关的操作。当前没有解决此问题的方法。(HELM-343) 在裸机 IBM Power 上运行 OpenShift Container Platform 时,存在一个已知问题:Petitboot bootloader 无法为某些 RHCOS live 镜像填充引导配置。在这种情况下,在使用 PXE 启动节点安装 RHCOS 后,预期的实时镜像磁盘配置可能无法可见。
作为临时解决方案,您可以使用
kexec
从 Petitboot shell 手动引导。识别存放 live 镜像的磁盘,在这个示例中为
nvme0n1p3
,再运行以下命令:# cd /var/petitboot/mnt/dev/nvme0n1p3/ostree/rhcos-*/ # kexec -l vmlinuz-*.ppc64le -i initramfs-*.img -c "ignition.firstboot rd.neednet=1 ip=dhcp $(grep options /var/petitboot/mnt/dev/nvme0n1p3/loader/entries/ostree-1-rhcos.conf | sed 's,^options ,,')" && kexec -e
- 在断开连接的环境中,SRO 不会尝试从主 registry 获取 DTK。它改为从镜像 registry 获取。(BZ#2102724)
-
进程计数器在没有运行
phc2sys
的接口中显示不正确的phc2sys
进程信息。当前没有解决此问题的方法。(OCPBUGSM-46005) - 当在具有双 NIC PTP 配置的节点上有一个网络接口控制器(NIC)时,会为两个 PTP 接口生成一个错误事件。当前没有解决此问题的方法。(OCPBUGSM-46004)
- 在低带宽系统中,系统时钟在每几个小时断开连接并恢复了 PTP 普通时钟后,时钟不会与 PTP 普通时钟同步。当前没有解决此问题的方法。(OCPBUGSM-45173)
-
在以前的版本中,如果您使用 OVN-Kubernetes 集群网络供应商,如果带有
type=LoadBalancer
的服务被配置为internalTrafficPolicy=cluster
,那么所有流量也会路由到默认网关,即使主机路由表包含更好的路由。现在,会使用最佳路由,而不是始终使用默认网关。(BZ#2060159) -
当 OVN 集群有 75 个 worker 节点时,同时创建 2000 或更多服务和路由对象可能会导致在
ContainerCreating
状态中同时创建的 pod 挂起。如果发生这个问题,输入oc describe pod <podname>
命令会显示带有以下警告信息的事件:FailedCreatePodSandBox…failed to configure pod interface: timed out waiting for OVS port binding (ovn-installed)
。当前没有解决此问题的方法。(BZ#2084062) -
目前,OVN-Kubernetes 存在一个已知问题:当
NetworkManager
服务重启节点时,节点都会丢失网络连接,必须恢复。(BZ#2074009) -
默认安全性上下文约束 (SCC) 可能会导致 pod 使用通用临时卷处于
Pending
状态。要临时解决这个问题,您可以创建自定义 SCC。如需更多信息,请参阅带有 SCC Generic Ephemeral Volumes 的 Pod 会失败。有关临时解决方案,请参阅允许使用通用临时卷。(BZ#2100429) 如果您有 OpenShift 沙盒容器,在升级集群时,您可能会遇到 Machine Config Operator(MCO)pod 变为
CrashLoopBackOff
状态的问题,pod 的openshift.io/scc
注解会显示sandboxed-containers-operator-scc
,而不是默认的hostmount-anyuid
值。如果发生了这种情况,将
sandboxed-containers-operator-scc
SCC 中的seLinuxOptions
策略临时改为不太严格的RunAsAny
,以便准入进程会首选hostmount-anyuid
SCC 而不是它。运行以下命令来更改
seLinuxOptions
策略:$ oc patch scc sandboxed-containers-operator-scc --type=merge --patch '{"seLinuxContext":{"type": "RunAsAny"}}'
运行以下命令重启 MCO pod:
$ oc scale deployments/machine-config-operator -n openshift-machine-config-operator --replicas=0
$ oc scale deployments/machine-config-operator -n openshift-machine-config-operator --replicas=1
运行以下命令,将
sandboxed-containers-operator-scc
的seLinuxOptions
策略恢复到其原始MustRunAs
值:$ oc patch scc sandboxed-containers-operator-scc --type=merge --patch '{"seLinuxContext":{"type": "MustRunAs"}}'
运行以下命令,验证
hostmount-anyuid
SCC 是否已应用到 MCO pod:$ oc get pods -n openshift-machine-config-operator -l k8s-app=machine-config-operator -o yaml | grep scc openshift.io/scc: hostmount-anyuid
-
Pipeline metrics API 不支持来自 RHOSP 1.6 及之后的版本中的、所需的
pipelinerun/taskrun
histogram 值。因此,Pipeline → Details 页面中的 Metrics 选项卡会被删除,而不是显示不正确的值。当前没有解决此问题的临时解决方案。(链接: BZ#2074767) - 有些 Alibabacloud 服务不会将集群的所有资源放在指定资源组中。因此,OpenShift Container Platform 安装程序创建的一些资源被放置在默认的资源组中。当前没有解决此问题的方法。(BZ#2096692)
-
重新引导每个集群节点后,集群 Operator
network
和kube-apiserver
会在重启集群节点后变为degraded
,集群会开启不健康状态。当前没有解决此问题的方法。(BZ#2102011) -
当在
install-config.yaml
中指定resourceGroupID
时,删除 bootstrap 资源和 OpenShift Container Platform 安装失败时会出现一个错误。为了解决这个问题,请不要在install-config.yaml
中指定resourceGroupID
。(BZ#2100746) -
在 RHEL 计算节点上扩展中存在一个已知问题。新节点可能会变为
Ready
,但 Ingress pod 无法在这些节点上变为Running
,且扩展不会成功。作为临时解决方案,使用 RHCOS 节点扩展可以正常工作。(BZ#2056387) -
在 Google Cloud Platform (GCP) 中创建
machineset
后,capg-controller-manager
机器会停留在Provisioning
中。当前没有解决此问题的方法。(BZ#2107999) -
Nutanix 存在一个已知问题,其中
destroy cluster
命令不会清理由集群创建的持久性卷 (PV)。为了解决这个问题,您需要手动清理 PV。(BZ#2108700) - Nutanix 安装中存在一个已知问题:如果您使用带有 Prism Central 2022.x 的 4096 位证书,则安装会失败。反之,使用 2048 位证书。(KCS)
-
目前,在创建和使用不正确的语法或值成功编辑
egressqos
时存在一个已知问题。egressqos
中的错误值不应成功创建。当前没有解决此问题的方法。(BZ#2097579) -
由于在某些镜像索引中包含旧镜像,运行
oc adm catalog mirror
和oc image mirror
可能会导致以下错误:error: unable to retrieve source image
。作为临时解决方案,您可以使用--skip-missing
选项绕过错误并继续下载镜像索引。如需更多信息,请参阅 Service Mesh Operator 镜像失败。 - 当虚拟功能(VF)已存在时,无法在物理功能(PF)上创建 macvlan。此问题会影响 Intel E810 NIC。(BZ#2120585)
-
如果通过 ZTP 部署的集群具有不合规的策略,且没有
ClusterGroupUpdates
对象,则必须重启 TALM pod。重启 TALM 会创建正确的ClusterGroupUpdates
对象,它强制执行策略合规性。(OCPBUGS-4065) -
目前,当您在 macOS 上运行安装程序以便在 VMware vSphere 上安装 OpenShift Container Platform 集群时,存在一个证书合规问题,特别是
x509: certificate is not standards compliant
。这个问题与golang
编译器的已知问题相关,其中编译器无法识别新支持的 macOS 证书标准。这个问题不存在临时解决方案。(OSDOCS-5694) - 目前,当使用包含大量文件的持久性卷 (PV) 时,pod 可能无法启动,或者可能需要很长时间才能启动。如需更多信息,请参阅此知识库文章。(BZ1987112)
1.9. 异步勘误更新
OpenShift Container Platform 4.11 的安全更新、程序漏洞修正、功能增强更新将会通过红帽网络以异步勘误的形式发布。所有 OpenShift Container Platform 4.11 勘误都可以通过红帽客户门户网站获得。OpenShift Container Platform 生命周期包括了详细的与异步勘误相关的内容。
红帽客户门户网站的用户可以在红帽订阅管理(RHSM)帐户设置中启用勘误通知功能。当勘误通知被启用后,每当用户注册的系统相关勘误被发布时,用户会收到电子邮件通知。
用户的红帽客户门户网站账户需要有注册的系统,以及使用 OpenShift Container Platform 的权限才可以接收到 OpenShift Container Platform 的勘误通知。
本节的内容将会持续更新,以提供以后发行的与 OpenShift Container Platform 4.11 相关的异步勘误信息。异步子版本(例如,OpenShift Container Platform 4.11.z)的具体信息会包括在相应的子章节中。此外,在发行公告中因为空间限制没有包括在其中的勘误内容也会包括在这里的相应的子章节中。
对于任何 OpenShift Container Platform 发行版本,请仔细参阅有关 更新集群 的说明。
1.9.1. RHSA-2022:5069 - OpenShift Container Platform 4.11.0 镜像发行版本、程序错误修正和安全更新公告
发布日期: 2022 年 8 月 10 日
OpenShift Container Platform release 4.11.0 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2022:5069 公告中。此更新中包括的 RPM 软件包由 RHSA-2022:5068 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.0 --pullspecs
1.9.2. RHSA-2022:6103 - OpenShift Container Platform 4.11.1 程序错误修复和安全更新
发布日期: 2022 年 8 月 23 日
OpenShift Container Platform release 4.11.1 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2022:6103 公告中。此更新中包括的 RPM 软件包由 RHSA-2022:6102 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.1 --pullspecs
1.9.2.1. 功能
1.9.2.1.1. 二级网络的 pod 级别绑定的正式发布
在这个版本中,使用 pod 级别绑定已正式发布。
1.9.2.2. 程序错误修复
在以前的版本中,Bond-CNI 的功能只限制为 active-backup 模式。在这个版本中,支持的绑定模式如下:
-
balance-rr
- 0 -
active-backup
- 1 -
balance-xor
- 2
-
1.9.2.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.3. RHBA-2022:6143 - OpenShift Container Platform 4.11.2 程序错误修复更新
发布日期: 2022 年 8 月 29 日
OpenShift Container Platform release 4.11.2 现已正式发布。其程序错误修正列表包括在 RHBA-2022:6143 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:6142 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.2 --pullspecs
1.9.3.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.4. RHSA-2022:6287 - OpenShift Container Platform 4.11.3 程序错误修复更新和安全更新
发布日期: 2022 年 9 月 6 日
OpenShift Container Platform release 4.11.3 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2022:6287 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:6286 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.3 --pullspecs
1.9.4.1. 功能
1.9.5. 可伸缩性和性能
从 OpenShift Container Platform 4.11.3 开始,用户不再需要在 agent_service_config.yaml
文件中设置 Root FS 镜像 URL (rootFSUrl
)。rootFSUrl
现在会自动处理。
1.9.5.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.6. RHBA-2022:6376 - OpenShift Container Platform 4.11.4 程序错误修复更新
发布日期: 2022 年 9 月 12 日
OpenShift Container Platform release 4.11.4 现已正式发布。其程序错误修正列表包括在 RHBA-2022:6376 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:6375 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.4 --pullspecs
1.9.6.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.7. RHSA-2022:6536 - OpenShift Container Platform 4.11.5 程序错误修复和安全更新
发布日期: 2022 年 9 月 20 日
OpenShift Container Platform 版本 4.11.5 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2022:6536 公告中。此更新中包括的 RPM 软件包由 RHSA-2022:6535 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.5 --pullspecs
1.9.7.1. 已知问题
-
分片默认 Ingress Controller 会破坏 OpenShift Container Platform 工厂路由,如
canary
、oauth
和console
。作为临时解决方案,您可以手动在路由中添加匹配的标签和表达式。(BZ#2024946)
1.9.7.2. 程序错误修复
-
在以前的版本中,在路由器部署前,
routeSelector
更新会清除 Ingress Controller 的路由状态。因此,路由状态会错误预先填充。在这个版本中,路由状态使用routeSelector
更新清除。(BZ#2110528)
1.9.7.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.8. RHBA-2022:6659 - OpenShift Container Platform 4.11.6 程序错误修复更新
发布日期: 2022 年 9 月 28 日
OpenShift Container Platform release 4.11.6 现已正式发布。其程序错误修正列表包括在 RHBA-2022:6659 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:6658 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.6 --pullspecs
1.9.8.1. OpenShift Container Platform 4.11 RAN 新功能
1.9.8.1.1. 在更新失败后恢复集群
对于单节点 OpenShift,您可以使用 Topology Aware Lifecycle Manager (TALM) Operator 在 OpenShift Container Platform 版本更新前创建当前部署的备份。如果更新失败,使用备份将集群恢复到其预更新状态。如需更多信息,请参阅在升级前创建集群资源备份。
1.9.8.1.2. 在 PolicyGenTemplate
自定义资源 (CR) 中禁用 chronyd
如果从早期版本升级到 OpenShift Container Platform 4.11,则必须禁用 chronyd
。要禁用 chronyd
,在 Tuned PerformancePatch.yaml
文件的 .spec.profile.data
下的 [service]
部分添加以下行。TunedPerformancePatch.yaml
文件在组 PolicyGenTemplate
CR 中被引用:
[service] service.chronyd=stop,disable
如需更多信息,请参阅推荐的集群内核配置。
1.9.8.2. OpenShift Container Platform 4.11 RAN 已知问题
-
使用 RAN DU 配置集部署单节点 OpenShift 集群后,Open vSwitch 内核日志中会持续生成
openvswitch: cpu_id mismatch with handler threads
错误。(OCPBUGSM-46165) - 如果当前禁用了安全引导,且尝试使用 ZTP 来启用它,集群安装不会启动。当通过 ZTP 启用安全引导时,引导选项会在附加虚拟 CD 前进行配置。因此,从现有的硬盘引导时会打开安全引导。集群安装会卡住,因为系统永远不会从 CD 启动。(OCPBUGSM-45085)
-
如果在用于执行集群升级的订阅策略中指定无效的订阅频道,则 Topology Aware Lifecycle Manager 会在策略强制后显示成功升级,因为
Subscription
状态保持AtLatestKnown
。(OCPBUGSM-43618) -
如果 SRIOV-FEC Operator 通过单独的策略安装,并且
CatalogSource
会重复使用默认目录源的名称,Operator 安装可能会因为管理默认目录源而失败。要避免这个问题,SRIOV-FECCatalogSource
CR 应该添加到common-config-policy
中,Operator 订阅应添加到common-subscriptions-policy
中。要使用单独的策略安装 SRIOV-FEC Operator 时的一个临时解决方案,您必须确保这个 Operator 的CatalogSource
被唯一命名。(OCPBUGSM-39859) -
当应用到集群中的多个节点时,
SiteConfig
磁盘分区定义会失败。当使用SiteConfig
CR 置备紧凑集群时,在多个节点上创建一个有效的diskPartition
配置会失败,并显示 Kustomize 插件错误。(OCPBUGSM-44403) -
当您使用 ZTP 容器对
ArgoCD
资源进行补丁时,补丁会指向一个标签,它遵循该发行版本的最新容器版本。如果要将 ZTP 容器固定到发行版中的特定版本,则补丁文件argocd-openshift-gitops-patch.json
应该更新为指向特定版本。(OCPBUGSM-44261) 应用
BMCEventSubscription
CR 无法创建 Redfish 事件订阅。创建并应用订阅 YAML 文件后,不会看到活跃的 Redfish 订阅。作为临时解决方案,直接调用 API 并创建订阅。例如,运行以下命令来获取身份验证令牌:
$ curl -i --insecure --request POST --header "OData-Version: 4.0" \ --header "Content-Type: application/json" -d '{"UserName": <BMC_USERNAME>, \ "Password": <BMC_PASSWORD>}' https://<BMC_IP>/redfish/v1/SessionService/Sessions/ |grep 'X-Auth-Token'
输出示例
X-Auth-Token: 1234abcd5678efgh9012ijkl3456mnop
使用身份验证令牌创建 Redfish 事件订阅:
$ curl -X POST -i --insecure --header "X-Auth-Token: 1234abcd5678efgh9012ijkl3456mnop" \ -H 'Content-Type: application/json' --data-raw '{"Protocol": "Redfish", "Context": \ "Public", "Destination": "https://hw-event-proxy-openshift-hw-events.apps.example.com/webhook", \ "EventTypes": ["Alert"]}' https://<BMC_IP>/redfish/v1/EventService/Subscriptions
您应该会收到
201 Created
响应和一个带有Location: https://<BMC_IP>/redfish/v1/EventService/Subscriptions/35
标头,它表示成功创建 Redfish 事件订阅。(OCPBUGSM-43707)-
当使用 GitOps ZTP 管道在断开连接的环境中安装单节点 OpenShift 集群时,应该在集群中应用两个
CatalogSource
CR。CatalogSource
CR 中的一个会在多个节点重启后删除。作为临时解决方案,您可以更改目录源的默认名称,如certified-operators
和redhat-operators
。(OCPBUGSM-46245) -
在进行扩展测试过程中,几个集群无法更新。在启动应用了 Telecom vDU 配置的 OpenShift Container Platform 4.9.26 更新后,从
ClusterVersion
CR 启动的集群更新至 4.10.13 会在进程的15% 处出现问题,并等待集群 Operator 更新至目标版本。(OCPBUGSM-44655) -
有时,在 ZTP GitOps 管道单节点 OpenShift 安装过程中,Operator Lifecycle Manager registry-server 容器无法访问
READY
状态。使用新CatalogSource
创建订阅时,CatalogSource
仍然处于TRANSIENT_FAILURE
状态。(OCPBUGSM-44041) -
当您将 tuned 覆盖应用到 pod 并删除 tuned pod 以强制重启时,pod 应该重启,系统应正常运行。相反,可能会发生
systemd
挂起,从而导致系统停止响应。(RHELPLAN-131021) 当从带有静态 IPv6 地址配置的 live ISO 启动 ZT 系统机器时,网络管理器(
NetworkManager
)会在接口链接就绪前成功退出。这会留下没有配置的网络接口。作为临时解决方案,编辑AgentServiceConfig
CR 中引用的 RHCOS ISO,以将rd.net.timeout.carrier
附加到grub.cfg
文件中的内核参数:为正在安装的发行版本拉取
rhcos-live
ISO 镜像。可以通过运行以下命令从 hub 集群上的AgentServiceConfig
CR 检索 URL:$ oc get AgentServiceConfig agent -o yaml
将镜像挂载到
/mnt/iso/
目录中:$ mount rhcos-live.x86_64.iso /mnt/iso/
创建
iso-grub-cfg/
目录并改为该目录:$ mkdir iso-grub-cfg/; pushd iso-grub-cfg/
将
/mnt/iso/
目录的内容复制到您的工作目录中:$ rsync -avH /mnt/iso/* .
打开 GRUB 配置文件:
$ vim EFI/redhat/grub.cfg
-
将
rd.net.timeout.carrier=20
字符串附加到linux
引导行。
-
将
运行以下命令,返回到初始工作目录:
$ popd
从
iso-grub-cfg
目录中生成 ISO 文件:$ mkisofs -JR -graft-points -o rhcos-carrier-timeout.iso iso-grub-cfg
- 将更新的 ISO 镜像推送到 hub 集群可访问的服务器。
在 hub 集群中,更新安装发行版本的
AgentServiceConfig
CR 中的osImages
条目,以指向更新的 ISO 镜像:$ oc edit AgentServiceConfig agent
-
更新
url
字段,以指向更新的 ISO 镜像的 URL。
在重启使用 DU 配置集和工作负载测试应用程序的裸机 SNO 后,会发生内核故障。作为临时解决方案,您可以在性能配置集中添加附加内核参数:
apiVersion: performance.openshift.io/v2 kind: PerformanceProfile spec: additionalKernelArgs: - rcutree.kthread_prio=11
在 ZTP 集群部署中,裸机主机镜像置备可能会失败,并带有引用 HTTP 412 错误代码的错误:
Deploy step deploy.deploy failed with HTTPError: HTTP PATCH https://10.16.230.34/redfish/v1/Managers/1/VirtualMedia/EXT1 returned code 412. Base.1.8.GeneralError: A general error has occurred. See ExtendedInfo for more information. Extended information: [ {'MessageSeverity': 'Critical', 'MessageArgs': [], 'MessageId': 'Base.1.8.PreconditionFailed', 'Resolution': 'Try the operation again using the appropriate ETag.', '@odata.type': '#Message.v1_1_0.Message', 'Message': 'The ETag supplied did not match the ETag required to change this resource.'}]
此问题可能会影响各种服务器模型,包括运行旧固件的 Gen8 HP 机器和 Gen9 HP 机器。对于 Gen9 HP 机器,升级到最新的 iLO 固件可能会解决这个问题。对于 Gen8 HP 和其他机器,目前还没有临时解决方案。(OCPBUGS-1246)
在某些 Lenovo 模型中,例如 SE450,在 ZTP 集群部署期间进行裸机主机镜像置备可能会因为 HTTP 400 状态代码和
PropertyNotWriteable
错误而失败:HTTP response for PATCH https://192.168.26.178/redfish/v1/Systems/1/Pending: status code: 400, error: Base.1.8.GeneralError: A general error has occurred. See ExtendedInfo for more information., extended: [{'MessageArgs': ['BootSourceOverrideEnabled'], 'Resolution': 'Remove the property from the request body and resubmit the request if the operation failed.', MessageId': 'Base.1.8.PropertyNotWritable', 'Message': 'The property BootSourceOverrideEnabled is a read only property and cannot be assigned a value.', '@odata.type': '#Message.v1_1_0.Message', 'MessageSeverity': 'Warning'}]
目前,这个问题还没有临时解决方案。(OCPBUGSM-46305)
-
在裸机集群中的主要节点替换过程中,新的主主机会处于
Provisioning
状态,但该节点报告为Ready
。(OCPBUGSM-45772) - 使用 Red Hat Advanced Cluster Management (RHACM),当虚拟介质在将镜像写入磁盘后没有断开 ISO 时,Dell PowerEdge R640 服务器上的 spoke 集群部署会被阻止。作为临时解决方案,请通过 iDRAC 控制台中的 Virtual Media 选项卡手动断开 ISO。(OCPBUGSM-45884)
-
在双栈网络环境中,设备和连接会处于
ip-check
状态,且默认dhcp6
配置文件由nm-initrd-generator
程序生成。因此,不会生成/etc/resolve.conf
文件。作为临时解决方案,重启NetworkManager
服务。这会生成缺少的/etc/resolve.conf
文件,安装将继续。(RHELPLAN-127788, OCPBUGS-70) - 当在 Dell 硬件上使用 NVIDIA 品牌 Mellanox NIC 时,传入的数据包大于 preset F5 应用程序接收缓冲区(当前设置为 8K)到达不正确的 VLAN 标签。这会导致 NIC 发送不规则截断的数据包。(RHELPLAN-123058)
- 有时,使用 GitOps ZTP 管道配置并部署了单节点 OpenShift 节点会在第 2 天 Operator 配置期间无法访问。OpenShift Container Platform 集群安装成功完成,集群是健康的。重新引导后,节点将无法通过网络接口关闭。(OCPBUGSM-46688)
-
从 Git 仓库中删除
SriovNetworkNodePolicy
策略后,由移除策略管理的SriovNetworkNodePolicy
资源会保留在 spoke 集群中。(OCPBUGSM-34614) -
当将 PTP Operator 从 4.10 升级到 4.11 时,OpenShift 订阅会报告错误 no channel heads (而不是由另一个条目替代)在软件包
"ptp-operator"
的频道"stable"
中报告。但是,Operator 会成功升级。(OCPBUGSM-46114) -
目前,ZTP 源 CR 中的所有
PtpConfig
CR 包含phc2sysOpts
选项。因此,即使用户没有在用户PolicyGenTemplate
CR 中包括phc2sysOpts
,但phc2sysOpts
选项会添加到 spoke PTP 配置中。如果通过 ZTP 配置带有双 NIC 的 PTP,用户需要更新一个PtpConfig
CR,以便在 ZTP 完成后删除phc2sysOpts
选项。(OCPBUGSM-47798) -
当安全引导被启用,
stalld
服务无法启动,因为它无法打开/sys/kernel/debug/sched_features
文件。(OCPBUGSM-1466) -
当安全引导被启用,
kdump
服务可能会失败并带有kexec: failed to load kdump kernel
错误。要解决这个问题,在内核参数中添加efi=runtime
。(OCPBUGSM-97) - 如果 SNO 集群从 OCP 4.10 升级到 OCP 4.11,则 SNO 集群可能会在升级过程中重启三次。(OCPBUGSM-46704)
- 如果 Supermicro 服务器通过 ZTP 部署,则可能会选择不正确的引导设备,防止安装启动。(OCPBUGSM-369)
默认
dns-default
pod 缺少"target.workload.openshift.io/management:"
注解。因此,当在 SNO 上启用了工作负载分区功能时,pod 资源不会被修改,并固定到保留的 CPU 集。作为临时解决方案,集群管理员可以使用以下命令手动添加注解:$ oc annotate pod dns-default target.workload.openshift.io/management='{"effect":"PreferredDuringScheduling"}' -n openshift-dns
1.9.8.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.9. RHSA-2022:6732 - OpenShift Container Platform 4.11.7 程序错误修复更新
发布日期: 2022-10-03
OpenShift Container Platform release 4.11.7 现已正式发布。其程序错误修正列表包括在 RHBA-2022:6732 公告中。此更新没有 RPM 软件包。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.7 --pullspecs
1.9.9.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.10. RHBA-2022:6809 - OpenShift Container Platform 4.11.8 程序错误修复更新
发布日期: 2022 年 10 月 12 日
OpenShift Container Platform release 4.11.8 现已正式发布。其程序错误修正列表包括在 RHBA-2022:6809 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:6808 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.8 --pullspecs
1.9.10.1. 程序错误修复
- 在以前的版本中,在监控堆栈中,如果您为用户定义的警报启用了并部署了专用的 Alertmanager 实例,则无法在 OpenShift Container Platform Web 控制台的 Developer 视角中静默警报。在这个版本中,用户定义的警报可从 Developer 视角进行静默。(OCPBUGS-1790)
1.9.10.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.11. RHBA-2022:6897 - OpenShift Container Platform 4.11.9 程序错误修复更新
发布日期: 2022 年 10 月 17 日
OpenShift Container Platform 版本 4.11.9 现已正式发布。其程序错误修正列表包括在 RHBA-2022:6897 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:6896 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.9 --pullspecs
1.9.11.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.12. RHSA-2022:7201 - OpenShift Container Platform 4.11.12 程序错误修复和安全更新
发布日期: 2022 年 11 月 2 日
OpenShift Container Platform release 4.11.12 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2022:7201 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:7200 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.12 --pullspecs
1.9.12.1. 已知问题
-
如果从小于或等于 4.9 的版本逐步更新集群,
openshift-dns
命名空间
可能不包含将来的版本更新所需的 pod-security 标签。(OCPBUGS-1549)
1.9.12.2. 主要的技术变化
- 在这个版本中,当服务帐户签发者改为自定义令牌时,现有的绑定服务帐户令牌不再立即无效。相反,当更改服务帐户签发者时,以前的服务帐户签发者将继续被信任 24 小时。
如需更多信息,请参阅使用卷投射配置绑定服务帐户令牌。
1.9.12.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.13. RHBA-2022:7201 - OpenShift Container Platform 4.11.13 程序错误修复更新
发布日期: 2022 年 11 月 9 日
OpenShift Container Platform release 4.11.13 现已正式发布。其程序错误修正列表包括在 RHBA-2022:7290 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:7289 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.13 --pullspecs
1.9.13.1. 主要的技术变化
-
Cloud Credential Operator 实用程序(
ccoctl
)现在创建使用 AWS 安全令牌服务(AWS STS) 的区域端点的 secret。此方法与 AWS 推荐的最佳实践一致。
1.9.13.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.14. RHSA-2022:8535 - OpenShift Container Platform 4.11.16 程序错误修复和安全更新
发布日期: 2022 年 11 月 24 日
OpenShift Container Platform release 4.11.16 现已正式发布,其中包括安全更新。这个版本没有 IBM powerbuild。其程序错误修正列表包括在 RHSA-2022:8535 公告中。此更新中包括的 RPM 软件包由 RHSA-2022:8534 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.16 --pullspecs
1.9.14.1. 主要的技术变化
-
在这个版本中,当使用 Cloud Credential Operator 实用程序删除 GCP 资源时,您必须指定包含组件
CredentialsRequest
对象文件的目录。
1.9.14.2. 程序错误修复
- 在以前的版本中,如果您在指定 Azure 磁盘加密集 (DES) 或资源组 (RG) 名称时使用大写字母,验证将失败。在这个版本中,您可以在 DES 和 RG 名称中使用大写字母和小写字母。(OCPBUGS#4826)
1.9.14.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.15. RHBA-2022:8627 - OpenShift Container Platform 4.11.17 程序错误修复和安全更新
发布日期: 2022 年 11 月 28 日
OpenShift Container Platform release 4.11.17 现已正式发布,其中包括安全更新。这个版本没有 IBM powerbuild。其程序错误修正列表包括在 RHBA-2022:8627 公告中。此更新中包括的 RPM 软件包由 RHSA-2022:8626 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.17 --pullspecs
1.9.15.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.16. RHBA-2022:8698 - OpenShift Container Platform 4.11.18 程序错误修复更新
发布日期: 2022 年 12 月 5 日
OpenShift Container Platform release 4.11.18 现已正式发布。其程序错误修正列表包括在 RHBA-2022:8698 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:8697 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.18 --pullspecs
1.9.16.1. 功能增强
- IPv6 unsolicited neighbor 公告和 IPv4 gratuitous 地址解析协议现在默认在 SR-IOV CNI 插件中。使用单一根 I/O 虚拟化 (SR-IOV) CNI 插件创建的 Pod,其中 IP 地址管理 CNI 插件已经分配 IP,现在发送 IPv6 unsolicited 邻居公告和/或 IPv4 gratuitous 地址解析协议(在网络中)。此功能增强会通知特定 IP 的新 pod MAC 地址的主机,以使用正确的信息刷新 ARP/NDP 缓存。如需更多信息,请参阅支持的设备。
1.9.16.2. 主要的技术变化
- 以前命名的异构集群现在被称为 OpenShift Container Platform 文档中的多架构。如需更多信息,请参阅配置多架构集群
1.9.16.3. 程序错误修复
-
在以前的版本中,当没有显示内容时,一些对象存储实例会以
204 No Content
响应。OpenShift Container Platform 中使用的 Red Hat OpenStack Platform (RHOSP) SDK 无法正确处理 204s。在这个版本中,当列出 0 个项目时,安装程序会解决这个问题。(OCPBUGS-4081) -
在以前的版本中,载入的集群中
kube-apiserver
的推出时间会较慢,有时会超过 5 分钟推出部署超时。在这个版本中,推出部署时间会比较短,在 5 分钟阈值中。(OCPBUGS-3182)
1.9.16.4. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.17. RHSA-2022:8893 - OpenShift Container Platform 4.11.20 程序错误修复和安全更新
发布日期: 2022 年 12 月 15 日
OpenShift Container Platform release 4.11.20 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2022:8893 公告中。此更新中包括的 RPM 软件包由 RHBA-2022:8892 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.20 --pullspecs
1.9.17.1. 程序错误修复
- 在以前的版本中,当在 Google Cloud Platform (GCP) 上安装集群时,OpenShift Container Platform 安装程序会给出一个不完整的区域列表。在这个版本中,安装程序会包含所有支持的区域。(OCPBUGS-3023)
1.9.17.2. 已知问题
-
通过设置
spec.endpointPublishingStrategy.loadBalancer.scope
字段切换默认 Ingress Controller 的路由器范围会导致 Ingress Operator 降级。因此,使用该端点的路由(如 Web 控制台 URL)将无法访问。作为临时解决方案,重启其中一个路由器 pod 会将loadbalancer
下的多个实例返回到inService
状态。(OCPBUGS-2554)
1.9.17.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.18. RHSA-2022:9107 - OpenShift Container Platform 4.11.21 程序错误修复和安全更新
发布日期:2023 年 1 月 4 日
OpenShift Container Platform release 4.11.21 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2022:9107 公告中。这个版本没有 RPM 软件包。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.21 --pullspecs
1.9.18.1. 程序错误修复
- 在以前的版本中,在轮转 Red Hat OpenStack Platform (RHOSP) 凭证后,Cinder CSI 驱动程序将继续使用旧凭证,直到它被重启为止。如果旧凭证不再有效,则所有卷操作都会失败。在这个版本中,当 RHOSP 凭证轮转时,Cinder CSI 驱动程序会自动更新。(OCPBUGS-4103)
- 在以前的版本中,在 CoreDNS v1.7.1 中,所有上游缓存刷新都使用 DNSSEC。对于上游查询,bufsize 被硬编码为 2048 字节,从而导致一些 DNS 上游查询在网络基础架构中有 UDP Payload 限制时中断。在这个版本中,OpenShift Container Platform 总是将 bufsize 512 用于上游缓存请求,因为是 Corefile 中指定的 bufsize。如果客户依赖 bufsize 2048 不正确的功能进行上游 DNS 请求,则客户可能会受到影响。(OCPBUGS-2901)
-
在以前的版本中,当
vmSize
在具有区的区域无效时,会创建可用性集。但是,只有在没有区域的区域应创建可用性集。在这个版本中,提供了正确的vmSize
,并且不再为机器集提供可用性集。(OCPBUGS-2123)
1.9.18.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.19. RHBA-2023:0027 - OpenShift Container Platform 4.11.22 程序错误修复更新
发布日期:2023 年 1 月 9 日
OpenShift Container Platform release 4.11.22 现已正式发布。其程序错误修正列表包括在 RHBA-2023:0027 公告中。这个版本没有 RPM 软件包。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.22 --pullspecs
1.9.19.1. 程序错误修复
-
OpenShift Container Platform 4.11 发行版本更新了
install-config.yaml
文件,现在列出me-west1
, (Tel Aviv, Israel) 区域。运行openshift-install
二进制文件安装 OpenShift Container Platform 后,您可以为所选集群选择me-west1
区域。(OCPBUGS-4720) -
在以前的版本中,当内容应该显示时,一些对象存储实例会以
204 No Content
错误消息响应。OpenShift Container Platform 中使用的 Red Hat OpenStack Platform (RHOSP) SDK 无法正确处理 204s。在这个版本中,当 Swift 容器中列出零对象时,安装程序会解决这个问题。(OCPBUGS-5078) -
在以前的版本中,部署 OpenShift Container Platform 4.11.ec4 构建会失败,并显示最新的 RHCOS 镜像
412.86.202210072120-0
和rhel-86
镜像。因此,Red Hat Enterprise Linux CoreOS (RHCOS) 节点会停留在引导时。在这个版本中,部署可以成功完成。(OCPBUGS-2321)
1.9.19.2. 已知问题
任何超过 470 容器的 4.11 及之后的版本
arm64
集群,可能会导致额外的 pod 创建失败,并显示以下错误:runc create failed: unable to start container process: unable to init seccomp: error loading seccomp filter into kernel: error loading seccomp filter: errno 524"
这是因为 worker 节点上可以创建的 seccomp 配置集数量的 CoreOS 限制。最有可能在升级过程中,每个 pod 有多个容器的集群、worker 节点失败或 pod 扩展。这将在以后的 OpenShift Container Platform 版本中解决。(OCPBUGS-2637)
1.9.19.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.20. RHSA-2023:0069 - OpenShift Container Platform 4.11.24 程序错误修复和安全更新
发布日期:2023 年 1 月 19 日
OpenShift Container Platform release 4.11.24 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2023:0069 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:0068 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.24 --pullspecs
1.9.20.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.21. RHSA-2023:0245 - OpenShift Container Platform 4.11.25 程序错误修复和安全更新
发布日期:2023 年 1 月 23 日
OpenShift Container Platform release 4.11.25 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2023:0245 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:0244 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.25 --pullspecs
1.9.21.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.22. RHSA-2023:0565 - OpenShift Container Platform 4.11.26 程序错误修复和安全更新
发布日期:2023 年 2 月 7 日
OpenShift Container Platform release 4.11.26 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2023:0565 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:0564 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.26 --pullspecs
1.9.22.1. 已知问题
- 此发行版本回归功能,SR-IOV 二级网络接口配置带有附加到 pod 的静态 MAC 地址可能无法提供完整的网络连接。此问题只会影响基于 Intel 以太网网络适配器 X710 产品(i40e/iavf Linux 内核驱动程序)的 SR-IOV 虚拟功能。如需更多信息,请参阅 OCPBUGS-5139。
1.9.22.2. 程序错误修复
-
在以前的版本中,当
cluster-image-registry-operator
无法访问 Swift 时,cluster-image-registry-operator 默认使用持久性卷声明 (PVC)。在这个版本中,无法连接到 Red Hat OpenStack Platform (RHOSP) API 或其他事件失败,从而导致cluster-image-registry-operator
重试探测。在重试过程中,只有在正确找到 RHOSP 目录且不包含对象存储时,才会默认为 PVC;或者,如果 RHOSP 目录存在,并且当前用户没有列出容器的权限。(OCPBUGS-5578) -
在以前的版本中,因为缺少
spec.provider
定义,在尝试显示ClusterServiceVersion
时 Operator 详情页面会失败。在这个版本中,用户界面在没有spec.provider
的情况下工作,Operator 详情页面也不会失败。(OCPBUGS-6689)
1.9.22.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.23. RHSA-2023:0651 - OpenShift Container Platform 4.11.27 程序错误修复和安全更新
发布日期:2023 年 2 月 15 日
OpenShift Container Platform release 4.11.27 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2023:0651 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:0650 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.27 --pullspecs
1.9.23.1. 程序错误修复
- 在以前的版本中,拓扑侧边栏不会显示更新的信息。当您直接从拓扑边栏中更新资源时,您必须重新打开侧边栏来查看更改。在这个版本中,更新的资源会被正确显示。(OCPBUGS-5459)
1.9.23.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.24. RHSA-2023:0774 - OpenShift Container Platform 4.11.28 程序错误修复和安全更新
发布日期:2023 年 2 月 21 日
OpenShift Container Platform release 4.11.28 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2023:0774 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:0773 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.28 --pullspecs
1.9.24.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.25. RHSA-2023:0895 - OpenShift Container Platform 4.11.29 程序错误修复和安全更新
发布日期:2023 年 2 月 28 日
OpenShift Container Platform release 4.11.29 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2023:0895 公告中。此更新没有 RPM 软件包。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.29 --pullspecs
1.9.25.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.26. RHSA-2023:1030 - OpenShift Container Platform 4.11.30 程序错误修复和安全更新
发布日期:2023 年 3 月 7 日
OpenShift Container Platform release 4.11.30 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2023:1030 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:1029 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.30 --pullspecs
1.9.26.1. 程序错误修复
-
在以前的版本中,当创建
Secret
时,Start Pipeline 模型会创建一个无效的 JSON 值。因此,Secret
不可用,PipelineRun
可能会失败。在这个版本中,Start Pipeline 模型会为 Secret 创建一个有效的 JSON 值。现在,您可以在启动管道时创建有效的 secret。(OCPBUGS-7494)
1.9.26.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.27. RHSA-2023:1158 - OpenShift Container Platform 4.11.31 程序错误修复和安全更新
发布日期:2023 年 3 月 14 日
OpenShift Container Platform 版本 4.11.31 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHSA-2023:1158 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:1157 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.31 --pullspecs
1.9.27.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.28. RHBA-2023:1296 - OpenShift Container Platform 4.11.32 程序错误修复和安全更新
发布日期:2023 年 3 月 22 日
OpenShift Container Platform 4.11.32 现已正式发布,其中包括安全更新。其程序错误修正列表包括在 RHBA-2023:1296 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:1295 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.32 --pullspecs
1.9.28.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.29. RHBA-2023:1396 - OpenShift Container Platform 4.11.33 程序错误修复更新
发布日期:2023 年 3 月 28 日
OpenShift Container Platform 4.11.33 现已正式发布。其程序错误修正列表包括在 RHBA-2023:1396 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:1395 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.33 --pullspecs
1.9.29.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.30. RHSA-2023:1504 - OpenShift Container Platform 4.11.34 程序错误修复和安全更新
发布日期:2023 年 4 月 4 日
OpenShift Container Platform release 4.11.34 现已正式发布。其程序错误修正列表包括在 RHSA-2023:1504 公告中。此更新中包括的 RPM 软件包由 RHSA-2023:1503 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.34 --pullspecs
1.9.30.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.31. RHBA-2023:1650 - OpenShift Container Platform 4.11.35 程序错误修复更新
发布日期:2023 年 4 月 12 日
OpenShift Container Platform 4.11.35 现已正式发布。其程序错误修正列表包括在 RHBA-2023:1650 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:1649 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.35 --pullspecs
1.9.31.1. 程序错误修复
-
在以前的版本中,如果 OpenStack
clouds.yaml
文件被轮转,您需要重启machine-api-provider-openstack
来获取新的云凭证。因此,MachineSet
被扩展到零的功能可能会受影响。在这个版本中,云凭证不再被缓存,machine-api-provider-openstack
会在需要时读取对应的 secret。(OCPBUGS-10954)
1.9.31.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.32. RHBA-2023:1733 - OpenShift Container Platform 4.11.36 程序错误修复更新
发布日期:2023 年 4 月 13 日
OpenShift Container Platform 版本 4.11.36 现已正式发布。此更新包括的程序错误修正信息包括在 RHBA-2023:1733 公告中。此更新没有 RPM 软件包。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.36 --pullspecs
1.9.32.1. 更新
我们建议所有 OpenShift Container Platform 4.11 的用户,因为在此发行版本中修复的唯一程序错误是安装时间的限制问题,因此不需要将之前安装的集群更新至这个版本。
1.9.33. RHBA-2023:1760 - OpenShift Container Platform 4.11.37 程序错误修复更新
发布日期:2023 年 4 月 19 日
OpenShift Container Platform 版本 4.11.37 现已正式发布。其程序错误修正列表包括在 RHBA-2023:1760 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:1759 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.37 --pullspecs
1.9.33.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.34. RHBA-2023:1863 - OpenShift Container Platform 4.11.38 程序错误修复更新
发布日期:2023 年 4 月 26 日
OpenShift Container Platform 版本 4.11.38 现已正式发布。此更新包括的程序错误修正信息包括在 RHBA-2023:1863 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:1862 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.38 --pullspecs
1.9.34.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.35. RHSA-2023:2014 - OpenShift Container Platform 4.11.39 程序错误修复和安全更新
发布日期:2023 年 5 月 2 日
OpenShift Container Platform 版本 4.11.39 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:2014 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:2056 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.39 --pullspecs
1.9.35.1. 程序错误修复
-
在以前的版本中,Ingress Operator 无法在集群中发布
router-certs
secret,因为 secret 大小限制为 1 MB。因此,使用router-certs
secret 访问集群 Ingress 域的 Authentication Operator 可能没有可用于 OAuth 目的的最新证书。在这个版本中,Ingress Operator 只会为拥有集群 Ingress 域的 Ingress Controller 发布证书和密钥,以便 secret 不会超过大小限制。在这个版本中,确保 Authentication Operator 可以读取和使用最新的证书进行 OAuth 身份验证。(OCPBUGS-8000)
1.9.35.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.36. RHBA-2023:2694 - OpenShift Container Platform 4.11.40 程序错误修复更新
发布日期:2023 年 5 月 18 日
OpenShift Container Platform 版本 4.11.40 现已正式发布。此更新包括的程序错误修正信息包括在 RHBA-2023:2694 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:2693 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.40 --pullspecs
1.9.36.1. 程序错误修复
-
在以前的版本中,当在 OpenShift web 控制台中删除 Knative (
kn
)服务时,关联的<kn-service-name>-github-webhook-secret
Webhook 不会被删除。如果您试图重新创建 Knative 服务,同时保留与原始服务相同的名称,则操作将失败。在这个版本中,当您删除 OpenShift Web 控制台中的 Knative (kn
) 服务时,相关的 Webhook 会在与服务同时删除。现在,您可以在不失败的情况下重新创建与已删除服务相同的 Knative 服务。(OCPBUGS-7949)
1.9.36.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.37. RHBA-2023:3213 - OpenShift Container Platform 4.11.41 程序错误修复更新
发布日期:2023 年 5 月 24 日
OpenShift Container Platform release 4.11.41 现已正式发布。此更新包括的程序错误修正信息包括在 RHBA-2023:3213 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:3212 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.41 --pullspecs
1.9.37.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.38. RHSA-2023:3309 - OpenShift Container Platform 4.11.42 程序错误修复和安全更新
发布日期:2023 年 5 月 31 日
OpenShift Container Platform 版本 4.11.42 现已正式发布。此更新包括的程序错误修正信息包括在 RHSA-2023:3309 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:3308 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.42 --pullspecs
1.9.38.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.39. RHSA-2023:3542 OpenShift Container Platform 4.11.43 程序错误修复和安全更新
发布日期:2023 年 6 月 14 日
OpenShift Container Platform 版本 4.11.43 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:3542 公告中。此更新中包括的 RPM 软件包由 RHSA-2023:3541 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.43 --pullspecs
1.9.39.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.40. RHSA-2023:3915 - OpenShift Container Platform 4.11.44 程序错误修复和安全更新
发布日期:2023 年 7 月 6 日
OpenShift Container Platform 版本 4.11.44 现已正式发布,其中包括安全更新。在这个版本中,为以 FIPS 模式运行 OpenShift Container Platform 的客户有一个红帽安全专家。如需更多信息,请参阅 RHSB-2023:001。
此更新包括的程序错误修正信息包括在 RHSA-2023:3915 公告中。此更新中包括的 RPM 软件包由 RHSA-2023:3914 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.44 --pullspecs
1.9.40.1. 程序错误修复
-
在以前的版本中,因为在入口控制器上配置客户端 TLS (mTLS),客户端 CA 捆绑包中的证书颁发机构 (CA) 需要超过 1MB 的证书撤销列表 (CRL),所以因为
ConfigMap
对象的大小限制而无法更新 CRLConfigMap
对象。由于缺少 CRL,带有有效客户端证书的连接可能会被拒绝,错误为unknown ca
。在这个版本中,每个入口控制器的 CRLConfigMap
对象不再存在;相反,每个路由器 pod 直接下载 CRLConfigMap
对象,确保与有效客户端证书的连接不再被拒绝。(OCPBUGS-14456) -
在以前的版本中,因为 Ingress Controller 上配置客户端 TLS (mTLS),所以分发证书颁发机构 (CA) 和发布 CA 不匹配会导致下载不正确的证书撤销列表 (CRL)。因此,下载了不正确的 CRL 而不是正确的 CRL,从而导致具有有效客户端证书的连接被拒绝,并显示错误消息
unknown ca
。在这个版本中,下载的 CRL 由发布它们的 CA 跟踪。这样可确保有效的客户端证书不再被拒绝。(OCPBUGS-14457)
1.9.40.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.41. RHSA-2023:4053 OpenShift Container Platform 4.11.45 程序错误修复和安全更新
发布日期:2023 年 7 月 19 日
OpenShift Container Platform 版本 4.11.45 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:4053 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:4052 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.45 --pullspecs
1.9.41.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.42. RHSA-2023:4310 OpenShift Container Platform 4.11.46 程序错误修复和安全更新
发布日期:2023 年 8 月 2 日
OpenShift Container Platform 版本 4.11.46 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:4310 公告中。此更新中包括的 RPM 软件包由 RHSA-2023:4312 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.46 --pullspecs
1.9.42.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.43. RHBA-2023:4614 OpenShift Container Platform 4.11.47 程序错误修复更新
发布日期:2023 年 8 月 16 日
OpenShift Container Platform release 4.11.47 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHBA-2023:4614 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:4616 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.47 --pullspecs
1.9.43.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.44. RHBA-2023:4752 OpenShift Container Platform 4.11.48 程序错误修复更新
发布日期:2023 年 8 月 31 日
OpenShift Container Platform release 4.11.48 现已正式发布。此更新包括的程序错误修正信息包括在 RHBA-2023:4752 公告中。这个版本中没有 RPM 软件包。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.48 --pullspecs
1.9.44.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.45. RHSA-2023:5001 OpenShift Container Platform 4.11.49 程序错误修复更新和安全更新
发布日期:2023 年 9 月 13 日
OpenShift Container Platform release 4.11.49 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:5001 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:5003 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.49 --pullspecs
1.9.45.1. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.46. RHBA-2023:5350 OpenShift Container Platform 4.11.50 程序错误修复更新
发布日期:2023 年 10 月 4 日
OpenShift Container Platform release 4.11.50 现已正式发布。此更新包括的程序错误修正信息包括在 RHBA-2023:5350 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:5352 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.50 --pullspecs
1.9.46.1. 功能
1.9.46.1.1. 为 Google Cloud Provider 集群使用自定义 Red Hat Enterprise Linux CoreOS (RHCOS)镜像
默认情况下,安装程序会下载并安装用于启动 control plane 和计算机器的 Red Hat Enterprise Linux CoreOS (RHCOS)镜像。在这个版本中,您可以通过修改安装配置文件(install-config.yaml)来指定自定义 RHCOS 镜像来覆盖默认行为。在部署集群前,您可以修改以下安装参数:
-
controlPlane.platform.gcp.osImage.project
-
controlPlane.platform.gcp.osImage.name
-
compute.platform.gcp.osImage.project
-
compute.platform.gcp.osImage.name
-
platform.gcp.defaultMachinePlatform.osImage.project
-
platform.gcp.defaultMachinePlatform.osImage.name
有关这些参数的更多信息,请参阅 其他 Google Cloud Platform 配置参数。
1.9.46.2. 程序错误修复
- 在以前的版本中,Manila CSI Driver Operator 中使用的云凭证会被缓存,如果这些凭证被轮转,从而导致身份验证问题。在这个版本中,这个问题已解决。(OCPBUGS-18782)
1.9.46.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.47. RHSA-2023:5697 OpenShift Container Platform 4.11.52 程序错误修复更新和安全更新
发布日期:2023 年 10 月 18 日
OpenShift Container Platform release 4.11.52 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:5697 公告中。此更新中包括的 RPM 软件包由 RHSA-2023:5717 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.52 --pullspecs
1.9.47.1. 已知问题
对 Python 的最新安全更新会导致在裸机平台上置备主机失败。在解决此问题前,请不要将 OpenShift Container Platform 集群升级到裸机平台上的 4.11.52 版本。如果您升级到这个版本且问题没有修复,则无法扩展节点。(OCPBUGS-20486)
1.9.47.2. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.48. RHSA-2023:6272 OpenShift Container Platform 4.11.53 程序错误修复更新和安全更新
发布日期:2023 年 11 月 8 日
OpenShift Container Platform release 4.11.53 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:6272 公告中。此更新中包括的 RPM 软件包由 RHSA-2023:6274 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.53 --pullspecs
1.9.48.1. 程序错误修复
-
在以前的版本中,如果
EndpointSlice
端口在没有端口号的情况下创建,CoreDNS
会崩溃。在这个版本中,验证被添加到CoreDNS
中,因此服务器不再会崩溃。(OCPBUGS-20359)
1.9.48.2. 已知问题
- 对 Python 的最新安全更新会导致在裸机平台上置备主机失败。在这个问题解决前,请不要将 OpenShift Container Platform 集群升级到裸机平台上的 4.11.53 版本。如果您升级到这个版本且问题没有修复,则无法扩展节点。(OCPBUGS-20486)
1.9.48.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.49. RHSA-2023:7479 OpenShift Container Platform 4.11.54 程序错误修复更新和安全更新
发布日期:2023 年 11 月 29 日
OpenShift Container Platform release 4.11.54 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:7479 公告中。此更新中包括的 RPM 软件包由 RHSA-2023:7481 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.54 --pullspecs
1.9.49.1. 功能
1.9.49.1.1. apiserver.config.openshift.io 现在由 Insights Operator 跟踪
运行 Insights Operator 后,现在会在路径 config/apiserver.json
中的存档中找到一个新的文件,其中包含 APIServer.config.openshift.io
的审计配置集的信息。
访问审计配置文件可帮助您了解审计策略是常见的做法、最常用的配置文件、行业之间存在哪些差异,以及应用的自定义类型。
1.9.49.2. 程序错误修复
-
在以前的版本中,当用户在容器间复制文件时,时间戳不会被保留。在这个版本中,添加了
-p
标志来在容器间复制文件时保留时间戳。(OCPBUGS-23041)
1.9.49.3. 更新
要将现有 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.50. RHSA-2023:7691 OpenShift Container Platform 4.11.55 程序错误修复更新和安全更新
发布日期:2023 年 12 月 14 日
OpenShift Container Platform release 4.11.55 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2023:7691 公告中。此更新中包括的 RPM 软件包由 RHBA-2023:7693 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.55 --pullspecs
1.9.50.1. 程序错误修复
- 在以前的版本中,如果 master 节点附加到额外网络,则升级到 OpenStack 平台上的 4.12 可能会失败。在升级过程中,两个供应商在短时间内同时处于活跃状态,并可报告不同的节点 IP。当从树内云供应商切换到外部云供应商时,此行为是已知的竞争条件。在这个版本中,添加了一个注解,使这两个供应商都报告相同的主节点 IP,这可防止节点 IP 阻塞。(OCPBUGS-20122)
1.9.50.2. 更新
要将 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.51. RHSA-2024:0059 OpenShift Container Platform 4.11.56 程序错误修复更新和安全更新
发布日期: 2024 年 1 月 10 日
OpenShift Container Platform release 4.11.56 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2024:0059 公告中。此更新中包括的 RPM 软件包由 RHBA-2024:0061 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.56 --pullspecs
1.9.51.1. 更新
要将 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.52. RHSA-2024:0306 OpenShift Container Platform 4.11.57 程序错误修复更新和安全更新
发布日期: 2024 年 1 月 25 日
OpenShift Container Platform release 4.11.57 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2024:0306 公告中。此更新中包括的 RPM 软件包由 RHSA-2024:0308 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.57 --pullspecs
1.9.52.1. 更新
要将 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。
1.9.53. RHSA-2024:0682 OpenShift Container Platform 4.11.58 程序错误修复更新和安全更新
发布日期: 2024 年 2 月 8 日
OpenShift Container Platform 版本 4.11.58 现已正式发布,其中包括安全更新。此更新包括的程序错误修正信息包括在 RHSA-2024:0682 公告中。此更新中包括的 RPM 软件包由 RHSA-2024:0684 公告提供。
您可以运行以下命令来查看此发行版本中的容器镜像:
$ oc adm release info 4.11.58 --pullspecs
1.9.53.1. 更新
要将 OpenShift Container Platform 4.11 集群更新至此最新版本,请参阅使用 CLI 更新集群。