1.6. 程序错误修复
API 服务器和客户端
-
在以前的版本中,在升级的集群中,
ephemeral
和csi
卷没有正确添加到安全性上下文约束 (SCC) 中。在这个版本中,升级的集群中的 SCC 会被正确更新,使其具有ephemeral
和csi
卷。(OCPBUGS-33522) -
在以前的版本中,
ServiceAccounts
资源无法用于启用了ImageRegistry
能力的集群的 OAuth 客户端。在这个版本中,这个问题已被解决。(OCPBUGS-30319) -
在以前的版本中,当使用空安全上下文创建 pod 且您可以访问所有安全性上下文约束 (SCC)时,pod 会收到
anyuid
SCC。在ovn-controller
组件向 pod 添加标签后,会为 SCC 选择重新管理 pod,其中 pod 收到了一个升级的 SCC,如privileged
。在这个版本中,这个问题已被解决,pod 不会重新用于 SCC 选择。(OCPBUGS-11933) -
在以前的版本中,
hostmount-anyuid
安全性上下文约束 (SCC) 没有内置集群角色,因为 SCC 的名称在集群角色中被错误地命名为hostmount
。在这个版本中,集群角色中的 SCC 名称被正确更新为hostmount-anyuid
,因此hostmount-anyuid
SCC 现在具有可正常工作的集群角色。(OCPBUGS-33184) -
在以前的版本中,在 OpenShift Container Platform 4.7 之前创建的集群有几个类型为
SecretTypeTLS
的 secret。升级到 OpenShift Container Platform 4.16 后,这些 secret 会被删除并使用类型kubernetes.io/tls
重新创建。这个删除行为可能会导致竞争条件,且 secret 的内容可能会丢失。在这个版本中,secret 类型更改会自动发生,在 OpenShift Container Platform 4.7 之前创建的集群可以升级到 4.16,而不会丢失这些 secret 的内容。(OCPBUGS-31384) - 在以前的版本中,一些 Kubernetes API 服务器事件没有正确的时间戳。在这个版本中,Kubernetes API 服务器事件具有正确的时间戳。(OCPBUGS-27074)
- 在以前的版本中,Kubernetes API Server Operator 会尝试删除 OpenShift Container Platform 4.13 中删除的 Prometheus 规则,以确保它已被删除。这会导致在审计日志中,每几分钟就会出现删除信息失败的信息。在这个版本中,Kubernetes API Server Operator 不再尝试删除此不存在的规则,在审计日志中不会在有这些删除信息。(OCPBUGS-25894)
裸机硬件置备
- 在以前的版本中,Redfish 的较新版本使用 Manager 资源弃用 RedFish Virtual Media API 的统一资源标识符 (URI)。这会导致任何使用较新的 Redfish URI for Virtual Media 的硬件不会被置备。在这个版本中,Ironic API 标识为 RedFish Virtual Media API 部署的正确 Redfish URI,以便依赖已弃用或可以置备较新的 URI 的硬件。(OCPBUGS-30171)
-
在以前的版本中,Bare Metal Operator (BMO) 没有使用领导锁定来控制传入和传出 Operator pod 流量。OpenShift
Deployment
对象包含新的 Operator pod 后,新 pod 与系统资源(如ClusterOperator
状态)竞争,这会终止任何传出的 Operator pod。这个问题也会影响没有包括任何裸机节点的集群。在这个版本中,BMO 包括一个领导锁定来管理新的 pod 流量,这个修复解决了竞争的 pod 问题。(OCPBUGS-25766) -
在以前的版本中,当在安装开始前尝试删除
BareMetalHost
对象时,metal3 Operator 会尝试创建PreprovImage
镜像。创建此镜像的过程会导致BareMetalHost
对象在特定进程中仍然存在。在这个版本中,在这种情况下添加了一个例外,以便在不影响正在运行的进程的情况下删除BareMetalHost
对象。(OCPBUGS-33048) -
在以前的版本中,HPEt Packard Enterprise (HPE) Lights Out (iLO) 5 在 Hewlett Packard Enterprise (HPE) Lights Out (iLO) 5 上下文中的 Redfish 虚拟介质被禁止进行裸机压缩,以解决不同的硬件模型中的其他不相关的问题。这会导致每个 iLO 5 裸机机器中缺少
FirmwareSchema
资源。每台机器都需要压缩从 Redfish Baseboard Management Controller (BMC) 端点获取消息 registry。在这个版本中,每个需要FirmwareSchema
资源的 iLO 5 裸机机器都没有强制禁用压缩。(OCPBUGS-31104) -
在以前的版本中,
inspector.ipxe
配置文件使用IRONIC_IP
变量,它不会考虑 IPv6 地址,因为它们有括号。因此,当用户提供不正确的boot_mac_address
时,i iPXE 会返回到使用inspector.ipxe
配置文件,该文件提供了格式不正确的 IPv6 主机标头,因为它没有包含括号。在这个版本中,inspector.ipxe
配置文件已更新为使用IRONIC_URL_HOST
变量,该变量用于 IPv6 地址并解决这个问题。(OCPBUGS-22699) - 在以前的版本中,Ironic Python Agent 假设所有服务器磁盘在尝试擦除磁盘时具有 512 字节扇区大小。这会导致磁盘擦除失败。在这个版本中,Ironic Python Agent 检查磁盘扇区大小,并为磁盘中断具有单独的值,以便磁盘擦除成功。(OCPBUGS-31549)
Builds
- 在以前的版本中,从早期版本升级到 4.16 的集群仍然允许未经身份验证的 Webhook 触发构建。在这个版本中,新集群需要验证构建 Webhook。除非集群管理员允许命名空间或集群中的未经身份验证的 Webhook,否则不会由未经身份验证的 Webhook 触发构建。(OCPBUGS-33378)
-
在以前的版本中,如果开发人员或集群管理员将小写环境变量名称用于代理信息,则这些环境变量会传送到构建输出容器镜像中。在运行时,代理设置处于活跃状态,必须取消设置。在这个版本中,
*_PROXY
环境变量的小写版本无法泄漏构建的容器镜像。现在,buildDefaults
仅在为构建过程创建的构建和设置期间保留,仅在推送 registry 中的镜像前删除。(OCPBUGS-34825)
Cloud Compute
- 在以前的版本中,Cloud Controller Manager (CCM) Operator 在 Google Cloud Platform (GCP) 上使用预定义角色,而不是粒度权限。在这个版本中,CCM Operator 被更新为在 GCP 集群上使用粒度权限。(OCPBUGS-26479)
在以前的版本中,安装程序会填充 VMware vSphere control plane 机器集自定义资源 (CR)的
spec.template.spec.providerSpec.value
的network.devices
,template
和workspace
字段。这些字段应该在 vSphere 故障域中设置,且安装程序填充它们会导致意外的行为。更新这些字段不会触发对 control plane 机器的更新,并在删除 control plane 机器集时清除这些字段。在这个版本中,安装程序被更新,不再填充故障域配置中包含的值。如果在故障域配置中没有定义这些值,例如,从早期版本升级到 OpenShift Container Platform 4.16 的集群,则会使用安装程序定义的值。(OCPBUGS-32947)
-
在以前的版本中,与重新引导机器关联的节点会短暂处于
Ready=Unknown
状态,这会触发 Control Plane Machine Set Operator 中的UnavailableReplicas
条件。此条件导致 Operator 进入Available=False
状态并触发警报,因为该状态表示需要立即管理员干预的非功能组件。重新引导时,不应为简短和预期的未提供警报触发此警报。在这个版本中,添加了节点未就绪的宽限期,以避免触发不必要的警报。(OCPBUGS-34970) - 在以前的版本中,在机器创建过程中获取 bootstrap 数据(如临时失败)无法连接到 API 服务器,从而导致机器进入终端失败状态。在这个版本中,在机器创建过程中无法获取 bootstrap 数据,会无限期重试,直到最终成功为止。(OCPBUGS-34158)
-
在以前的版本中,当删除处于错误状态的服务器时,Machine API Operator 会 panicked,因为它没有传递端口列表。在这个版本中,删除处于
ERROR
状态的机器不会使控制器崩溃。(OCPBUGS-34155) - 在以前的版本中,集群自动扩展的可选内部功能会在未实现时重复日志条目。这个问题已在本发行版本中解决。(OCPBUGS-33932)
- 在以前的版本中,如果 control plane 机器集在 VMware vSphere 集群上安装使用没有路径的模板,则 Control Plane Machine Set Operator 会拒绝修改或删除 control plane 机器集自定义资源 (CR)。在这个版本中,Operator 允许 control plane 机器集定义中的 vSphere 模板名称。(OCPBUGS-32295)
- 在以前的版本中,因为没有配置基础架构资源,当尝试更新 VMware vSphere 集群时,Control Plane Machine Set Operator 会崩溃。在这个版本中,Operator 可以处理这种情况,以便集群更新可以进行。(OCPBUGS-31808)
-
在以前的版本中,当用户创建带有污点的计算机器集时,他们可以选择不指定
Value
字段。如果不指定此字段,会导致集群自动扩展崩溃。在这个版本中,集群自动扩展被更新以处理空Value
字段。(OCPBUGS-31421) -
在以前的版本中,IPv6 服务在 RHOSP 云供应商中错误地标记为内部,因此无法在 OpenShift Container Platform 服务间共享 IPv6 负载均衡器。在这个版本中,IPv6 服务没有标记为内部,允许在使用有状态 IPv6 地址的服务间共享 IPv6 负载均衡器。在这个版本中,负载均衡器可以使用服务的
loadBalancerIP
属性中定义的有状态 IPv6 地址。(OCPBUGS-29605) - 在以前的版本中,当 control plane 机器标记为 unready 且由修改 control plane 机器集启动更改时,未就绪机器会被预先删除。这种预防操作导致同时替换多个索引。在这个版本中,当索引中只有一个机器时,control plane 机器集不会删除机器。这个更改可防止预实施更改,并防止一次替换多个索引。(OCPBUGS-29249)
- 在以前的版本中,到 Azure API 的连接有时会挂起最多 16 分钟。在这个版本中,引入了一个超时以防止挂起 API 调用。(OCPBUGS-29012)
-
在以前的版本中,Machine API IBM Cloud 控制器没有集成
klogr
软件包中的完整日志记录选项。因此,控制器在 Kubernetes 版本 1.29 及更高版本中崩溃。在这个版本中,包括了缺少的选项,并解决了这个问题。(OCPBUGS-28965) - 在以前的版本中,Cluster API IBM Power Virtual Server 控制器 pod 在不支持的 IBM Cloud 平台上启动。这会导致控制器 pod 处于创建阶段。在这个版本中,集群会检测 IBM Power Virtual Server 和 IBM Cloud 之间的区别。然后,集群只在支持的平台中启动。(OCPBUGS-28539)
- 在以前的版本中,因为解析错误,机器自动扩展无法直接考虑计算机器集 spec 的任何污点。当依赖计算机器集污点从零扩展时,这可能会导致不必要的扩展行为。这个问题已在此发行版本中解决,机器自动扩展现在可以正确扩展,并识别阻止工作负载调度的污点。(OCPBUGS-27509)
-
在以前的版本中,在 Microsoft Azure 区域上运行的机器集,没有可用区支持总是为 Spot 实例创建
AvailabilitySets
对象。此操作会导致 Spot 实例失败,因为实例不支持可用性集。在这个版本中,机器集不会为在非zonal 配置的区域中运行的 Spot 实例创建AvailabilitySets
对象。(OCPBUGS-25940) - 在以前的版本中,在 OpenShift Container Platform 4.14 中从 kubelet 中删除提供镜像凭证的代码会导致从 Amazon Elastic Container Registry (ECR) 拉取镜像在没有指定的 pull secret 的情况下失败。此发行版本包括一个单独的凭证供应商,它为 kubelet 提供 ECR 凭证。(OCPBUGS-25662)
-
在以前的版本中,Azure 负载均衡器的默认虚拟机类型从
Standard
改为VMSS
,但服务类型负载均衡器代码无法将标准虚拟机附加到负载均衡器。在这个版本中,默认虚拟机类型会被恢复,以保持与 OpenShift Container Platform 部署兼容的。(OCPBUGS-25483) -
在以前的版本中,OpenShift Container Platform 不会将集群名称包含在由 OpenStack Cloud Controller Manager 创建的 RHOSP 负载均衡器资源的名称中。当
LoadBalancer
服务在单个 RHOSP 项目中运行的多个集群中具有相同的名称时,这会导致问题。在这个版本中,集群名称包含在 Octavia 资源的名称中。当从以前的集群版本升级时,负载均衡器会被重命名。新名称遵循的模式是kube_service_<cluster-name>_<namespace>_<service-name>
而不是kube_service_kubernetes_<namespace>_<service-name>
。(OCPBUGS-13680) - 在以前的版本中,当您同时创建或删除服务对象的大量卷时,服务控制器处理服务的速度会减慢。这会导致服务控制器和对象的积压问题出现简短的超时问题。在这个版本中,服务控制器可以同时处理最多 10 个服务对象,以减少积压和超时问题。(OCPBUGS-13106)
- 在以前的版本中,获取节点名称的逻辑不会考虑从 AWS 元数据服务返回的主机名的多个值。当为 VPC 动态主机配置协议 (DHCP) 选项配置了多个域时,此主机名可能会返回多个值。多个值之间的空格会导致逻辑崩溃。在这个版本中,逻辑被更新为只使用第一个返回的主机名作为节点名称。(OCPBUGS-10498)
-
在以前的版本中,Machine API Operator 在 Microsoft Azure 集群上请求不必要的
virtualMachines/extensions
权限。这个版本删除了不必要的凭证请求。(OCPBUGS-29956)
Cloud Credential Operator
- 在以前的版本中,Cloud Credential Operator (CCO) 缺少在 Microsoft Azure 上创建私有集群所需的一些权限。这些缺少的权限会阻止使用 Microsoft Entra Workload ID 安装 Azure 私有集群。此发行版本包括缺少的权限,并使用 Workload ID 启用 Azure 私有集群安装。(OCPBUGS-25193)
- 在以前的版本中,一个程序错误会导致 Cloud Credential Operator (CCO) 在指标中报告不正确的模式。即使集群处于默认模式,但指标会报告它处于凭证删除模式。在这个版本中,使用 live 客户端来代替缓存的客户端,以便它能够获取 root 凭证,CCO 不再在指标中报告不正确的模式。(OCPBUGS-26488)
- 在以前的版本中,使用 Microsoft Entra Workload ID 的 OpenShift Container Platform 集群上的 Cloud Credential Operator 凭证模式指标使用手动模式报告。在这个版本中,使用 Workload ID 的集群会被更新为使用 pod 身份的手动模式。(OCPBUGS-27446)
- 在以前的版本中,在裸机集群中创建 Amazon Web Services (AWS) root secret 会导致 Cloud Credential Operator (CCO) pod 崩溃。这个问题已在本发行版本中解决。(OCPBUGS-28535)
- 在以前的版本中,从使用 mint 模式的 Cloud Credential Operator (CCO) 的 Google Cloud Platform (GCP) 集群中删除 root 凭证会导致 CCO 在大约一小时后降级。在降级状态中,CCO 无法管理集群中的组件凭证 secret。这个问题已在本发行版本中解决。(OCPBUGS-28787)
-
在以前的版本中,在 Amazon Web Services (AWS) 上安装时,Cloud Credential Operator (CCO) 会检查是否有不存在的
s3:HeadBucket
权限。当 CCO 无法找到此权限时,它会被视为为 mint 模式提供的凭证不足。在这个版本中,CCO 不再检查不存在的权限。(OCPBUGS-31678)
Cluster Version Operator
-
此发行版本扩展了
ClusterOperatorDown
和ClusterOperatorDegraded
警报,以覆盖 ClusterVersion 条件,并为Available=False
(ClusterOperatorDown
) 和Failing=True
(ClusterOperatorDegraded
) 发送警报。在以前的版本中,这些警报只涵盖ClusterOperator
条件。(OCPBUGS-9133) - 在以前的版本中,Cluster Version Operator (CVO) 在 OpenShift Container Platform 4.15.0、4.14.0、4.13.17 和 4.12.43 中引入的更改会导致风险评估失败,阻止 CVO 获取新的更新建议。当风险评估失败时,这个错误会导致 CVO 过度忽略更新建议服务。在这个版本中,CVO 继续轮询更新建议服务,无论是否成功评估更新风险以及问题是否已解决。(OCPBUGS-25708)
开发人员控制台
-
在以前的版本中,当以 create serverless 表单创建无服务器功能时,不会创建
BuilldConfig
。在这个版本中,如果没有安装 Pipelines Operator,则不会为特定资源创建管道资源,或者在创建无服务器功能时没有添加管道,它将按预期创建BuildConfig
。(OCPBUGS-34143) - 在以前的版本中,在安装 Pipelines Operator 后,Pipeline 模板需要一些时间来在集群中可用,但用户仍然可以创建部署。在这个版本中,如果没有选择的资源,Import from Git 页面上的 Create 按钮会被禁用。(OCPBUGS-34142)
-
在以前的版本中,Topology 页面中的最大节点数量被设置为
100
。提供了持久性警报 "Loading 的时间比预期要长。在这个版本中,节点的限制增加到300
。(OCPBUGS-32307) -
在这个版本中,在创建
ServiceBinding
、绑定一个组件或在当前命名空间中发现ServiceBinding
时,一个用于通知 Service Bindings 已在 OpenShift Container Platform 4.15 中被弃用的提示信息会添加到 ServiceBinding list, ServiceBinding details, Add, 和 Topology 页。(OCPBUGS-32222) -
在以前的版本中,如果 chart 名称不同,Helm 插件索引视图不会显示与 Helm CLI 相同的 chart 数量。在这个版本中,Helm 目录会查找
chart.openshift.io/name
和charts.openshift.io/provider
,以便所有版本都分组到单个目录标题中。(OCPBUGS-32059) -
在以前的版本中,
TaskRun
状态不会在 TaskRun 详情页上的TaskRun
名称旁显示。在这个版本中,TaskRun
状态位于页面标题中的TaskRun
名称旁边。(OCPBUGS-31745) - 在以前的版本中,当将 resources 字段添加到有效负载时,在 Pipeline 中添加参数时会出现错误,因为资源已弃用。在这个版本中,resources 字段已从有效负载中删除,您可以在 Pipeline 中添加参数。(OCPBUGS-31082)
-
此发行版本更新了 OpenShift Pipelines 插件,以支持自定义资源定义 (CRD)
ClusterTriggerBinding
、TriggerTemplate
和EventListener
的最新 Pipeline Trigger API 版本。(OCPBUGS-30958) -
在以前的版本中,
CustomTasks
无法识别或处于Pending
状态。在这个版本中,CustomTasks
可以在 Pipelines 的 List 和 Details 页中轻松识别。(OCPBUGS-29513) -
在以前的版本中,如果有一个带有
Image
标签的构建输出镜像,则Output Image
链接不会重定向到正确的 ImageStream 页面。在这个版本中,这个问题已通过在链接中添加标签的情况下为 ImageStream 页面生成 URL 来解决。(OCPBUGS-29355) -
在以前的版本中,因为指定资源的 API 版本的最新更新,
BuildRun
日志在 BuildRun 页面的 Logs 选项卡中不可见。在这个版本中,对于版本为 v1alpha1 和 v1beta1 的 Builds Operator,TaskRuns
的日志被添加到BuildRun
页的 Logs 选项卡中。(OCPBUGS-27473) -
在以前的版本中,设置 scale bound 值的注解被设置为
autoscaling.knative.dev/maxScale
和autoscaling.knative.dev/minScale
。在这个版本中,设置扩展绑定值的注解会更新为autoscaling.knative.dev/min-scale
和autoscaling.knative.dev/max-scale
,以确定可在任何给定时间提供应用程序的最小和最大副本数。您可以为应用设置规模绑定,以帮助防止冷启动和控制计算成本。(OCPBUGS-27469) - 在以前的版本中,Tekton Results API 中的 PipelineRuns 的 Log 标签页永远不会完成载入。在这个版本中,此标签页为从 Kubernetes API 或 Tekton Results API 加载的 PipelineRuns 完全完整。(OCPBUGS-25612)
-
在以前的版本中,没有显示指示来区分从 Kubernetes API 或 Tekton Results API 加载的
PipelineRuns
。在这个版本中,PipelineRun 列表和详情页中有一个小归档图标,用于区分从 Kubernetes API 或 Tekton Results API 加载的PipelineRuns
。(OCPBUGS-25396) -
在以前的版本中,在 PipelineRun list 页面中,所有 TaskRuns 都会根据
pipelineRun
名称获取并分离。在这个版本中,TaskRuns 只会为Failed
和Cancelled
PipelineRun 获取。另外,还添加了一个缓存机制来获取与Failed
和Cancelled
PipelineRuns 关联的 PipelineRuns 和 TaskRuns。(OCPBUGS-23480) - 在以前的版本中,Topology 视图中没有虚拟机节点和其它非VM 节点间的视觉连接器。在这个版本中,视觉连接器位于虚拟机节点和非VM 节点间。(OCPBUGS-13114)
边缘计算
- 在以前的版本中,使用代理配置的集群升级基于镜像的问题会导致 Operator rollouts 延长了启动时间。在这个版本中,这个问题已被解决,升级时间会减少。(OCPBUGS-33471)
etcd Cluster Operator
-
在以前的版本中,bootstrap 中使用的
wait-for-ceo
命令不会报告一些失败模式的错误。在这个版本中,如果cmd
在错误情况下退出,则bootkube
脚本中可以看到这些错误消息。(OCPBUGS-33495) -
在以前的版本中,etcd Cluster Operator 在 pod 健康检查过程中输入 panic 状态,这会导致对
etcd
集群的请求失败。在这个版本中,这个问题已被解决,不再发生这些 panic 的情况。(OCPBUGS-27959) - 在以前的版本中,etcd Cluster Operator 会错误地将非运行的控制器识别为死锁,这会导致不必要的 pod 重启。在这个版本中,这个问题已被解决,Operator 会将一个非运行的控制器标记为不健康 etcd 成员,而无需重启 pod。(OCPBUGS-30873)
托管 control plane
-
在以前的版本中,当您在托管集群中使用
Other
网络类型时,Multus Container Network Interface (CNI) 需要批准证书签名请求 (CSR)。只有在网络类型为Other
且设置为 Calico 时,才会设置适当的基于角色的访问控制 (RBAC) 规则。因此,当网络类型是Other
且设置为 Cilium 时,CSR 不会被批准。在这个版本中,为所有有效的网络类型设置了正确的 RBAC 规则,在使用Other
网络类型时,现在会正确配置 RBAC。(OCPBUGS-26977) - 在以前的版本中,Amazon Web Services (AWS)策略问题会阻止 Cluster API Provider AWS 检索所需的域信息。因此,使用自定义域安装 AWS 托管的集群会失败。在这个版本中,策略问题已解决。(OCPBUGS-29391)
- 在以前的版本中,在断开连接的环境中,HyperShift Operator 会忽略 registry 覆盖。因此,对节点池的更改会被忽略,节点池会遇到错误。在这个版本中,元数据检查器在 HyperShift Operator 协调过程中可以正常工作,并正确填充覆盖镜像。(OCPBUGS-34773)
-
在以前的版本中,HyperShift Operator 没有使用
RegistryOverrides
机制来检查内部 registry 中的镜像。在这个版本中,元数据检查器在 HyperShift Operator 协调过程中可以正常工作,并正确填充OverrideImages
。(OCPBUGS-32220) - 在以前的版本中,Red Hat OpenShift Cluster Manager 容器没有正确的传输层安全 (TLS) 证书。因此,镜像流无法用于断开连接的部署。在这个版本中,TLS 证书作为投射卷添加。(OCPBUGS-34390)
-
在以前的版本中,KAS pod 中的
azure-kms-provider-active
容器在 Dockerfile 中使用 shell 格式的 entrypoint 语句。因此,容器会失败。要解决这个问题,使用exec
表单用于 entrypoint 语句。(OCPBUGS-33940) -
在以前的版本中,
konnectivity-agent
守护进程集使用ClusterIP
DNS 策略。因此,当 CoreDNS 停机时,data plane 上的konnectivity-agent
pod 无法解析代理服务器 URL,它们可能会在 control plane 中的konnectivity-server
中失败。在这个版本中,konnectivity-agent
守护进程集被修改为使用dnsPolicy: Default
。konnectivity-agent
使用主机系统 DNS 服务来查找代理服务器地址,且不再依赖于 CoreDNS。(OCPBUGS-31444) -
在以前的版本中,无法查找资源会导致重新创建失败。因此,很多
409
响应代码被记录在 Hosted Cluster Config Operator 日志中。在这个版本中,特定资源被添加到缓存中,以便 Hosted Cluster Config Operator 不会尝试重新创建现有资源。(OCPBUGS-23228) - 在以前的版本中,托管集群中缺少 pod 安全漏洞警报。在这个版本中,警报添加到托管集群。(OCPBUGS-31263)
-
在以前的版本中,在断开连接的环境中托管的集群中的
recycler-pod
模板指向quay.io/openshift/origin-tools:latest
。因此,回收 Pod 无法启动。在这个版本中,recycler pod 镜像指向 OpenShift Container Platform 有效负载引用。(OCPBUGS-31398) -
在这个版本中,在断开连接的部署中,HyperShift Operator 会从管理集群接收新的
ImageContentSourcePolicy
(ICSP) 或ImageDigestMirrorSet
(IDMS),并将它们添加到 HyperShift Operator 和每个协调循环中的 Control Plane Operator 中。对 ICSP 或 IDMS 的更改会导致重启control-plane-operator
pod。(OCPBUGS-29110) -
在这个版本中,
ControllerAvailabilityPolicy
设置会在设置后变为不可变。不支持在SingleReplica
和HighAvailability
之间更改。(OCPBUGS-27282) -
在这个版本中,
machine-config-operator
自定义资源定义 (CRD) 被重命名,以确保在托管 control plane 中正确省略资源。(OCPBUGS-34575) -
在这个版本中,为托管的 control plane 保存在
kube-apiserver
,openshift-apiserver
, 和oauth-apiserver
pod 中的审计日志文件的大小会减小。(OCPBUGS-31106) -
在以前的版本中,Hypershift Operator 没有使用
RegistryOverrides
机制来检查内部 registry 中的镜像。在这个版本中,元数据检查器在 Hypershift Operator 协调过程中可以正常工作,并正确填充OverrideImages
。(OCPBUGS-29494)
镜像 Registry
-
在以前的版本中,在导入镜像流标签后,
ImageContentSourcePolicy
(ICSP) 自定义资源 (CR) 无法与ImageDigestMirrorSet
(IDMS) 或ImageTagMirrorSet
(ITMS) CR 共存。OpenShift Container Platform 选择 ICSP 而不是其他 CR 类型。在这个版本中,这些自定义资源可以共存,因此在导入镜像流标签后,OpenShift Container Platform 可以选择所需的 CR。(OCPBUGS-30279) -
在以前的版本中,当命令创建新标签时,
oc tag
命令不会验证标签名称。从带有无效名称的标签创建镜像后,podman pull
命令将失败。在这个版本中,验证步骤会检查新的标签是否有无效名称,现在可以删除具有无效名称的现有标签,因此这个问题不再存在。(OCPBUGS-25703) - 在以前的版本中,Image Registry Operator 维护自己的 IBM Power® Virtual Server 区域列表,因此任何新区域都不会添加到列表中。在这个版本中,Operator 依赖于一个外部库来访问区域,以便它能够支持新区域。(OCPBUGS-26767)
-
在以前的版本中,镜像 registry 的 Microsoft Azure 路径修复作业会错误地需要存在
AZURE_CLIENT_ID
和TENANT_CLIENT_ID
参数才能正常工作。这会导致有效的配置抛出错误消息。在这个版本中,在 Identity and Access Management (IAM)服务帐户密钥中添加检查以验证是否需要这些参数,以便集群升级操作不再失败。(OCPBUGS-32328) -
在以前的版本中,镜像 registry 不支持 Amazon Web Services (AWS) 区域
ca-west-1
。在这个版本中,镜像 registry 可以部署到此区域中。(OCPBUGS-29233) -
在以前的版本中,当 Image Registry Operator 配置中将
virtualHostedStyle
参数设置为regionEndpoint
时,镜像 registry 会忽略虚拟托管的风格配置。在这个版本中,这个问题已被解决,以便使用新的上游分发配置强制路径风格,而不是只使用下游版本(虚拟托管风格)。(OCPBUGS-34166) - 在以前的版本中,当在启用了 service-endpoint 覆盖的 IBM Power® Virtual Server 上运行 OpenShift Container Platform 集群时,Cloud Credential Operator (CCO) Operator 将忽略覆盖服务端点。在这个版本中,CCO Operator 不再忽略覆盖服务端点。(OCPBUGS-32491)
- 在以前的版本中,Image Registry Operator 忽略了端点服务集群级别覆盖,使得在 IBM Cloud® 断开连接的环境中配置集群比较困难。这个问题只存在于安装程序置备的基础架构中。在这个版本中,Image Registry Operator 不再忽略这些集群级别的覆盖。(OCPBUGS-26064)
安装程序
- 在以前的版本中,在 Google Cloud Platform (GCP) 上安装带有无效配置的三节点集群会失败,并显示一个 panic 错误,因为没有报告失败的原因。在这个版本中,安装程序会验证安装配置,以便在 GCP 上成功安装三节点集群。(OCPBUGS-35103)
- 在以前的版本中,如果 pull secret 在密码中包含了冒号,则使用 Assisted Installer 安装会失败。在这个版本中,在密码中包含冒号的 pull secret 不会导致 Assisted Installer 失败。(OCPBUGS-34400)
-
在以前的版本中,
monitor-add-nodes
命令用于监控将节点添加到基于代理的集群的过程,因为权限错误而无法运行。在这个版本中,命令在具有权限的正确目录中运行。(OCPBUGS-34388) - 在以前的版本中,在不警告用户的情况下会修剪较长的集群名称。在这个版本中,安装程序会在修剪长集群名称时警告用户。(OCPBUGS-33840)
-
在以前的版本中,OpenShift Container Platform 不会对在
ca-west-1
Amazon Web Services (AWS) 区中安装的集群执行配额检查。在这个版本中,这个区域中可以正确地强制实施配额。(OCPBUGS-33649) - 在以前的版本中,安装程序有时可能会无法检测到 OpenShift Container Platform API 不可用。通过增加 Microsoft Azure 安装中的 bootstrap 节点的磁盘大小来解决额外的错误。在这个版本中,安装程序可以正确地检测到 API 是否可用。(OCPBUGS-33610)
-
在以前的版本中,Microsoft Azure 集群上的 control plane 节点使用
Read-only
缓存。在这个版本中,Microsoft Azure control plane 节点使用ReadWrite
缓存。(OCPBUGS-33470) -
在以前的版本中,当使用了带有配置了代理(proxy)的基于代理(Agent-based)的集群时,如果代理配置包含以百分比符号 (
%
) 开头的字符串,则安装会失败。在这个版本中,安装程序会正确地验证此配置文本。(OCPBUGS-33024) - 在以前的版本中,在 GCP 上安装可能会失败,因为安装程序尝试创建存储桶两次。在这个版本中,安装程序不再尝试创建存储桶两次。(OCPBUGS-32133)
- 在以前的版本中,罕见的时间问题可能会阻止所有 control plane 节点在安装过程中添加到基于代理的集群中。在这个版本中,所有 control plane 节点都成功重启,并在安装过程中添加到集群中。(OCPBUGS-32105)
-
在以前的版本中,当在断开连接的环境中使用基于代理的安装程序时,不必要的证书会添加到证书颁发机构 (CA) 信任捆绑包中。在这个版本中,CA 捆绑包
ConfigMap
仅包含用户明确指定的 CA。(OCPBUGS-32042) -
在以前的版本中,当在 Amazon Web Services (AWS) 上安装集群时,安装程序需要一个不存在的权限
s3:HeadBucket
。在这个版本中,安装程序正确地需要权限s3:ListBucket
。(OCPBUGS-31813) - 在以前的版本中,如果安装程序因为 SSH 连接问题而无法从 bootstrap 收集日志,它也不提供虚拟机 (VM) 串口控制台日志,即使它们已被收集。在这个版本中,安装程序会提供虚拟机串口控制台日志,即使与 bootstrap 机器的 SSH 连接失败。(OCPBUGS-30774)
- 在以前的版本中,当在带有静态 IP 地址的 VMware vSphere 上安装集群时,集群可能会因为其他技术预览功能冲突而在没有静态 IP 地址的情况下创建 control plane 机器。在这个版本中,Control Plane Machine Set Operator 可以正确地管理 control plane 机器的静态 IP 分配。(OCPBUGS-29114)
- 在以前的版本中,当使用用户提供的 DNS 在 GCP 上安装集群时,安装程序仍然会尝试在 GCP DNS 网络中验证 DNS。在这个版本中,安装程序不会对用户提供的 DNS 执行这个验证。(OCPBUGS-29068)
- 在以前的版本中,当删除使用与非私有 IBM Cloud® 集群相同的域名的 IBM Cloud® 上的私有集群时,一些资源不会被删除。在这个版本中,当集群被删除时,所有私有集群资源都会被删除。(OCPBUGS-28870)
-
在以前的版本中,当使用代理安装集群时,如果配置字符串中包括了百分比符号 (
%
) ,则集群安装会失败。在这个版本中,安装程序会正确地验证包含 "%" 的代理配置字符串。(OCPBUGS-27965) -
在以前的版本中,安装程序仍然允许使用
OpenShiftSDN
网络插件,即使它已被删除。在这个版本中,安装程序可以正确地使用这个网络插件安装集群。(OCPBUGS-27813) - 在以前的版本中,当在 Amazon Web Services (AWS) Wavelengths 或 Local Zones 上安装集群到支持 Wavelengths 或 Local Zones 的区域时,安装会失败。在这个版本中,支持 Wavelengths 或 Local Zones 的区域可以成功安装。(OCPBUGS-27737)
- 在以前的版本中,当集群安装尝试使用与现有集群相同的集群名称和基域时,因为 DNS 记录设定冲突,安装会失败,删除第二个集群也会删除原始集群中的 DNS 记录集。在这个版本中,存储的元数据包含私有区名称而不是集群域,因此只从删除的集群中删除正确的 DNS 记录。(OCPBUGS-27156)
-
在以前的版本中,基于代理的安装的安装配置文件中配置的平台特定密码可能存在于
agent-gather
命令的输出中。在这个版本中,在agent-gather
输出中会重新定义密码。(OCPBUGS-26434) - 在以前的版本中,使用版本 4.15 或 4.16 安装的 OpenShift Container Platform 集群显示默认升级频道为 4.14 版本。在这个版本中,集群在安装后具有正确的升级频道。(OCPBUGS-26048)
-
在以前的版本中,当删除 VMware vSphere 集群时,一些
TagCategory
对象无法删除。在这个版本中,当集群被删除时,所有与集群相关的对象都会被正确删除。(OCPBUGS-25841) -
在以前的版本中,当指定
baremetal
平台类型,但在install-config.yaml
中禁用baremetal
功能时,安装会在长时间超时后失败,且没有提供有用的错误信息。在这个版本中,安装程序会提供一个描述性错误,并在禁用baremetal
功能时不会尝试裸机安装。(OCPBUGS-25835) - 在以前的版本中,使用 Assisted Installer 在 VMware vSphere 上安装可能会因为阻止 VMware vSphere 正确初始化节点而失败。在这个版本中,VMware vSphere 上的 Assisted Installer 安装成功完成,并可使用所有节点初始化。(OCPBUGS-25718)
-
在以前的版本中,如果选择的虚拟机类型与
install-config.yaml
文件中指定的架构不匹配,安装会失败。在这个版本中,验证检查可确保在安装开始前匹配的架构。(OCPBUGS-25600) - 在以前的版本中,如果指定了无效的 control plane 副本数量(如 2),基于代理的安装可能会失败。在这个版本中,安装程序强制实施为基于代理的安装指定 1 或 3 control plane 副本的要求。(OCPBUGS-25462)
- 在以前的版本中,当使用 control plane 机器集技术预览功能在 VMware vSphere 上安装集群时,生成的 control plane 机器集在其配置中有重复的故障域。在这个版本中,安装程序会使用正确的故障域创建 control plane 机器集。(OCPBUGS-25453)
-
在以前的版本中,在安装程序置备的安装前,所需的
iam:TagInstanceProfile
权限不会被验证,如果缺少 Identity and Access Management (IAM) 权限,则会导致安装失败。在这个版本中,验证检查可确保在安装开始前包含权限。(OCPBUGS-25440) - 在以前的版本中,安装程序不会阻止用户在禁用 Cloud Credential 功能的非裸机平台上安装集群,尽管需要它。在这个版本中,安装程序会生成错误,并防止安装禁用了 Cloud Credential 功能,但裸机平台上除外。(OCPBUGS-24956)
- 在以前的版本中,设置与实例类型支持的架构不同,会导致在创建某些资源后安装失败。在这个版本中,验证检查会验证实例类型是否与指定的架构兼容。如果构架不兼容,安装开始前过程会失败。(OCPBUGS-24575)
- 在以前的版本中,安装程序不会阻止用户在禁用 Cloud Controller Manager 的云供应商上安装集群,这会失败且没有有用的错误消息。在这个版本中,安装程序会生成一个错误,表示云平台上的安装需要 Cloud Controller Manager 功能。(OCPBUGS-24415)
- 在以前的版本中,因为 IBM Cloud® API 的意外结果,安装程序可能无法删除在 IBM Cloud® 上安装的集群。在这个版本中,安装程序可以可靠地删除在 IBM Cloud® 上安装的集群。(OCPBUGS-20085)
- 在以前的版本中,安装程序不会强制从启用了 FIPS 的 Red Hat Enterprise Linux (RHEL) 主机安装 FIPS 的集群的要求。在这个版本中,安装程序会强制实施 FIPS 要求。(OCPBUGS-15845)
-
在以前的版本中,
install-config.yaml
文件中设置的代理信息不会应用到 bootstrap 过程。在这个版本中,代理信息会应用到 bootstrap ignition 数据,然后应用到 bootstrap 机器。(OCPBUGS-12890) -
在以前的版本中,当 IBM Power® 虚拟服务器平台没有 DHCP 网络名称时,DHCP 资源不会被删除。在这个版本中,检查会查找具有
ERROR
状态的任何 DHCP 资源,并删除它们,以便不再出现这个问题。(OCPBUGS-35224) -
在以前的版本中,当使用 Cluster API 在安装程序置备的基础架构上创建 IBM Power® Virtual Server 集群时,负载均衡器会变得忙碌和停滞。在这个版本中,您可以使用
PollUntilContextCancel
循环中的AddIPToLoadBalancerPool
命令重启负载均衡器。(OCPBUGS-35088) - 在以前的版本中,在启用了 FIPS 的节点的裸机平台上安装程序置备安装会导致安装失败。在这个版本中,这个问题已解决。(OCPBUGS-34985)
-
在以前的版本中,当在 IBM Power® Virtual Server 上为安装程序置备的安装创建安装配置时,如果管理员没有在 OpenShift CLI (
oc
) 上输入命令,则调查将停止。该调查停止,因为install-config
调查中没有设置默认区域。在这个版本中,这个问题已解决。(OCPBUGS-34728) - 在以前的版本中,使用 SATA 硬件的固态驱动器(SSD) 被识别为可移动。OpenShift Container Platform 的 Assisted Installer 报告没有找到合格的磁盘,安装会停止。在这个版本中,可移动磁盘可以进行安装。(OCPBUGS-34652)
- 在以前的版本中,由于 IPv6 连接检查失败,基于代理的安装会失败,即使节点间可能会建立 IPv6 连接。在这个版本中,这个问题已被解决。(OCPBUGS-31631)
-
在以前的版本中,由于一个编程错误,脚本会创建一个计算服务器组,并设置 control plane 的策略。因此,compute 组会忽略
install-config.yaml
文件的serverGroupPolicy
属性。在这个版本中,计算机器池的install-config.yaml
文件中设置的服务器组策略会在脚本流的安装中应用。(OCPBUGS-31050) 在以前的版本中,当配置使用
openshift-baremetal-install
二进制文件的基于代理的安装时,基于代理的安装程序会错误地尝试验证 libvirt 网络接口。这可能导致以下错误:Platform.BareMetal.externalBridge: Invalid value: "baremetal": could not find interface "baremetal"
在这个版本中,因为基于代理的安装方法不需要 libvirt,这个错误验证已被禁用,这个问题已解决。(OCPBUGS-30941)
- 在以前的版本中,将网络类型与基于 Open vSwitch 的软件定义型网络 (SDN) 或 Open Virtual Network (OVN) 以外的双栈网络一起使用会导致验证错误。在这个版本中,这个问题已解决。(OCPBUGS-30232)
-
在以前的版本中,在 RHOSP 使用用户置备的基础架构安装的
nodePort
服务的一个关闭的 IPv6 端口范围会导致通过某些节点端口的流量被阻止。在这个版本中,在security-group.yaml
playbook 中添加了适当的安全组规则,从而解决了这个问题。(OCPBUGS-30154) -
在以前的版本中,使用
openshift-install agent create cluster-manifests
命令生成的清单不会直接应用到 OpenShift Container Platform 集群,因为清单没有包括类型数据。在这个版本中,类型数据已添加到清单中。管理员现在可以应用清单来启动 Zero Touch Provisioning (ZTP) 安装,该安装使用与基于代理的安装相同的设置。(OCPBUGS-29968) -
在以前的版本中,在生成
aarch64
代理 ISO 时,aarch64
架构所需的文件被错误地重命名。在这个版本中,指定的文件不会被重命名。(OCPBUGS-28827) - 在以前的版本中,当在 VMware vSphere 上安装集群时,因为安装程序无法从主机检索版本信息,如果 ESXi 主机处于维护模式,则安装会失败。在这个版本中,安装程序不会尝试从处于维护模式的 ESXi 主机检索版本信息,从而允许安装继续进行。(OCPBUGS-27848)
- 在以前的版本中,IBM Cloud® Terraform 插件错误地阻止在集群安装过程中使用非私有服务端点。在这个版本中,IBM Cloud® Terraform 插件在安装过程中支持非私有服务端点。(OCPBUGS-24473)
- 在以前的版本中,在 VMware vSphere 上安装集群需要指定数据存储的完整路径。在这个版本中,安装程序会接受数据存储的完整路径和相对路径。(OCPBUGS-22410)
- 在以前的版本中,当使用基于代理的安装程序安装 OpenShift Container Platform 集群时,安装可能会填充 Ignition 存储前大量清单,从而导致安装失败。在这个版本中,Ignition 存储已被增加,允许更多安装清单。(OCPBUGS-14478)
-
在以前的版本中,当
coreos-installer iso kargs show <iso>
命令用于 Agent ISO 文件时,输出无法正确显示嵌入在指定 ISO 中的内核参数。在这个版本中,命令输出可以正确地显示信息。(OCPBUGS-14257) -
在以前的版本中,基于代理的安装会创建
ImageContentSource
对象而不是ImageDigestSources
,即使以前的对象已弃用。在这个版本中,基于代理的安装程序创建ImageDigestSource
对象。(OCPBUGS-11665) - 在以前的版本中,Power VS 的 destroy 功能存在问题,但不是所有资源都会如预期被删除。在这个版本中,这个问题已被解决。(OCPBUGS-29425)
Insights Operator
Insights Operator 现在收集以下自定义资源的
openshift-monitoring
外部的实例:-
Kind:
Prometheus
Group:monitoring.coreos.com
Kind:
AlertManager
Group:monitoring.coreos.com
-
Kind:
Kubernetes Controller Manager
-
在以前的版本中,当使用前台删除级联策略删除
ClusterResourceQuota
资源时,删除将无法完成。在这个版本中,在使用前台级联策略时,ClusterResourceQuota
资源会被正确删除。(OCPBUGS-22301)
Machine Config Operator
-
在以前的版本中,
MachineNode
对象没有使用正确的所有者创建。因此,MachineConfigNode
对象无法进行垃圾回收,这意味着之前生成的、但不再使用的对象不会被删除。在这个版本中,在创建MachineConfigNode
对象时可以正确设置所有者,可以对过时的对象进行垃圾回收。(OCPBUGS-30090) -
在以前的版本中,
nodeStatusUpdateFrequency
参数的默认值从0s
改为10s
。这个更改会意外地导致nodeStatusReportFrequency
显著提高,因为这个值被链接到nodeStatusReportFrequency
值。这会导致在 control plane operator 和 API 服务器上的 CPU 使用率非常高。在这个版本中,nodeStatusReportFrequency
值设置为5m
,这样可防止出现非常高的 CPU 用量的情况。(OCPBUGS-29713) -
在以前的版本中,环境变量中的一个拼写错误会阻止脚本检测是否存在
node.env
文件。因此,每次重启时会覆盖node.env
文件,从而导致 kubelet 主机名被修复。在这个版本中,相关的拼写错误已被修正。因此,对node.env
的编辑现在在重启后会保留。(OCPBUGS-27261) -
在以前的版本中,当
kube-apiserver
服务器证书颁发机构 (CA) 证书被轮转时,Machine Config Operator (MCO) 无法正确响应和更新磁盘上的 kubelet kubeconfig。这意味着,kubelet 和节点上的一些 pod 最终无法与 APIserver 通信,从而导致节点进入NotReady
状态。在这个版本中,MCO 可以正确地对更改做出反应,并更新磁盘上的 kubeconfig,以便在此轮转时与 APIServer 验证的通信可以继续,并重启 kubelet/MCDaemon pod。证书颁发机构的有效期为 10 年,因此,这个轮转应该很少发生,通常不会造成破坏。(OCPBUGS-25821) -
在以前的版本中,当在集群中添加或从集群中删除新节点时,
MachineConfigNode
(MCN) 对象不会响应。因此,会存在无关的 MCN 对象。在这个版本中,Machine Config Operator 会在添加或删除节点时删除并添加 MCN 对象。(OCPBUGS-24416) -
在以前的版本中,
nodeip-configuration
服务没有将日志发送到串口控制台,因此很难在网络不可用时调试问题,且无法访问该节点。在这个版本中,nodeip-configuration
服务会在没有网络访问节点时将输出记录到串行控制台,以便更轻松地进行调试。(OCPBUGS-19628) -
在以前的版本中,当
MachineConfigPool
启用了OnClusterBuild
功能且configmap
使用无效的imageBuilderType
更新时,Machine-config ClusterOperator 不会被降级。在这个版本中,Machine Config Operator (MCO)ClusterOperator
状态会在每次同步时验证OnClusterBuild
的输入,以确保如果无效,ClusterOperator
会降级。(OCPBUGS-18955) -
在以前的版本中,当报告
machine config not found
错误时,没有提供足够的信息来帮助排除相关问题。在这个版本中,在 Machine Config Operator 中添加了一个警报和指标数据。因此,您将会有更多的信息来帮助排machine config not found
错误。(OCPBUGS-17788) - 在以前的版本中,在等待元数据服务可用时,用来在节点上设置主机名的 Afterburn 服务会超时。这会在使用 OVN-Kubernetes 部署时造成问题。现在,Afterburn 服务可以花更长的时间来等待元数据服务可用,从而解决了这些超时问题。(OCPBUGS-11936)
-
在以前的版本中,当从
MachineConfigPool
中删除节点时,Machine Config Operator (MCO) 不会报告错误或报告删除了节点。MCO 不支持管理没有在池中的节点,且在节点被删除后指示相关的节点管理已停止。在这个版本中,如果节点从所有池中移除,则 MCO 现在会记录一个错误。(OCPBUGS-5452)
管理控制台
-
在以前的版本中,对于状态为
Completed
的 pod,不会显示 Debug 容器 链接。在这个版本中,链接会如预期显示。(OCPBUGS-34711) - 在以前的版本中,由于 PatternFly 5 中的一个问题,在 web 控制台中无法调整文本框的大小。在这个版本中,可以对文本框的大小进行调整。(OCPBUGS-34393)
- 在以前的版本中,web 控制台中不提供法语和西班牙语。在这个版本中,提供了法语和西班牙语的翻译。(OCPBUGS-33965)
-
在以前的版本中,masthead 徽标没有应用
max-height
为 60px 的限制。因此,大于 60px 高的徽标会以它们本身的大小显示,并导致 masthead 过大。在这个版本中,masthead 徽标会受 max-height 为 60px 的限制。(OCPBUGS-33523) -
在以前的版本中,
HealthCheck
控制器中缺少返回语句,在某些情况下会造成 panic。在这个版本中,正确的返回语句被添加到HealthCheck
控制器中,因此不再会出现 panic。(OCPBUGS-33505) - 在以前的版本中,向 API 服务器发送了一个不正确的字段。随着 Admission Webhook 的实现,显示相同的操作将返回警告通知。提供了一个修复来解决这个问题。(OCPBUGS-33222)
-
在以前的版本中,当没有时间戳时,
StatusItem
的消息文本可能在垂直方向没有与图标对齐。在这个版本中,消息文本会被正确对齐。(OCPBUGS-33219) - 在以前的版本中,创建者字段会被自动填充,而不是必需的。对 API 的更新会使这个字段在 OpenShift Container Platform 4.15 及更高版本中为空。在这个版本中,字段被标记为是必需的,并会进行验证。(OCPBUGS-31931)
- 在以前的版本中,web 控制台中的 YAML 编辑器没有 Create 按钮,示例不会在 web 控制台中显示。在这个版本中,您可以看到 Create 按钮和示例。(OCPBUGS-31703)
- 在以前的版本中,对外部 OpenID Connect (OIDC) 功能上的桥接服务器标记的更改会导致桥接服务器无法在本地开发中启动。在这个版本中,更新了这个标记的使用,桥接服务器可以正常启动。(OCPBUGS-31695)
- 在以前的版本中,在编辑 VMware vSphere 连接时,即使没有值被实际更改,也可以提交表单。这会导致不必要的节点重启。在这个版本中,控制台会检测到表单更改,并在没有对值进行任何更改时不允许提交。(OCPBUGS-31613)
-
在以前的版本中,如果使用
控制台
中的表单,则NetworkAttachmentDefinition
始终在 default 命名空间中创建。所选名称并不会被遵守,它会使用所选名称加上一个随机后缀创建NetworkAttachmentDefinition
对象。在这个版本中,NetworksmentDefinition
对象在当前项目中创建。(OCPBUGS-31558) -
在以前的版本中,当点
AlertmanagerRecieversNotConfigured
警报的 Configure 按钮时,Configuration 页面不会显示。在这个版本中,AlertmanagerRecieversNotConfigured
警报中的链接已被修复,它会正确指向 Configuration 页。(OCPBUGS-30805) -
在以前的版本中,使用
ListPageFilters
的插件只能使用两个过滤:标签和名称。在这个版本中,添加了一个参数,它可以启用插件来配置多个基于文本的搜索过滤。(OCPBUGS-30077) - 在以前的版本中,点快速启动项时没有响应。在这个版本中,当点快速启动选择时会显示快速启动窗口。(OCPBUGS-29992)
- 在以前的版本中,如果在首次尝试身份验证发现失败时,OpenShift Container Platform Web 控制台会意外终止。在这个版本中,身份验证初始化已被更新,它会在失败前重试最多 5 分钟。(OCPBUGS-29479)
- 在以前的版本中,在 CLI 中创建 Image Manifest Vulnerability (IMV) 后,在 Image Manifest Vulnerability 页面中存在一个错误消息。在这个版本中,错误消息不再显示。(OCPBUGS-28967)
-
在以前的版本中,当将 hook 中的模态对话框用作操作 hook 的一部分时,会出现一个错误,因为控制台框架将 null 对象作为呈现周期的一部分传递。在这个版本中,
getGroupVersionKindForResource
可以正确处理 null 的情况,如果apiVersion
或kind
未定义,则会返回undefined
。此外,useDeleteModal
的运行时错误将不再会发生,但请注意,它对于一个undefined
资源无法正常工作。(OCPBUGS-28856) -
在以前的版本中,Expand PersistentVolumeClaim 模态假设
pvc.spec.resources.requests.stroage
值包含一个单位。在这个版本中,大小被更新为 2GiB,您可以更改持久性卷声明 (PVC) 的值。(OCPBUGS-27779) - 在以前的版本中,OpenShift Container Platform Web 控制台中报告的镜像漏洞值不一致。在这个版本中,Overview 页面中的镜像漏洞已被删除。(OCPBUGS-27455)
- 在以前的版本中,可能会为最近批准的节点显示证书签名请求 (CSR)。在这个版本中,可以检测到重复的内容,且不会为批准的节点显示 CSR。(OCPBUGS-27399)
- 在以前的版本中,Type 栏不是 MachineHealthCheck 详情页中的条件表中的第一个。在这个版本中,Type 在条件表上首先列出。(OCPBUGS-27246)
-
在以前的版本中,控制台插件代理不会从插件服务响应中复制状态代码。这会导致插件服务的所有响应都具有
200
状态,从而导致意外行为,特别是浏览器缓存。在这个版本中,控制台代理逻辑已被更新,以转发插件服务代理响应状态代码。代理插件请求现在可以正常工作。(OCPBUGS-26933) -
在以前的版本中,当克隆持久性卷声明 (PVC) 时,模态假设
pvc.spec.resources.requests.storage
值包含一个单位。在这个版本中,pvc.spec.resources.requests.storage
包含一个单位后缀,Clone PVC 模态可以正常工作。(OCPBUGS-26772) - 在以前的版本中,在编辑 VMware vSphere 连接时,转义的字符串不会被正确处理,从而导致 VMware vSphere 配置无法正常工作。在这个版本中,转义字符串可以正常工作,VMware vSphere 配置不再中断。(OCPBUGS-25942)
-
在以前的版本中,当配置 VMware vSphere 连接时,
resourcepool-path
键没有添加到 VMware vSphere 配置映射中,这可能会导致连接到 VMware vSphere 的问题。在这个版本中,连接到 VMware vSphere 时不再有问题。(OCPBUGS-25927) - 在以前的版本中,客户反馈模态中缺少一些文本。在这个版本中,链接文本已被恢复,并显示正确的红帽镜像。(OCPBUGS-25843)
- 在以前的版本中,当点 Cluster Settings 页面中的 Select a version 时,Update cluster 模态不会被打开。在这个版本中,在点 Select a version 时会显示 Update cluster 模态。(OCPBUGS-25780)
- 在以前的版本中,在移动设备中,搜索页的 resource 部分中的过滤部分无法在移动设备中正常工作。在这个版本中,过滤功能现在可以在移动设备中正常工作。(OCPBUGS-25530)
- 在以前的版本中,console Operator 使用客户端而不是监听程序获取集群资源。这会导致 Operator 对具有较旧修订版本的资源执行操作。在这个版本中,console Operator 使用 list 从集群而不是客户端获取数据。(OCPBUGS-25484)
- 在以前的版本中,控制台会错误地从恢复中的卷快照解析恢复大小值,作为新的持久性卷声明 (PVC) 模态。在这个版本中,模态可以正确地解析恢复大小。(OCPBUGS-24637)
- 在以前的版本中,因为路由库的变化,控制台中没有 Alerting、Metrics 和 Target 页。在这个版本中,路由可以正确地加载。(OCPBUGS-24515)
-
在以前的版本中,当没有条件的
MachineHealthCheck
时,Node details 页中会出现运行时错误。在这个版本中,Node 详情页会如预期加载。(OCPBUGS-24408) - 在以前的版本中,控制台后端会代理对公共 API 服务器端点的请求,这在某些情况下会导致 CA 证书问题。在这个版本中,代理配置已被更新,以指向解决了这个问题的内部 API 服务器端点。(OCPBUGS-22487)
-
在以前的版本中,当存在
HorizontalPodAutoscaler
时,无法扩展或缩减部署。在这个版本中,当将带有HorizontalPodAutoscaler
的部署缩减为零
时,会显示 Enable Autoscale 按钮,以便您可以启用 pod 自动扩展。(OCPBUGS-22405) -
在以前的版本中,当编辑一个文件时,会出现
Info alert:Non-printable file detected.File contains non-printable characters.Preview is not available.
。在这个版本中,添加了一个检查来确定文件是否为二进制文件,并可如预期编辑该文件。(OCPBUGS-18699) - 在以前的版本中,控制台 API 转换 Webhook 服务器无法在运行时更新服务证书,如果这些证书是通过删除签名密钥被更新,则会失败。这会导致在轮转 CA 证书时控制台无法恢复。在这个版本中,控制台转换 Webhook 服务器被更新来检测 CA 证书更改,并在运行时处理它们。服务器现在仍然可用,控制台会在 CA 证书轮转后按预期恢复。(OCPBUGS-15827)
- 在以前的版本中,控制台前端捆绑包的生产构建过去禁用了源映射。因此,用于分析源代码的浏览器工具无法在生产构建中使用。在这个版本中,控制台 Webpack 配置已被更新,以在生产构建中启用源映射。现在,对于 dev 和 production 构建,浏览器工具都可以按预期工作。(OCPBUGS-10851)
- 在以前的版本中,控制台重定向服务与控制台服务具有相同的服务证书颁发机构 (CA) 控制器注解。这会导致服务 CA 控制器有时会错误地为这些服务同步 CA 证书,控制台在删除并重新创建后无法正常工作。在这个版本中,控制台 Operator 被更新为从控制台重定向服务中删除此服务 CA 注解。当 Operator 从删除状态变为受管状态时,控制台服务和 CA 证书现在可以正常工作。(OCPBUGS-7656)
- 在以前的版本中,当使用 Form view 编辑路由时删除备用服务不会从 Route 中删除备用服务。在这个版本中,备用服务已被删除。(OCPBUGS-33011)
-
在以前的版本中,在执行集群更新时,暂停的
MachineConfigPools
节点可能会被错误地取消暂停。在这个版本中,暂停的MachineConfigPools
节点会在执行集群更新时正确暂停。(OCPBUGS-23319)
监控
-
在以前的版本中,如果某些光纤通道设备驱动程序没有公开所有属性,
node-exporter
代理中的 Fibre Channel 收集器会失败。在这个版本中,光纤通道收集器忽略这些可选属性,并解决了这个问题。(OCPBUGS-20151) -
在以前的版本中,
oc get podmetrics
和oc get nodemetrics
命令无法正常工作。在这个版本中,这个问题已被解决。(OCPBUGS-25164) -
在以前的版本中,在
ServiceMonitor
资源中设置无效的.spec.endpoints.proxyUrl
属性会导致破坏、重新载入和重启 Prometheus。在这个版本中,通过针对无效的语法验证proxyUrl
属性解决了这个问题。(OCPBUGS-30989)
网络
-
在以前的版本中,Ingress API 中的
status.componentRoutes.currentHostnames
字段的 API 文档包括开发人员备注。在输入oc explain ingresses.status.componentRoutes.currentHostnames --api-version=config.openshift.io/v1
命令后,开发人员备注将与预期信息一起显示在输出中。在这个版本中,开发人员备注会从status.componentRoutes.currentHostnames
字段中删除,以便在输入命令后,输出会列出路由使用的当前主机名。(OCPBUGS-31058) -
在以前的版本中,负载平衡算法在决定权重时不会区分活跃和不活跃的服务,它在有大量不活跃服务的环境,或环境路由后端的权重为
0
的环境中过度使用随机算法。这会导致内存用量增加,并面临过量内存消耗的风险。在这个版本中,进行了更改来优化对活跃服务的流量方向,并防止使用较高权重的随机算法,从而减少过量内存消耗的可能性。(OCPBUGS-29690) - 在以前的版本中,如果在同一证书中指定多个路由,或者路由将默认证书指定为自定义证书,并在路由器上启用 HTTP/2,HTTP/2 客户端可以在路由上执行连接。Web 浏览器等客户端可能会重新使用连接,并可能会连接到错误的后端服务器。在这个版本中,OpenShift Container Platform 路由器会检查同一证书是否在多个路由上指定,或者当路由将默认证书指定为自定义证书时。当检测到其中一个条件时,路由器将配置 HAProxy 负载均衡器,以便不允许 HTTP/2 客户端连接使用这些证书的任何路由。(OCPBUGS-29373)
-
在以前的版本中,如果您配置了将
routingViaHost
参数设置为true
的部署,流量无法访问 IPv6ExternalTrafficPolicy=Local
负载均衡器服务。在这个版本中,这个问题已被解决。(OCPBUGS-27211) -
在以前的版本中,由托管在二级网络接口控制器 (NIC) 上的
EgressIp
对象选择的 pod 会导致连接到节点 IP 地址超时。在这个版本中,这个问题已被解决。(OCPBUGS-26979) -
在以前的版本中,因为软件包已过期,安装 OpenShift Container Platform Precision Time Protocol (PTP) Operator 的 leap 文件软件包不能被
ts2phc
进程使用。在这个版本中,leap file 软件包被更新为从 Global Positioning System (GPS) 信号中读取大量事件,并动态更新偏移,以便过期的软件包不再发生。(OCPBUGS-25939) -
在以前的版本中,在节点强制重启后,从 Whereabouts CNI 插件创建的池中分配 IP 的 pod 会处于
ContainerCreating
状态。在这个版本中,在节点强制重启后与 IP 分配关联的 Whereabouts CNI 插件问题。(OCPBUGS-24608) - 在以前的版本中,IPv6 中的 OpenShift Container Platform 的两个脚本之间有冲突,包括单堆栈和双栈部署。一个脚本会将主机名设置为完全限定域名(FQDN),但其他脚本可能会提前将其设置为短名称。这是因为触发将主机名设置为 FQDN 的事件可能会在将其设置为短名称的脚本后运行。这是因为异步网络事件发生。在这个版本中,添加了新的代码以确保正确设置 FQDN。这个新代码可确保在设置主机名前等待特定的网络事件。(OCPBUGS-22324)
-
在以前的版本中,如果通过二级接口选择的带有
EgressIP
的 pod 的标签被删除,则同一命名空间中的另一个 pod 也会丢失其EgressIP
分配,从而破坏与外部主机的连接。在这个版本中,这个问题已被解决,因此当 pod 标签被删除并停止使用EgressIP
时,具有匹配标签的其他 pod 将继续在不中断的情况下使用EgressIP
。(OCPBUGS-20220) -
在以前的版本中,全局导航 satellite 系统 (GNSS) 模块可以同时报告 GPS
fix
位置和 GNSSoffset
位置,这代表 GNSS 模块和 constellations 之间的偏移量。前面的 T-GM 没有使用ubloxtool
CLI 工具探测ublox
模块读取offset
和fix
位置。相反,它只能通过 GPSD 读取 GPSfix
信息。这样做的原因是,以前的ubloxtool
CLI 工具的实现需要 2 秒才能接收响应,并且每次调用时 CPU 的用量都会增加三倍。在这个版本中,ubloxtool
请求已被优化,GPSoffset
位置现在可用。(OCPBUGS-17422) -
在以前的版本中,因为竞争条件,由二级接口托管的
EgressIP
pod 不会故障转移。用户会收到一条错误消息,表示无法分配EgressIP
pod,因为它与现有 IP 地址冲突。在这个版本中,EgressIP
pod 移到一个出口节点。(OCPBUGS-20209) - 在以前的版本中,当 OVN-Kubernetes 使用的物理接口上的 MAC 地址更改时,无法在 OVN-Kubernetes 中正确更新,并可能导致节点出现流量中断和 Kube API 中断。这在使用绑定接口时最常见的情况,绑定的 MAC 地址可能会交换,具体取决于哪个设备是第一个启动。在这个版本中,如果修复了问题,则 OVN-Kubernetes 会动态检测 MAC 地址更改并正确更新它。(OCPBUGS-18716)
- 在以前的版本中,当为不是主网络接口的网络接口分配出口 IP 时,不支持使用 IPv6。这个问题已被解决,出口 IP 可以是 IPv6。(OCPBUGS-24271)
-
在以前的版本中,
network-tools
镜像是一个调试工具,其中包含 Wireshark 网络协议分析器。wireshark 依赖于gstreamer1
软件包,此软件包具有特定的许可要求。在这个版本中,gstreamer1
软件包已从 network-tools 镜像中删除,镜像现在包含wireshark-cli
软件包。(OCPBUGS-31699) -
在以前的版本中,当将节点的默认网关设置为
vlan
且多个网络管理器连接具有相同的名称时,节点会失败,因为它无法配置默认的 OVN-Kubernetes 网桥。在这个版本中,configure-ovs.sh
shell 脚本包含一个nmcli connection show uuid
命令,它会在存在许多具有相同名称的连接时检索正确的网络管理器连接。(OCPBUGS-24356) 对于 Microsoft Azure 上的 OpenShift Container Platform 集群,当使用 OVN-Kubernetes 作为 Container Network Interface (CNI) 时,当使用带有
externalTrafficPolicy: Local
的负载均衡器服务时,pod 识别的源 IP 是节点的 OVN 网关路由器。这是因为源网络地址转换 (SNAT) 应用到 UDP 数据包。在这个版本中,通过将关联性超时设置为更高的值(如
86400
秒或 24 小时),可以在没有超时的情况下进行会话关联性。因此,关联性会被视为永久的,除非出现网络中断,如端点或节点停机。因此,会话关联性更为持久。(OCPBUGS-24219)
节点
- 在以前的版本中,Ansible 的 OpenShift Container Platform 升级会导致错误,因为 IPsec 配置不是幂等的。在这个版本中,这个问题已被解决。现在,OpenShift Ansible playbook 的所有 IPsec 配置都是幂等的。(OCPBUGS-30802)
- 在以前的版本中,CRI-O 删除了在 OpenShift Container Platform 次版本升级间安装的所有镜像,以确保过时的有效负载镜像不会消耗节点上的空间。但是,这样做会导致性能的损失,因此此功能已被删除。在这个版本中,kubelet 在磁盘用量达到特定级别后仍然会垃圾回收过时的镜像。因此,OpenShift Container Platform 在次版本间的升级后不再删除所有镜像。(OCPBUGS-24743)
Node Tuning Operator (NTO)
-
在以前的版本中,单节点 OpenShift Container Platform 上的分布式单元配置集被降级,因为
net.core.busy_read
,net.core.busy_poll
, 和kernel.numa_balancing
sysctl
不存在。在这个版本中,Tuned 配置集不再降级,这个问题已解决。(OCPBUGS-23167) -
在以前的版本中,在应用
PerformanceProfile
后 Tuned 配置集会报告Degraded
条件。该配置集试图为默认的 Receive Packet Steering (RPS) 掩码设置sysctl
值,但掩码已在/etc/sysctl.d
文件中使用相同的值进行了配置。在这个版本中,sysctl
值不再使用 Tuned 配置集设置,从而解决了这个问题。(OCPBUGS-24638) -
在以前的版本中,Performance Profile Creator (PPC) 会错误地填充 Day 0 性能配置集清单的
metadata.ownerReferences.uid
字段。因此,在没有手动干预的情况下,无法在第 0 天应用性能配置集。在这个版本中,PPC 不会为第 0 天清单生成metadata.ownerReferences.uid
字段。因此,您可以如预期在第 0 天应用性能配置集清单。(OCPBUGS-29751) - 在以前的版本中,TuneD 守护进程可能会在 Tuned 自定义资源 (CR) 更新后不必要地重新载入。在这个版本中,删除了 Tuned 对象,Tuned (daemon) 配置集会在 Tuned Profile Kubernetes 对象中直接执行。因此,这个问题已被解决。(OCPBUGS-32469)
OpenShift CLI (oc)
- 在以前的版本中,当镜像带有不兼容语义版本的 operator 镜像时,oc-mirror 插件 v2 (技术预览)将失败并退出。在这个版本中,确保在控制台中出现警告,指示跳过的镜像并允许镜像过程在不中断的情况下继续。(OCPBUGS-34587)
-
在以前的版本中,oc-mirror 插件 v2 (技术预览)无法镜像包含
tag
和digest
格式的镜像引用的某些 Operator 目录。此问题会阻止创建集群资源,如ImageDigestMirrorSource
(IDMS) 和ImageTagMirrorSource
(ITMS)。在这个版本中,oc-mirror 通过跳过tag
和digest
引用的镜像来解决这个问题,同时在控制台输出中显示适当的警告信息。(OCPBUGS-33196) -
在以前的版本中,使用 oc-mirror 插件 v2 (技术预览),镜像错误仅显示在控制台输出中,因此用户很难分析并排除其他问题。例如,不稳定的网络可能需要重新运行,而清单未知错误可能需要进一步分析来跳过镜像或 Operator。在这个版本中,生成一个文件,其中包含工作区
working-dir/logs
文件夹中的所有错误。现在,镜像过程中出现的所有错误都会记录在mirroring_errors_YYYYMMdd.txt
中。(OCPBUGS-33098) -
在以前的版本中,Cloud Credential Operator 实用程序 (
ccoctl
) 无法在启用了 FIPS 的 RHEL 9 主机上运行。在这个版本中,用户可以运行与主机的 RHEL 版本兼容的ccoctl
工具版本,包括 RHEL 9。(OCPBUGS-32080) 在以前的版本中,当镜像 operator 目录时,
oc-mirror
会重建目录并根据imagesetconfig
目录过滤规格重新生成其内部缓存。这个过程需要来自目录中的opm
二进制文件。从 4.15 版本开始,Operator 目录包括opm
RHEL 9 二进制文件,这会导致在 RHEL 8 系统上执行镜像过程会失败。在这个版本中,oc-mirror
不再默认重建目录,而是将其镜像到其目标 registry。要保留目录重建功能,可使用
--rebuild-catalog
。但请注意,不会对当前实现进行任何更改,因此使用这个标志可能会导致缓存不会被生成,或者目录没有部署到集群中。如果使用这个命令,您可以导出OPM_BINARY
,以指定与 OpenShift Container Platform 中找到的目录版本和平台对应的自定义opm
二进制文件。现在,镜像 catalog images 会在没有签名验证的情况下进行。使用-enable-operator-secure-policy
在 mirror 过程中启用签名验证。(OCPBUGS-31536)-
在以前的版本中,当使用包含
CloudCredential
集群功能的install-config.yaml
文件运行oc adm release extract --credentials-requests
命令时,一些凭证请求不会被正确提取。在这个版本中,Cloud
Credential 功能会被正确包含在 OpenShift CLI (oc
) 中,以便这个命令正确提取凭证请求。(OCPBUGS-24834) -
在以前的版本中,用户在 oc-mirror 插件中使用
tar.gz
工件时遇到序列错误。要解决这个问题,oc-mirror 插件现在在使用--skip-pruning
标志执行时会忽略这些错误。在这个版本中,确保序列错误(不再影响镜像中的tar.gz
使用顺序)被有效地处理。(OCPBUGS-23496) - 在以前的版本中,当使用 oc-mirror 插件镜像位于隐藏文件夹中的本地 Open Container Initiative Operator 目录时,oc-mirror 会失败并显示错误: ".hidden_folder/data/publish/latest/catalog-oci/manifest-list/kubebuilder/kube-rbac-proxy@sha256:db06cc4c084dd0253134f156dddaaf53ef1c3fb3cc809e5d81711baa4029ea4c is not a valid image reference: invalid reference format “。在这个版本中,oc-mirror 会以不同的方式计算对本地 Open Container Initiative 目录中镜像的引用,确保隐藏目录的路径不会影响镜像过程。(OCPBUGS-23327)
-
在以前的版本中,oc-mirror 在镜像失败时不会停止并返回有效的错误代码。在这个版本中,oc-mirror 会在遇到 "operator not found" 时使用正确的错误代码退出,除非使用了
--continue-on-error
标志。(OCPBUGS-23003) -
在以前的版本中,当镜像 operator 时,如果指定了
minVersion
和maxVersion
,oc-mirror 将忽略imageSetConfig
中的maxVersion
约束。这会导致将所有捆绑包镜像到频道头。在这个版本中,oc-mirror 会考虑在imageSetConfig
中指定的maxVersion
约束。(OCPBUGS-21865) -
在以前的版本中,oc-mirror 无法使用
euseus
频道镜像发行版本,因为它无法识别eus-*
频道只为偶数版本指定。在这个版本中,oc-mirror 插件可以正确地确认eus-*
频道适用于偶数的发行版本,允许用户使用这些频道成功镜像发行版本。(OCPBUGS-19429) -
在以前的版本中,在
mirror.operators.catalog.packages
文件中添加defaultChannel
字段后,用户可以指定首选频道,覆盖 Operator 中的defaultChannel
设置。在这个版本中,oc-mirror 插件现在强制执行一个初始检查defaultChannel
字段是否已设置,用户还必须在ImageSetConfig
的频道部分中定义它。在这个版本中,确保在 Operator 镜像过程中正确配置并应用指定的defaultChannel
。(OCPBUGS-385) -
在以前的版本中,当运行启用了 FIPS 的集群时,您可能会在 RHEL 9 系统中运行 OpenShift CLI (
oc
) 时收到以下错误:FIPS mode is enabled, but the required OpenSSL backend is unavailable
。在这个版本中,OpenShift CLI (oc
) 的默认版本使用 Red Hat Enterprise Linux (RHEL) 9 编译,并在运行在 RHEL 9 上启用 FIPS 的集群时正常工作。另外,还提供了使用 RHEL 8 编译的oc
版本,如果您运行在 RHEL 8 上启用了 FIPS 的集群,则必须使用该版本。(OCPBUGS-23386, OCPBUGS-28540) -
在以前的版本中,与
ImageRegistry
和Build
功能相关的角色绑定都会在每个命名空间中创建,即使禁用了这个能力。在这个版本中,只有在集群中启用了对应的集群功能时,才会创建角色绑定。(OCPBUGS-34384) -
在以前的版本中,在完全断开连接的环境中的 disk-to-mirror 过程中,oc-mirror 插件 v1 会在访问 Red Hat registry 时无法镜像目录镜像。另外,如果
ImageSetConfiguration
将targetCatalog
用于镜像目录,则镜像会失败,因为无论工作流如何引用不正确的目录镜像。这个问题已通过更新目录源来镜像到镜像 registry 解决了这个问题。(OCPBUGS-34646)
Operator Lifecycle Manager (OLM)
-
在以前的版本中,Operator 目录不会被正确刷新,因为索引镜像的
imagePullPolicy
字段被设置为IfNotPresent
。在这个版本中更新了 OLM,为目录使用适当的镜像拉取策略,因此会正确刷新目录。(OCPBUGS-30132) -
在以前的版本中,因为 OLM 处于
CrashLoopBackOff
状态,集群升级可能会被阻断。这是因为资源有多个所有者引用的问题。在这个版本中更新了 OLM,以避免重复所有者引用,只验证它拥有的相关资源。因此,集群升级可以如预期进行。(OCPBUGS-28744) -
在以前的版本中,
CatalogSource
对象支持的默认 OLM 目录 pod 在它们运行的节点中断时不会保留。pod 处于终止状态,尽管应移动它们的容限。这会导致 Operator 无法从相关目录安装和更新。在这个版本中更新了 OLM,因此处于这个状态的目录 pod 会被删除。现在,目录 pod 可以正确地从计划或计划外节点维护中恢复。(OCPBUGS-32183) - 在以前的版本中,如果之前安装和配置了相同的 Operator,安装 Operator 有时可能会失败。这是因为缓存问题。在这个版本中更新了 OLM 以在这种情况下正确安装 Operator,因此不再出现这个问题。(OCPBUGS-31073)
-
在以前的版本中,
catalogd
组件在 etcd 恢复后可能会崩溃。这是因为垃圾回收过程会在 API 服务器无法访问时导致循环失败状态。这个程序错误修复更新了catalogd
,在其中添加了一个重试循环,因此,catalogd
在这种情况下不会再崩溃。(OCPBUGS-29453) - 在以前的版本中,默认目录源 pod 不会接收更新,需要用户手动重新创建它来获取更新。这是因为目录 pod 的镜像 ID 没有被正确检测到。在这个版本中更新了 OLM 来正确地检测目录 pod 镜像 ID,因此会如预期更新默认目录源。(OCPBUGS-31438)
-
在以前的版本中,因为 OLM 无法找到现有的
ClusterRoleBinding
或Service
资源,并第二次创建它们,所以可能会出现 Operator 安装错误。在这个版本中更新了 OLM 来预先创建这些对象,因此不会再发生这些安装错误。(OCPBUGS-24009)
Red Hat Enterprise Linux CoreOS (RHCOS)
-
在以前的版本中,在
kdump
服务生成其特殊的initramfs
之前配置的 OVS 网络。当kdump
服务启动时,它会获取 network-manager 配置文件并将其复制到kdump
initramfs
中。当节点重新引导到kdump
initramfs
时,内核崩溃转储通过网络上传会失败,因为 OVN 没有运行到initramfs
中,且虚拟接口没有配置。在这个版本中,顺序已被更新,kdump
会在设置 OVS 网络配置前启动并构建kdump
initramfs
,并解决了这个问题。(OCPBUGS-30239)
可伸缩性和性能
- 在以前的版本中,在 Performance Profile 呈现后,单节点 OpenShift Container Platform 上的 Machine Config Operator (MCO)会 被呈现,因此 control plane 和 worker 机器配置池不会在正确的时间创建。在这个版本中,Performance Profile 可以正确地显示,这个问题已解决。(OCPBUGS-22095)
-
在以前的版本中,TuneD 和
irqbalanced
守护进程修改了中断请求 (IRQ) CPU 关联性配置,这会在 IRQ CPU 关联性配置中创建冲突,并在单节点 OpenShift 节点重启后造成意外行为。在这个版本中,只有irqbalanced
守护进程决定 IRQ CPU 关联性配置。(OCPBUGS-26400) -
在以前的版本中,在 OpenShift Container Platform 在性能调整集群中更新过程中,恢复
MachineConfigPool
资源会导致池中节点出现额外的重启。在这个版本中,控制器会在池恢复前针对最新的计划机器配置协调,从而导致额外的节点重启。(OCPBUGS-31271) - 在以前的版本中,ARM 安装在内核中使用 4k 页。在这个版本中,增加了对在安装时在内核中安装 64k 页的支持,从而在 NVIDIA CPU 上性能提高。驱动程序工具套件 (DTK) 也已更新,以便为 64k 页大小 ARM 内核编译内核模块。(OCPBUGS-29223)
Storage
-
在以前的版本中,在删除
LVMCluster
自定义资源 (CR) 过程中,一些LVMVolumeGroupNodeStatus
操作对象不会被删除。在这个版本中,删除LVMCluster
CR 会触发删除所有LVMVolumeGroupNodeStatus
操作对象。(OCPBUGS-32954) -
在以前的版本中,LVM Storage 卸载会卡住,等待删除
LVMVolumeGroupNodeStatus
操作对象。在这个版本中,确保所有操作对象都被删除,允许在不延迟的情况下卸载 LVM 存储。(OCPBUGS-32753) 在以前的版本中,LVM 存储不支持持久性卷声明 (PVC) 的最小存储大小。这会导致在置备 PVC 时挂载失败。在这个版本中,LVM 存储支持 PVC 的最小存储大小。以下是您可以为每个文件系统类型请求的最小存储大小:
-
块设备
: 8 MiB -
XFS
: 300 MiB ext4
: 32 MiB如果
PersistentVolumeClaim
对象中的requests.storage
字段的值小于最小存储大小,则请求的存储大小将舍入到最小存储大小。如果limits.storage 字段
的值小于最小存储大小,则 PVC 创建会失败并显示错误。(OCPBUGS-30266)
-
- 在以前的版本中,LVM 存储创建了持久性卷声明 (PVC),其存储大小请求不是磁盘扇区大小的倍数。这可能会导致 LVM2 卷创建过程中出现问题。在这个版本中,通过将 PVC 请求的存储大小舍入到最接近的 512 的倍数来调整行为。(OCPBUGS-30032)
-
在以前的版本中,
LVMCluster
自定义资源 (CR) 包含正确设置的设备的 exclude status 元素。在这个版本中,过滤了为排除的 status 元素正确设置的设备,因此它只出现在就绪设备中。(OCPBUGS-29188) - 在以前的版本中,Amazon Web Services (AWS) Elastic File Store (EFS) Container Storage Interface (CSI) 驱动程序容器的 CPU 限制可能会导致 AWS EFS CSI Driver Operator 管理的卷性能下降。在这个版本中,AWS EFS CSI 驱动程序容器中的 CPU 限制已被删除,以帮助防止潜在的性能下降。(OCPBUGS-28551)
- 在以前的版本中,Microsoft Azure Disk CSI 驱动程序没有在特定实例类型中正确计算可分配卷,并超过最大值。因此,pod 无法启动。在这个版本中,Microsoft Azure Disk CSI 驱动程序的 count 表已更新,以包含新的实例类型。pod 现在运行,数据可以被读取和写入到正确配置的卷。(OCPBUGS-18701)
- 在以前的版本中,由于 CLI 中的一个错误,secret 在 Hosted Control Planes 上存储 Container Storage Interface 驱动程序将无法挂载 secret。在这个版本中,驱动程序可以挂载卷,并解决了这个问题。(OCPBUGS-34759)
- 在以前的版本中,因为驱动程序中的一个错误而无法配置 Microsoft Azure Workload Identity 集群中的静态持久性卷 (PV),从而导致 PV 挂载失败。在这个版本中,驱动程序可以正常工作,静态 PV 可以正常工作。(OCPBUGS-32785)