1.3. 新功能及功能增强
此版本对以下方面进行了改进。
1.3.1. Documentation
1.3.1.1. OpenShift Container Platform 入门
OpenShift Container Platform 4.10 现在包括了入门指南。OpenShift Container Platform 入门定义了基本术语,并为开发人员和管理员提供基于角色的后续步骤。
本教程通过 Web 控制台和 OpenShift CLI(oc
)接口来向新用户提供指导。新用户可通过 Getting Started 完成以下任务:
- 创建一个项目
- 授权查看权限
- 从 Quay 部署容器镜像
- 检查和扩展应用程序
- 从 GitHub 部署 Python 应用程序
- 从 Quay 连接到数据库
- 创建 secret
- 加载并查看应用程序
如需更多信息,请参阅 OpenShift Container Platform 入门。
1.3.2. Red Hat Enterprise Linux CoreOS (RHCOS)
1.3.2.1. 改进了裸机 RHCOS 安装的自定义
现在,当从 live ISO 和 PXE 镜像在裸机上安装 RHCOS 时,coreos-installer
程序带有 iso
自定义和 pxe
自定义子命令,以获取更灵活的自定义。
这包括可以定制安装过程,可以从自定义证书颁发机构或自签名证书的 HTTPS 服务器获取 Ignition 配置。
1.3.2.2. RHCOS 现在使用 RHEL 8.4
RHCOS 现在使用 OpenShift Container Platform 4.10 中的 Red Hat Enterprise Linux (RHEL) 8.4 软件包。这些软件包为您提供最新的修复、功能和增强,如 NetworkManager 功能,以及最新的硬件支持和驱动程序更新。
1.3.3. 安装和升级
1.3.3.1. AWS 安装的新默认组件类型
OpenShift Container Platform 4.10 安装程序在 AWS 上安装使用新的默认组件类型。安装程序默认使用以下组件:
- AWS EC2 M6i 实例,适用于 control plane 和计算节点,其中可用
- AWS EBS gp3 存储
1.3.3.2. install-config.yaml
文件中的 API 的改进
在以前的版本中,当用户在裸机安装程序置备的基础架构上安装 OpenShift Container Platform 时,他们没有配置自定义网络接口的位置,如静态 IP 或 vLANs 与 Ironic 服务器通信。
当只在裸机上配置第 1 天安装时,用户现在可以使用 install-config.yaml
文件中的 API 来自定义网络配置(networkConfig
)。此配置是在安装过程中设置置备过程,包括高级选项,如设置每个主机的静态 IP。
1.3.3.3. OpenShift Container Platform on ARM
OpenShift Container Platform 4.10 现在支持基于 AWS EC2 和裸机平台的 ARM。实例可用性和安装文档包括在不同平台支持的安装方法。
ARM 上的 OpenShift Container Platform 支持以下功能:
- OpenShift 集群监控
- RHEL 8 Application Streams
- OVNKube
- AWS Elastic Block Store(EBS)
- AWS .NET 应用程序
- 裸机上的 NFS 存储
ARM 上的 OpenShift Container Platform 支持以下 Operator:
- Node Tuning Operator
- Node Feature Discovery Operator
- Cluster Samples Operator
- Cluster Logging Operator
- Elasticsearch Operator
- Service Binding Operator
1.3.3.4. 使用安装程序置备的基础架构在 IBM Cloud 上安装集群(技术预览)
OpenShift Container Platform 4.10 支持使用安装程序置备的基础架构(IPI)在 IBM Cloud 上安装集群(技术预览)。
以下限制适用于使用 IPI 的 IBM 云:
- 不支持在以前已存在的网络上使用 IPI 部署 IBM Cloud。
- Cloud Credential Operator(CCO)只能使用 Manual 模式。不支持 Mint 模式或 STS。
- 不支持 IBM Cloud DNS 服务。需要一个 IBM Cloud Internet 服务的实例。
- 不支持私有或断开连接的部署。
如需更多信息,请参阅准备在 IBM Cloud 上安装。
1.3.3.5. VMware vSphere 集群安装的精简配置支持
当使用安装程序置备的基础架构安装集群时,OpenShift Container Platform 4.10 引进了对精简配置的磁盘的支持。您可以将磁盘置备为 thin
、thick
或 eagerZeroedThick
。有关 VMware vSphere 中磁盘置备模式的更多信息,请参阅 安装配置参数。
1.3.3.6. 将集群安装到 Amazon Web Services GovCloud 区域
AWS GovCloud 区域现在提供 Red Hat Enterprise Linux CoreOS(RHCOS)Amazon Machine Images(AMI)。这些 AMI 的可用性可以提高安装过程,因为您不再需要上传自定义 RHCOS AMI 来部署集群。
如需更多信息,请参阅 在 AWS 上安装集群到一个政府区域。
1.3.3.7. 为实例配置集使用自定义 AWS IAM 角色
从 OpenShift Container Platform 4.10 开始,如果您使用现有 IAM 角色配置集群,安装程序不会在部署集群时将shared
标签添加到角色。此功能增强提高了您要使用自定义 IAM 角色的机构安装过程,但安全策略会阻止使用 shared
标签。
1.3.3.8. vSphere 集群上的 CSI 驱动程序安装
要在 vSphere 上运行的集群中安装 CSI 驱动程序,您必须安装以下组件:
- 虚拟硬件版本 15 或更高版本
- vSphere 版本 6.7 更新 3 或更高版本
- VMware ESXi 版本 6.7 更新 3 或更高版本
虽然低于上述版本的组件仍被支持,但已被弃用。这些版本仍被完全支持,但 OpenShift Container Platform 的 4.11 版本需要 vSphere 虚拟硬件版本 15 或更高版本。
如果您的集群部署在 vSphere 上,并且以前的组件低于上述的版本,则可以从 OpenShift Container Platform 4.9 升级到 4.10,但不会安装 vSphere CSI 驱动程序。到 4.10 的程序错误修复和升级仍然被支持,但不能升级到 4.11。
1.3.3.9. 使用安装程序置备的基础架构在 Alibaba Cloud 上安装集群(技术预览)
OpenShift Container Platform 4.10 引进了使用安装程序置备的基础架构在 Alibaba Cloud 上安装集群的功能。这种类型的安装允许您使用安装程序在安装程序置备和集群维护的基础架构上部署集群。
1.3.3.10. 使用安装程序置备的基础架构在 Microsoft Azure Stack Hub 上安装集群
OpenShift Container Platform 4.10 支持使用安装程序置备的基础架构在 Azure Stack Hub 上安装集群。这种类型的安装允许您使用安装程序在安装程序置备和集群维护的基础架构上部署集群。
从 OpenShift Container Platform 4.10.14 开始,您可以使用 Premium_LRS
、standardSSD_LRS
, 或 standard_LRS
磁盘类型部署 control plane 和计算节点。默认情况下,安装程序会使用 premium_LRS
磁盘类型部署 control plane 和计算节点。在之前的 4.10 版本中,只支持 standard_LRS
磁盘类型。
如需更多信息,请参阅 使用安装程序置备的基础架构在 Azure Stack Hub 上安装集群。
1.3.3.11. 条件更新
OpenShift Container Platform 4.10 添加了对 OpenShift Update Service 提供的消耗条件更新路径的支持。条件更新路径会识别风险以及这些风险应用到集群的条件。Web 控制台的 Administrator 视角只提供推荐的升级路径,集群与已知的风险不匹配。但是,OpenShift CLI(oc
)4.10 或更高版本可以用来显示 OpenShift Container Platform 4.10 集群的额外升级路径。相关风险信息(包括支持文档引用)在路径中显示。管理员可以参阅这些引用的材料,来执行被支持但不推荐的升级。
1.3.3.12. oc-mirror CLI 插件用于断开连接的镜像(技术预览)
此发行版本引入了 oc-mirror OpenShift CLI(oc
)插件作为技术预览。您可以使用 oc-mirror 插件在断开连接的环境中镜像镜像。
如需更多信息,请参阅使用 oc-mirror 插件为断开连接的安装镜像镜像。
1.3.3.13. 在使用 OVS-DPDK 的 RHOSP 上安装集群
现在,您可以使用 Data Plane Development Kit(OVS-DPDK)网络在 Open vSwitch 上运行的计算机器的 Red Hat OpenStack Platform(RHOSP)上安装集群。在这些计算机上运行的工作负载可以从 OVS-DPDK 的性能和延迟改进中受益。
如需更多信息,请参阅在支持 DPDK 连接的计算机器 RHOSP 上安装集群。
1.3.3.14. 在 RHOSP 上安装时设置计算机器关联性
现在,在 RHOSP 上安装集群时,您可以选择计算机器关联性。默认情况下,计算机器使用 soft-anti-affinity
服务器策略进行部署,但您也可以选择 anti-affinity
或 soft-affinity
策略。
1.3.4. Web 控制台
1.3.4.1. Developer Perspective (开发者视角)
- 在这个版本中,您可以在进行绑定连接时在 Topology 视图中指定服务绑定连接器的名称。
在这个版本中,创建管道的工作流已被改进:
- 现在,当您从 Import from Git 管道工作流导入应用程序时,可以从下拉列表中选择用户定义的管道。
- 为使用 Import from Git 工作流创建的管道添加了默认 Webhook,URL 可以在 Topology 视图中所选资源侧面面板中显示。
现在,您可以通过在
TektonConfig
自定义资源中将enable-devconsole-integration
设置为false
来禁用默认的 Tekton Hub 集成。选择不使用 Tekton Hub 集成的
TektonConfig
CR 示例... hub: params: - name: enable-devconsole-integration value: 'false' ...
- Pipeline 构建器 包含集群支持的 Tekton Hub 任务,列表中的所有其他不支持的任务都排除在列表中。
- 在这个版本中,应用程序导出工作流会在导出进行时显示导出日志对话框或警报。您可以使用对话框取消或重启导出过程。
- 在这个版本中,您可以通过创建自定义资源,将新的 Helm Chart 仓库添加到 Developer Catalog 中。请参阅 Developer 视角中的快速入门指南来添加新的 ProjectHelmChartRepository。
- 在这个版本中,您可以使用 Developer Catalog 访问社区 devfile 样本。
1.3.4.2. 动态插件(技术预览)
从 OpenShift Container Platform 4.10 开始,创建 OpenShift 控制台动态插件的功能现在作为技术预览提供。您可以使用此功能在运行时自定义接口,包括:
- 添加自定义页面
- 添加视角和更新导航项
- 在资源页面中添加标签页和操作
如需有关动态插件的更多信息,请参阅 向 OpenShift Container Platform Web 控制台添加动态插件。
1.3.4.3. 在 debug 模式下运行 pod
在这个版本中,您可以在 web 控制台中查看调试终端。当 Pod 带有处于 CrashLoopBackOff
状态的容器 时,可以启动 debug Pod。此时会显示一个终端接口,可用于调试崩溃循环容器。
- 这个功能可以被 pod 状态弹出窗口访问(通过单击 pod 状态来访问),它提供了针对该 pod 中每个崩溃循环容器调试终端的链接。
- 您还可以在 Pod 详情页面的 Logs 选项卡中访问此功能。当选择崩溃循环容器时,会在日志窗口上显示 debug 终端链接。
另外,pod 状态弹出窗口现在提供 Pod 详情页面的 Logs 和 Events 选项卡的链接。
1.3.4.4. 自定义工作负载通知
在这个版本中,您可以在 User Preferences 页面中自定义工作负载通知。用户工作负载通知 在 通知 选项卡下,允许您隐藏显示在 Cluster Overview 页面或 drawer 中的用户工作负载通知。
1.3.4.5. 改进了配额可见性
在这个版本中,非管理员用户可以查看其在 Project Overview、ResourceQuotas 和 API Explorer 页面上的 AppliedClusterResourceQuota
使用情况,以确定集群范围内的配额可供使用。另外,ApplicationliedClusterResourceQuota
详情可在 Search 页面中找到。
1.3.4.6. 集群支持级别
OpenShift Container Platform 现在允许您在 Cluster Settings 中的 Overview
1.3.5. IBM Z 和 LinuxONE
在这个版本中,IBM Z 和 LinuxONE 与 OpenShift Container Platform 4.10 兼容。可以使用 z/VM 或 RHEL KVM 进行安装。有关安装说明,请参阅以下文档:
主要改进
IBM Z 和 LinuxONE 中的 OpenShift Container Platform 4.10 支持以下新功能:
- Pod 横向自动扩展
支持以下 Multus CNI 插件:
- Bridge
- Host-device
- IPAM
- IPVLAN
- Compliance Operator 0.1.49
- NMState Operator
- OVN-Kubernetes IPsec 加密
- Vertical Pod Autoscaler Operator
支持的功能
IBM Z 和 LinuxONE 也支持以下功能:
目前,支持以下 Operator:
- Cluster Logging Operator
- Compliance Operator 0.1.49
- Local Storage Operator
- NFD Operator
- NMState Operator
- OpenShift Elasticsearch Operator
- Service Binding Operator
- Vertical Pod Autoscaler Operator
- 加密数据存储在 etcd 中
- Helm
- 多路径(Multipathing)
- 使用 iSCSI 的持久性存储
- 使用本地卷的持久性存储(本地存储 Operator)
- 使用 hostPath 的持久性存储
- 使用 Fibre Channel 持久性存储
- 使用 Raw Block 的持久性存储
- OVN-Kubernetes
- 支持多个网络接口
- 三节点集群支持
- SCSI 磁盘中的 z/VM 模拟 FBA 设备
- 4K FCP 块设备
以下功能仅适用于 IBM Z 和 LinuxONE 上的 OpenShift Container Platform for 4.10:
- IBM Z 和 LinuxONE 为附加的 ECKD 存储的虚拟机启用了 HyperPAV
限制
以下限制会影响 OpenShift Container Platform 对 IBM Z 和 LinuxONE 的影响:
以下 OpenShift Container Platform 技术预览功能不被支持:
- 精度时间协议 (PTP) 硬件
以下 OpenShift Container Platform 功能不被支持:
- 使用机器健康检查功能自动修复损坏的机器
- CodeReady Containers (CRC)
- 在节点上控制过量使用和管理容器密度
- CSI 卷克隆
- CSI 卷快照
- FIPS 加密
- NVMe
- OpenShift Metering
- OpenShift Virtualization
- 在 OpenShift Container Platform 部署过程中启用 Tang 模式磁盘加密。
- worker 节点必须运行 Red Hat Enterprise Linux CoreOS(RHCOS)
- 必须使用 OpenShift Data Foundation 或其他受支持的存储协议来置备持久性共享存储
- 必须使用本地存储(如 iSCSI、FC 或者带有 DASD、FCP 或 EDEV/FBA 的 LSO)置备持久性非共享存储
1.3.6. IBM Power
在这个版本中,IBM Power 与 OpenShift Container Platform 4.10 兼容。有关安装说明,请参阅以下文档:
主要改进
OpenShift Container Platform 4.10 的 IBM Power 支持以下新功能:
- Pod 横向自动扩展
支持以下 Multus CNI 插件:
- Bridge
- Host-device
- IPAM
- IPVLAN
- Compliance Operator 0.1.49
- NMState Operator
- OVN-Kubernetes IPsec 加密
- Vertical Pod Autoscaler Operator
支持的功能
IBM Power 还支持以下功能:
目前,支持以下 Operator:
- Cluster Logging Operator
- Compliance Operator 0.1.49
- Local Storage Operator
- NFD Operator
- NMState Operator
- OpenShift Elasticsearch Operator
- Cluster Network Operator
- Service Binding Operator
- Vertical Pod Autoscaler Operator
- 加密数据存储在 etcd 中
- Helm
- 多路径(Multipathing)
- Multus SR-IOV
- NVMe
- OVN-Kubernetes
- 使用 iSCSI 的持久性存储
- 使用本地卷的持久性存储(本地存储 Operator)
- 使用 hostPath 的持久性存储
- 使用 Fibre Channel 持久性存储
- 使用 Raw Block 的持久性存储
- 支持多个网络接口
- 支持 Power10
- 三节点集群支持
- 4K 磁盘支持
限制
OpenShift Container Platform 对 IBM Power 的影响如下:
以下 OpenShift Container Platform 技术预览功能不被支持:
- 精度时间协议 (PTP) 硬件
以下 OpenShift Container Platform 功能不被支持:
- 使用机器健康检查功能自动修复损坏的机器
- CodeReady Containers (CRC)
- 在节点上控制过量使用和管理容器密度
- FIPS 加密
- OpenShift Metering
- OpenShift Virtualization
- 在 OpenShift Container Platform 部署过程中启用 Tang 模式磁盘加密。
- worker 节点必须运行 Red Hat Enterprise Linux CoreOS(RHCOS)
- 持久性存储必须是使用本地卷、OpenShift Data Foundation、网络文件系统(NFS)或 Container Storage Interface(CSI)的 Filesystem 类型
1.3.7. 安全性与合规性
有关安全和合规组件新功能、功能增强和程序错误修复的信息,请参阅 Compliance Operator 和 File Integrity Operator 发行注记。
如需有关安全和合规性的更多信息,请参阅 OpenShift Container Platform 安全和合规性。
1.3.8. 网络
1.3.8.1. 双栈服务要求指定 ipFamilyPolicy
当您创建使用多个 IP 地址系列的服务时,您必须在 Service 对象定义中明确指定 ipFamilyPolicy: PreferDualStack
或 ipFamilyPolicy: RequireDualStack
。这个更改会破坏与 OpenShift Container Platform 早期版本的向后兼容性。
如需更多信息,请参阅 BZ#2045576。
1.3.8.2. 在集群安装后更改集群网络 MTU
在集群安装后,如果您使用 OpenShift SDN 集群网络供应商或 OVN-Kubernetes 集群网络供应商,您可以更改硬件 MTU 和集群网络 MTU 值。更改跨集群的 MTU 具有破坏性,且需要多次重启每个节点。如需更多信息,请参阅 更改集群网络 MTU。
1.3.8.3. OVN-Kubernetes 支持网关配置
OVN-Kubernetes CNI 网络供应商添加了对配置如何将出口流量发送到节点网关的支持。默认情况下,在 OVN 中处理出口流量以退出集群,流量不受内核路由表中的特殊路由的影响。
此功能增强添加了一个 gatewayConfig.routingViaHost
字段。在这个版本中,该字段可在运行时设置为安装后活动,如果设为 true
,则出口流量从 pod 发送到主机网络堆栈。这个版本对在内核路由表中手动配置路由提供了高特殊化的安装和应用程序。
此增强与 Open vSwitch 硬件卸载功能有交互。在这个版本中,当 gatewayConfig.routingViaHost
字段被设置为 true
时,您不会收到卸载的性能优势,因为出口流量是由主机网络堆栈处理的。
要设置出口流量,请使用 gatewayConfig.routingViaHost
,如果已在 openshift-network-operator
命名空间中设置,删除 gateway-mode-config
配置映射。如需有关 gateway-mode-config
解决方案以及在 OpenShift Container Platform 4.10 及更高版本中设置 OVN-Kubernetes 网关模式的更多信息,请参阅更新。
如需更多信息,请参阅 OVN-Kubernetes CNI 集群网络供应商的配置。
1.3.8.4. 网络指标的改进
现在,集群提供了以下指标。以 sdn_controller
开头的指标名称对于 OpenShift SDN CNI 网络供应商是唯一的。以 ovn
开头的指标名称对于 OVN-Kubernetes CNI 网络供应商是唯一的:
-
network_attachment_definition_instances{networks="egress-router"}
-
openshift_unidle_events_total
-
ovn_controller_bfd_run
-
ovn_controller_ct_zone_commit
-
ovn_controller_flow_generation
-
ovn_controller_flow_installation
-
ovn_controller_if_status_mgr
-
ovn_controller_if_status_mgr_run
-
ovn_controller_if_status_mgr_update
-
ovn_controller_integration_bridge_openflow_total
-
ovn_controller_ofctrl_seqno_run
-
ovn_controller_patch_run
-
ovn_controller_pinctrl_run
-
ovnkube_master_ipsec_enabled
-
ovnkube_master_num_egress_firewall_rules
-
ovnkube_master_num_egress_firewalls
-
ovnkube_master_num_egress_ips
-
ovnkube_master_pod_first_seen_lsp_created_duration_seconds
-
ovnkube_master_pod_lsp_created_port_binding_duration_seconds
-
ovnkube_master_pod_port_binding_chassis_port_binding_up_duration_seconds
-
ovnkube_master_pod_port_binding_port_binding_chassis_duration_seconds
-
sdn_controller_num_egress_firewall_rules
-
sdn_controller_num_egress_firewalls
-
sdn_controller_num_egress_ips
在 4.10 发行版中,删除了 ovnkube_master_resource_update_total
指标。
1.3.8.5. 在 YAML 视图和 Web 控制台表单间切换
- 在以前的版本中,当在 web 控制台上的 YAML 视图 和 Form 视图 间切换时,更改不会被保留。另外,切换到 YAML 视图 后,您无法返回到 Form view。在这个版本中,您可以在 web 控制台中轻松切换 YAML view 和 Form view,而不会丢失更改。
1.3.8.6. 根据网络策略列出目标的 pod
在 OpenShift Container Platform Web 控制台中使用网络策略功能时,会列出受策略影响的 pod。列出更改作为这些策略部分中的组合命名空间和 pod 选择器被修改:
- peer 定义
- 规则定义
- 入口
- Egress
受影响的 pod 列表仅包含用户可访问的 pod。
1.3.8.7. 增强 must-gather 以简化网络追踪
oc adm must-gather
命令以简化收集网络数据包捕获的方式进行了改进。
在以前的版本中,oc adm must-gather
只能启动单个 debug pod。在这个版本中,您可以同时在多个节点上启动 debug pod。
您可以使用增强功能来同时在多个节点上运行数据包捕获,以简化对网络通信问题进行故障排除。新的 --node-selector
参数提供了一种方式,可识别您要为哪些节点收集数据包捕获的节点。
1.3.8.8. 二级网络的 Pod 级别绑定
在 pod 级别的绑定对于启用需要高可用性和更多吞吐量的 pod 内的工作负载至关重要。使用 pod 级别绑定,您可以在内核模式接口上从多个根 I/O 虚拟化(SR-IOV)虚拟功能接口创建绑定接口。SR-IOV 虚拟功能传递到 pod,并附加到内核驱动程序中。
需要 pod 级别绑定的情况包括从不同物理功能的多个 SR-IOV 虚拟功能创建绑定接口。可以利用主机上的两个不同物理功能创建绑定接口,以便在 pod 级别上实现高可用性。
1.3.8.9. 对在公共云中安装的集群的出口 IP 地址支持
作为集群管理员,您可以将一个或多个出口 IP 地址与命名空间关联。出口 IP 地址可确保一个一致的源 IP 地址与离开集群的特定命名空间中的流量关联。
对于 OVN-Kubernetes 和 OpenShift SDN 集群网络供应商,您可以在以下公共云供应商上配置出口 IP 地址:
- Amazon Web Services (AWS)
- Google Cloud Platform (GCP)
- Microsoft Azure
如需更多信息,请参阅集群网络供应商的相关文档:
1.3.8.10. OpenShift SDN 集群网络供应商网络策略支持出口策略和 ipBlock 例外
如果使用 OpenShift SDN 集群网络供应商,您现在可以在带有 ipBlock
和 ipBlock.except
的网络策略中使用出口规则。您可以在 NetworkPolicy
对象的 egress
数组中定义出口策略。
如需更多信息,请参阅关于网络策略。
1.3.8.11. Ingress Controller 路由器压缩
此功能增强增加了在 HAProxy Ingress Controller 中为特定 MIME 类型配置全局 HTTP 流量压缩的功能。当有大量压缩路由流量时,这个更新启用了 gzip 压缩的入口工作负载。
如需更多信息,请参阅 使用路由器压缩。
1.3.8.12. 支持 CoreDNS 自定义
集群管理员现在可以配置 DNS 服务器,以允许通过配置的默认域的服务器进行 DNS 名称解析。DNS 转发配置可以同时在 /etc/resolv.conf
文件和上游 DNS 服务器中指定的默认服务器。
如需更多信息,请参阅 使用 DNS 转发。
1.3.8.13. 支持 CoreDNS 日志级别和 Operator 日志级别
此功能增强添加了相应的功能,可以单独或整个集群中手动更改 Operator 的日志级别。
如需更多信息,请参阅设置 CoreDNS 日志级别
1.3.8.14. 支持在 Ingress Controller 中配置 syslog 信息的最大长度
现在,您可以将 Ingress Controller 中 syslog 信息的最大长度设置为 480 到 4096 字节的任何值。
如需更多信息,请参阅 Ingress Controller 配置参数。
1.3.8.15. 设置 CoreDNS 转发策略
现在,您可以通过 DNS Operator 设置 CoreDNS 转发策略。默认值为 Random
,您也可以将值设为 RoundRobin
或 Sequential
。
如需更多信息,请参阅 使用 DNS 转发。
1.3.8.16. SR-IOV 的 Open vSwitch 硬件卸载支持
现在,您可以配置 Open vSwitch 硬件卸载以提高兼容裸机节点上的数据处理性能。硬件卸载是一种处理数据的方法,它从 CPU 中删除数据处理任务,并将其传送到网络接口控制器的专用数据处理单元。此功能的好处包括更快的数据处理、减少 CPU 工作负载以及较低的计算成本。
如需更多信息,请参阅配置硬件卸载。
1.3.8.17. 使用 Red Hat External DNS Operator 创建 DNS 记录(技术预览)
现在,您可以使用云供应商(如 AWS、Azure 和 GCP)上的 Red Hat External DNS Operator 创建 DNS 记录。您可以使用 OperatorHub 安装外部 DNS Operator。您可以根据需要使用参数配置 ExternalDNS
。
如需更多信息,请参阅了解外部 DNS Operator。
1.3.8.18. Mutable Ingress Controller 端点发布策略增强
集群管理员现在可以配置 Ingress Controller 端点发布策略,以更改 OpenShift Container Platform 中 Internal
和 External
之间的负载均衡器范围。
如需更多信息,请参阅 Ingress Controller 端点发布策略。
1.3.8.19. 用于 RHOSP 上的集群的 OVS 硬件卸载(技术预览)
对于在 Red Hat OpenStack Platform(RHOSP)上运行的集群,您可以启用 Open vSwitch(OVS)硬件卸载。
如需更多信息,请参阅启用 OVS 硬件卸载。
1.3.8.20. 减少了 Kuryr 创建的 RHOSP 资源
对于在 RHOSP 上运行的集群,Kuryr 现在只为 pod 网络上至少有一个 pod 的命名空间创建 Neutron 网络和子网。另外,当在命名空间中至少创建了 pods 网络上的一个 pod 后,命名空间中的池会被填充。
1.3.8.21. 支持 RHOSP DCN(技术预览)
现在,您可以使用分布式计算节点(DCN)配置的 Red Hat OpenStack Platform(RHOSP) 部署部署集群。此部署配置有几个限制:
- 仅支持 RHOSP 版本 16。
- 对于 RHOSP 16.1.4,边缘仅支持超融合基础架构(HCI)和 Ceph 技术。
- 对于 RHOSP 16.2,也支持非HCI 和 Ceph 技术。
- 网络必须提前创建(使用您自己的网络)作为租户或提供商网络。这些网络必须调度到适当的可用区。
1.3.8.22. 支持 RHOSP 上集群的外部云供应商(技术预览)
在 RHOSP 上运行的集群现在可以使用 Cloud Provider OpenStack。这个功能可作为 TechPreviewNoUpgrade
功能集的一部分提供。
1.3.8.23. 在安装程序置备的集群中使用 NMState 配置主机网络接口
OpenShift Container Platform 现在为安装程序置备的集群提供了一个 networkConfig
配置设置,它会使用一个 NMState YAML 配置来配置主机接口。在安装程序置备的安装过程中,您可以将 networkConfig
配置设置和 NMState YAML 配置添加到 install-config.yaml
文件中。另外,您可以在使用 Bare Metal Operator 时将 networkConfig
配置设置和 NMState YAML 配置添加到裸机主机资源中。
networkConfig
配置设置的最常见用例是在安装过程中或在扩展集群时在主机的网络接口上设置静态 IP 地址。
如需更多信息,请参阅 install-config.yaml 文件中配置主机网络接口。
1.3.8.24. linuxptp 服务的边界时钟和 PTP 增强
现在,您可以在 PtpConfig
配置集中指定多个网络接口,以允许运行 RAN vDU 应用程序的节点充当精确时钟协议 Boundary Clock(PTP T-BC)。现在,配置为边界时钟的接口也支持 PTP fast 事件。
如需更多信息,请参阅 将 linuxptp 服务配置为边界时钟。
1.3.8.25. 支持 Intel 800-Series Columbiaville NIC
现在,针对配置为边界时钟或普通时钟的接口完全支持 Intel 800-Series Columbiaville NIC。在以下配置中支持 Columbiaville NIC:
- Ordinary 时钟
- 边界时钟同步到 Grandmaster 时钟
- 带有与上游源时钟同步的一个端口的边界时钟,以及提供下游时间到目标时钟的三个端口
如需更多信息,请参阅配置 PTP 设备。
1.3.8.26. 对于裸机、IBM Power、IBM Z 和 LinuxONE 安装,Kubernetes NMState Operator 现在已正式发布(GA)
OpenShift Container Platform 现在为裸机、IBM Power、IBM Z 和 LinuxONE 安装提供 Kubernetes NMState Operator。对于其他平台,Kubernetes NMState Operator 仍是一个技术预览。如需了解更多详细信息,请参阅关于 Kubernetes NMState Operator。
1.3.8.27. SR-IOV 支持 Mellanox MT2892 卡
SR-IOV 支持现在可用于 Mellanox MT2892 卡。
1.3.8.28. Network Observability Operator 观察网络流量流
现在,您可以安装 Network Observability Operator 来在控制台中观察 OpenShift Container Platform 集群的网络流量。您可以使用不同的图形表示来查看和监控网络流量数据。Network Observability Operator 使用 eBPF 技术来创建网络流。网络流包括了 OpenShift Container Platform 的信息并存储在 Loki 中。您可以使用网络流量信息来详细地进行故障排除和分析。
Network Observability Operator 在 OpenShift Container Platform 4.12 发行版本中是 General Availability (GA),它也在 OpenShift Container Platform 4.10 中被支持。
如需更多信息,请参阅 Network Observability。
1.3.8.28.1. Network Observability Operator 更新
Network Observability Operator 发行版本独立于 OpenShift Container Platform 次版本流的更新。更新可以通过单一的滚动流提供,该流在所有当前支持的 OpenShift Container Platform 4 版本中被支持。有关 Network Observability Operator 的新功能、功能增强和程序错误修复的信息,请参阅 Network Observability 发行注记。
1.3.9. 硬件
1.3.9.1. MetalLB 负载均衡的改进
本发行版本中包括对 MetalLB 和 MetalLB Operator 的以下改进:
- 添加了对 Border Gateway Protocol(BGP)的支持。
- 添加了对 BGP 的双向转发检测(BFD)的支持。
- 添加了对 IPv6 和双栈网络的支持。
-
添加了对在
speaker
pod 上指定节点选择器的支持。现在,您可以控制哪些节点用于广告负载均衡器服务 IP 地址。此功能增强适用于第 2 层模式和 BGP 模式。 - 验证是否添加了 Web hook,以确保地址池和 BGP peer 自定义资源有效。
-
4.9 版本中引入的
AddressPool
和MetalLB
自定义资源定义的v1alpha1
API 版本已弃用。这两个自定义资源都会更新到v1beta1
API 版本。 - 添加了对 MetalLB 自定义资源定义中的 speaker pod 容限的支持。
如需更多信息,请参阅关于 MetalLB 和 MetalLB Operator。
1.3.9.2. 支持修改主机固件设置
OpenShift Container Platform 支持 HostFirmwareSettings
和 FirmwareSchema
资源。在裸机主机上部署 OpenShift Container Platform 时,在置备前或置备后,有时您需要对主机进行更改。这包括检查主机的固件和 BIOS 详情。有两个新资源可用于 Bare Metal Operator(BMO):
-
HostFirmwareSettings
:您可以使用HostFirmwareSettings
资源来检索和管理主机的 BIOS 设置。资源包含从基板管理控制器(BMC)返回的完整 BIOS 配置。但是,BareMetalHost
资源中的固件字段会返回三个供应商独立字段,但HostFirmwareSettings
资源通常包含每个主机模型的很多特定厂商相关字段的 BIOS 设置。 -
FirmwareSchema
:您可以使用FirmwareSchema
来识别主机的可修改 BIOS 值,并在更改主机固件设置时限制。
如需了解更多详细信息,请参阅裸机配置。
1.3.10. 存储
1.3.10.1. 存储指标指示符
-
在这个版本中,工作负载可以使用由 Shared Resource CSI 驱动程序提供的内联临时
csi
卷在命名空间间安全地共享Secret
和ConfigMap
对象。Container Storage Interface(CSI)卷和 Shared Resource CSI 驱动程序是技术预览功能。(BUILD-293)
1.3.10.2. 控制台存储插件增强
- 在 Console Storage Plug-in 中添加了一个新功能,用于在屏幕阅读器的整个安装流中添加 Aria 标签。这为使用屏幕读取器访问控制台的用户提供更好的可访问性。
- 添加了一项新功能,以提供指示用于持久性卷声明(PVC)的卷使用的空间量。这些信息会出现在 PVC 列表中,在 Used 列中的 PVC 详情中。(BZ#1985965)
1.3.10.3. 使用 Alibaba AliCloud Disk CSI Driver Operator 的持久性存储
OpenShift Container Platform 可以使用 AliCloud Disk 的 Container Storage Interface(CSI)驱动程序置备持久性卷(PV)。管理此驱动程序的 AliCloud Disk Driver Operator 已正式发布,并在 OpenShift Container Platform 4.10 中默认启用。
如需更多信息,请参阅 AliCloud Disk CSI Driver Operator。
1.3.10.4. 使用 Microsoft Azure File CSI Driver Operator 的持久性存储(技术预览)
OpenShift Container Platform 可以使用 Azure File 的 Container Storage Interface(CSI)驱动程序置备持久性卷(PV)。管理此驱动程序的 Azure File Driver Operator 只是一个技术预览。
如需更多信息,请参阅 Azure File CSI Driver Operator。
1.3.10.5. 使用 IBM VPC Block CSI Driver Operator 的持久性存储
OpenShift Container Platform 可以使用 IBM Virtual Private Cloud(VPC)块的 Container Storage Interface(CSI)驱动程序置备持久性卷(PV)。在 OpenShift Container Platform 4.10 中,管理此驱动程序的 IBM VPC Block Driver Operator 已正式发布,并默认启用。
如需更多信息,请参阅 IBM VPC Block CSI Driver Operator。
1.3.10.6. 使用 VMware vSphere CSI Driver Operator 的持久性存储已正式发布
OpenShift Container Platform 可以使用 vSphere 的 Container Storage Interface(CSI)驱动程序置备持久性卷(PV)。此功能以前作为技术预览功能在 OpenShift Container Platform 4.8 中引入,现在在 OpenShift Container Platform 4.10 中正式发布并启用。
如需更多信息,请参阅 vSphere CSI Driver Operator。
安装 vSphere CSI Driver Operator 需要:
- 已安装了特点的最低组件版本。请参阅 vSphere 集群上的 CSI 驱动程序安装
- 删除所有非 Red Hat vSphere CSI 驱动器 (删除一个非 Red Hat vSphere CSI Operator Driver)
-
删除所有名为
thin-csi
的存储类
即使满足上述条件,集群仍会升级,但建议您满足这些要求,以拥有受支持的 vSphere CSI Operator 驱动程序。
1.3.10.7. 使用 Microsoft Azure Disk CSI Driver Operator 的持久性存储已正式发布
OpenShift Container Platform 可以使用 Azure Disk 的 Container Storage Interface(CSI)驱动程序置备持久性卷(PV)。此功能以前作为技术预览功能在 OpenShift Container Platform 4.8 中引入,现在在 OpenShift Container Platform 4.10 中正式发布并启用。
如需更多信息,请参阅 Azure Disk CSI Driver Operator。
1.3.10.8. 使用 AWS Elastic File Storage CSI Driver Operator 的持久性存储已正式发布
OpenShift Container Platform 可以使用 AWS Elastic File Storage(EFS)的 Container Storage Interface(CSI)驱动程序置备持久性卷(PV)。此功能以前作为技术预览功能在 OpenShift Container Platform 4.9 中引入,现在在 OpenShift Container Platform 4.10 中正式发布。
如需更多信息,请参阅 AWS EFS CSI Driver Operator。
1.3.10.9. 自动 CSI 迁移支持 Microsoft Azure 文件(技术预览)
从 OpenShift Container Platform 4.8 开始,在树内卷插件自动迁移到对应的 Container Storage Interface(CSI)驱动程序作为技术预览。此功能支持将 Azure File in-tree 插件自动迁移到 Azure File CSI 驱动程序。
如需更多信息,请参阅 CSI 自动迁移。
1.3.10.10. 自动 CSI 迁移支持 VMware vSphere(技术预览)
从 OpenShift Container Platform 4.8 开始,在树内卷插件自动迁移到对应的 Container Storage Interface(CSI)驱动程序作为技术预览。此功能支持将 vSphere in-tree 插件自动迁移到 vSphere CSI 驱动程序。
如需更多信息,请参阅 CSI 自动迁移。
1.3.10.11. 使用 fsGroup 减少 pod 超时
如果存储卷包含很多文件(大约 1,000,000 或更多),则可能出现 pod 超时的问题。
OpenShift Container Platform 4.10 引进了使用 fsGroup
和 fsGroupChangePolicy
的功能,以跳过存储卷的递归权限更改,这有助于避免 pod 超时问题。
如需更多信息,请参阅使用 fsGroup 减少 pod 超时。
1.3.11. Registry
1.3.12. Operator 生命周期
1.3.12.1. 禁用复制的 CSV 以支持大型集群
当 Operator Lifecycle Manager(OLM)安装 Operator 时,会在 Operator 配置为监视的每个命名空间中创建其集群服务版本(CSV)的简化副本。这些 CSV 被称为复制的 CSV;它们识别在给定命名空间中主动协调资源事件的控制器。
在大型集群中,带有命名空间和安装的 Operator 可能存在于数百个或数千种 CSV 中,复制的 CSV 消耗大量资源,如 OLM 的内存用量、集群 etcd 限值和网络带宽。为了支持这些较大的集群,集群管理员现在可以为采用 AllNamespaces
模式安装的 Operator 禁用复制的 CSV。
如需了解更多详细信息,请参阅配置 Operator Lifecycle Manager 功能。
1.3.12.2. 依赖项的通用和复杂限制
具有特定依赖项要求的 Operator 现在可以使用复杂的限制或要求表达式。新的 olm.constraint
捆绑包属性包含依赖项约束信息。message 字段允许 Operator 作者传达关于使用特定约束的原因的高级详细信息。
如需了解更多详细信息,请参阅 Operator Lifecycle Manager 依赖项解析。
1.3.12.3. Operator Lifecycle Manager 支持 Hypershift
Operator Lifecycle Manager(OLM)组件(包括 Operator 目录)现在可以在 Hypershift 管理的 control plane 上完全运行。此功能不会对 worker 节点上的租户产生任何成本。
1.3.12.4. Operator Lifecycle Manager 支持 ARM
在以前的版本中,默认的 Operator 目录不支持 ARM。在这个版本中,Operator Lifecycle Manager(OLM)为 ARM 集群添加默认 Operator 目录。现在,OperatorHub 会为支持 ARM 的 Operator 默认包括内容。(BZ#1996928)
1.3.13. Operator 开发
1.3.13.1. 混合 Helm Operator(技术预览)
与基于 Go 和基于 Ansible 的 Operator 相比(它们已实现 Operator maturity model 中的 Auto Pilot capability (level V)),Operator SDK 中对标准的基于 Helm 的 Operator 支持有一定限制。
从 OpenShift Container Platform 4.10 开始,Operator SDK 包括一个混合 Helm Operator,通过 Go API 增强基于 Helm 的现有支持能力。Operator 作者可生成以 Helm Chart 开头的 Operator 项目,然后在 Go 语言将基于事件的逻辑添加到 Helm reconciler 中。作者可以使用 Go 继续在同一项目中添加新的 API 和自定义资源定义(CRD)。
如需了解更多详细信息,请参阅 混合 Helm Operator 的 Operator SDK 指南。
1.3.13.2. 基于 Ansible 的 Operator 的自定义指标
Operator 作者现在可以使用 Operator SDK 中的基于 Ansible 的 Operator 支持来公开自定义指标、发出 Kubernetes 事件并提供更好的日志记录。
如需了解更多详细信息,请参阅公开基于 Ansible 的 Operator 的自定义指标。
1.3.13.3. 基于 Go 的 Operator 的对象修剪
operator-lib
修剪工具允许基于 Go 的 Operator 清理对象,如作业或 pod,它们可保留集群并使用资源。实用程序包括基于 Go 的 Operator 的常见修剪策略。Operator 作者也可以使用实用程序创建自定义 hook 和策略。
如需有关修剪工具的更多信息,请参阅基于 Go 的 Operator 的对象修剪工具。
1.3.13.4. 用于断开连接的环境的基于摘要的捆绑包
在这个改进中,Operator SDK 现在可以将 Operator 项目打包在一个与 Operator Lifecycle Manager(OLM)断开连接的环境中工作的捆绑包中。Operator 作者可以运行 make bundle
命令,并将 USE_IMAGE_DIGESTS
设置为 true
,以自动更新 Operator 镜像引用摘要而不是标签。要使用该命令,您必须使用环境变量来替换硬编码相关镜像引用。
有关为断开连接的环境开发 Operator 的更多信息,请参阅为受限网络环境启用 Operator。
1.3.14. 构建(build)
在这个版本中,您可以使用 OpenShift 构建中的 CSI 卷,它是一个技术预览功能。此功能依赖于新引入的 Shared Resource CSI Driver 和 Insights Operator 来导入 RHEL Simple Content Access(SCA)证书。例如,通过使用这个功能,您可以使用
SharedSecret
对象运行授权构建,并在构建期间安装授权 RPM 软件包,而不是将 RHEL 订阅凭证和证书复制到构建命名空间中。(BUILD-274)重要只有在启用了
TechPreviewNoUpgrade
功能集时,SharedSecret
对象和 OpenShift Shared Resources 功能才可用。这些技术预览功能不是默认功能的一部分。启用此功能集无法撤消,而且会阻止升级。不建议在生产环境集群中使用此功能集。请参阅使用 FeatureGate 启用技术预览功能。-
在这个版本中,工作负载可以使用由 Shared Resource CSI 驱动程序提供的内联临时
csi
卷在命名空间间安全地共享Secret
和ConfigMap
对象。Container Storage Interface(CSI)卷和 Shared Resource CSI 驱动程序是技术预览功能。(BUILD-293)
1.3.15. Jenkins
-
在这个版本中,您可以运行 Jenkins 代理作为 sidecar 容器。您可以使用此功能在 Jenkins 管道中运行具有正确配置的 pod 模板和 Jenkins 文件的任何容器镜像。现在,若要编译代码,您可以使用 Jenkins 运行两个新 pod 模板,名为
java-build
和nodejs-builder
作为 sidecar 容器。这两个 pod 模板使用openshift
命名空间中的java
和nodejs
镜像流提供的最新 Java 和 NodeJS 版本。以前的非 sidecarmaven
和nodejs
pod 模板已被弃用。(JKNS-132)
1.3.16. 机器 API
1.3.16.1. Azure Ephemeral OS 磁盘支持
在这个版本中,您可以创建一个在 Azure 上运行的机器集,用于在 Ephemeral OS 磁盘上部署机器。临时 OS 磁盘使用本地虚拟机容量,而不是远程 Azure 存储。
如需更多信息,请参阅 部署 Ephemeral OS 磁盘的机器设置。
1.3.16.2. Azure 加速网络支持
在这个版本中,您可以使用 Machine API 为 Microsoft Azure 虚拟机启用加速网络。加速网络使用单一根 I/O 虚拟化(SR-IOV)为虚拟机提供更直接的路径到交换机。
如需更多信息,请参阅 Microsoft Azure 虚拟机的加速网络。
1.3.16.3. 全局 Azure 可用性集支持
在这个版本中,您可以使用全局 Azure 区域中的可用性集,它们没有多个可用区来确保高可用性。
1.3.16.4. Google Cloud Platform 上的 GPU 支持
Google Cloud Platform(GCP)Compute Engine 允许用户在虚拟机实例中添加 GPU。得益于访问 GPU 资源的工作负载可在启用了此功能的计算机器上更好地执行。在这个版本中,您可以使用 Machine API 定义用于实例的 GPU。
如需更多信息,请参阅启用机器集 的 GPU 支持。
1.3.16.5. 集群自动扩展节点使用率阈值
在这个版本中,您可以在 ClusterAutoscaler
资源定义中指定节点使用阈值。这个阈值代表节点使用率级别,低于这个级别时一个不必要的节点会被删除。
如需更多信息,请参阅关于集群自动扩展。
1.3.17. Machine Config Operator
1.3.17.1. 增强的配置偏移检测
在这个版本中,如果机器配置中指定的任何文件发生文件系统写入事件,在应用新机器配置前,Machine Config Daemon(MCD)会检查节点是否有配置偏移。在以前的版本中,MCD 在节点引导时才会检查配置偏移。这一改变的原因时,节点重启的频率并不足以避免因为配置偏移导致的问题,直到管理员修正了相关问题。
当节点的磁盘上状态与机器配置中配置的内容不同时,配置偏移发生。Machine Config Operator(MCO)使用 MCD 检查节点是否有配置偏移,如果检测到,则将节点和机器配置池(MCP)设置为 降级
。
有关配置偏移的更多信息,请参阅了解配置偏移检测。
1.3.18. 节点
1.3.18.1. Linux 控制组版本 2(开发者预览)
现在,您可以在集群中的特定节点上启用 Linux 控制组群版本 2 (cgroups v2)。用于启用 cgroups v2 的 OpenShift Container Platform 进程会禁用所有 cgroup 版本 1 控制器和层次结构。OpenShift Container Platform cgroup 版本 2 功能是一个开发者预览(Developer Preview)功能,目前还不被红帽支持。如需更多信息,请参阅启用 Linux 控制组群版本 2(cgroups v2)。
1.3.18.2. 支持在节点上使用 swap 内存(技术预览)
您可以根据节点为 OpenShift Container Platform 工作负载启用交换内存使用。如需更多信息,请参阅在节点上启用交换内存使用。
1.3.18.3. 使用 Node Maintenance Operator 将节点置于维护模式
Node Maintenance Operator(NMO)cordon 从集群的其余部分中分离节点,并排空节点上的所有 pod。通过将节点置于维护模式,您可以调查机器的问题,或在底层机器上执行操作,这可能会导致节点失败。这是 NMO 的独立版本。如果安装了 OpenShift Virtualization,则必须使用与之捆绑的 NMO。
1.3.18.4. Node Health Check Operator 的改进(技术预览)
Node Health Check Operator 提供了这些新改进:
- 支持在断开连接的模式下运行
- 防止与机器健康检查冲突。如需更多信息,请参阅关于节点健康检查如何防止与机器健康检查冲突
1.3.18.5. poison Pill Operator 的改进
Poison Pill Operator 使用 NodeDeletion
作为其默认补救策略。NodeDeletion
补救策略会删除节点
对象。
在 OpenShift Container Platform 4.10 中,Poison Pill Operator 引入了一个新的补救策略,称为 ResourceDeletion
。ResourceDeletion
补救策略会删除节点上的 pod 和关联的卷附加,而不是节点
对象。此策略有助于更快地恢复工作负载。
1.3.18.6. RHOSP 上的 control plane 节点迁移
现在,您可以在不中断服务的情况下,将 control plane 节点从一个 RHOSP 主机迁移到另一个 RHOSP 主机。
1.3.19. Red Hat OpenShift Logging
在 OpenShift Container Platform 4.7 中,Cluster Logging 变为了 Red Hat OpenShift Logging。如需更多信息,请参阅 Red Hat OpenShift Logging 的发行注记。
1.3.20. 监控
此版本的监控堆栈包括以下新功能和修改后的功能:
1.3.20.1. 监控堆栈组件和依赖项
监控堆栈组件和依赖项的更新包括:
- Alertmanager 到 0.23.0
- Grafana 到 8.3.4
- kube-state-metrics 到 2.3.0
- node-exporter 到 1.3.1
- prom-label-proxy 到 0.4.0
- Prometheus 到 2.32.1
- Prometheus adapter 到 0.9.1
- Prometheus operator 到 0.53.1
- Thanos 到 0.23.1
1.3.20.2. OpenShift Container Platform Web 控制台中的 metrics 目标的新页面
OpenShift Container Platform Web 控制台中的新的 Metrics Targets 页面显示默认 OpenShift Container Platform 项目和用户定义的项目的目标。您可以使用此页面来查看、搜索和过滤当前用于修整的端点,这有助于识别和排除问题。
1.3.20.3. 监控组件已更新,以将 TLS 身份验证用于指标集合
在这个版本中,所有监控组件都配置为使用 mutual TLS 身份验证,而不是为指标集合的 Bearer Token 静态身份验证。TLS 身份验证更灵活地用于 Kubernetes API 中断,并降低了 Kubernetes API 的负载。
1.3.20.4. Cluster Monitoring Operator 更新为使用全局 TLS 安全配置集
在这个版本中,Cluster Monitoring Operator 组件遵循全局 OpenShift Container Platform tlsSecurityProfile
设置。以下组件和服务现在使用 TLS 安全配置集:
- Alertmanager Pod(端口 9092 和 9097)
- kube-state-metrics pod(端口 8443 和 9443)
- openshift-state-metrics pod(端口 8443 和 9443)
- node-exporter pod(端口 9100)
- Grafana pod(端口 3002)
- prometheus-adapter pods (端口 6443)
- prometheus-k8s pods (端口 9092 和 10902)
- Thanos query pods (端口 9092、9093 和 9094)
- Prometheus Operator(端口 8080 和 8443)
- Telemeter-client pod(端口 8443)
如果您启用了用户定义的监控,则以下 pod 现在使用配置集:
- prometheus-user-workload pods (端口 9091 和 10902)
- prometheus-operator pod (端口 8080 和 8443)
1.3.20.5. 对警报规则的更改
New
-
为所有 Thanos 警报规则添加
namespace
标签。 -
将
openshift_io_alert_source="platform"
标签添加到所有平台警报。
-
为所有 Thanos 警报规则添加
已更改
-
将
AggregatedAPIDown
重命名为KubeAggregatedAPIDown
。 -
将
AggregatedAPIErrors
重命名为KubeAggregatedAPIErrors
。 -
删除了
HighlyAvailableWorkloadIncorrectlySpread
警告。 -
改进了
KubeMemoryOvercommit
警报的描述。 -
改进了
NodeFilesystemSpaceFillingUp
警报,使其与 Kubernetes 垃圾回收阈值一致。 -
从
KubePersistentVolumeFillingUp
警报中排除ReadOnlyMany
卷。 -
扩展
PrometheusOperator
警报以包含在openshift-user-workload-monitoring
命名空间中运行的 Prometheus Operator。 -
将
ThanosSidecarPrometheusDown
和ThanosSidecarUnhealthy
警报替换为ThanosSidecarNoConnectionToStartedPrometheus
。 -
将
KubeletTooManyPods
的严重性从warning
改为info
。 -
向一个持久性卷资源添加
alerts.k8s.io/KubePersistentVolumeFillingUp: disabled
标签来启用从KubePersistentVolumeFillingUp
警告中排除特定的持久性卷。
-
将
红帽不保证记录规则或警报规则的向后兼容性。
1.3.20.6. 对指标的更改
- 在分片级别提供以 Pod 为中心的 cAdvisor 指标已被丢弃。
现在公开以下指标:
-
kube_poddisruptionbudget_labels
-
kube_persistentvolumeclaim_labels
-
kube_persistentvolume_labels
-
-
带有
kube_*annotation
的指标已从kube-state-metrics
中移除。
红帽不保证指标的向后兼容性。
1.3.20.7. 为某些组件添加了硬反关联性规则和 pod 中断预算
在这个版本中,在以下监控组件启用了硬反关联性规则和 pod 中断预算,以便在补丁升级过程中缩短停机时间:
Alertmanager
注意作为此更改的一部分,Alertmanager 副本的数量已从三减到两个。但是,在升级过程中,删除的第三个副本的持久性卷声明(PVC)不会被自动删除。如果您已经为 Alertmanager 配置持久性存储,您可以从 Cluster Monitoring Operator 手动删除此 PVC。如需更多信息,请参阅"已知问题"部分。
- Prometheus adapter
- Prometheus
- Thanos querier
如果您已经启用了用户定义的监控,则以下组件还会使用这些规则和预算:
- Prometheus
- Thanos Ruler
1.3.20.8. 用户定义的项目的警报路由(技术预览)
此发行版本引入了一个技术预览功能,管理员可以为用户定义的项目监控启用警报路由。然后,用户可以为其用户定义的项目添加并配置警报路由。
1.3.20.9. Alertmanager
从 OpenShift Container Platform 路由访问第三方 Alertmanager Web 用户界面已被删除。
1.3.20.10. Prometheus
- OpenShift Container Platform 集群管理员现在可以为 Prometheus 配置查询日志记录。
- 对第三方 Prometheus Web 用户界面的访问已弃用,并将在以后的 OpenShift Container Platform 发行版本中删除。
1.3.20.11. Prometheus adapter
- Prometheus 适配器现在使用 Thanos Querier API 而不是 Prometheus API。
- OpenShift Container Platform 集群管理员现在可以为 Prometheus 适配器配置审计日志。
1.3.20.12. Thanos querier
- 从 OpenShift Container Platform 路由访问第三方 Thanos Querier Web 用户界面已被删除。
-
Thanos Querier tenancy 端口现在会公开
/api/v1/labels
,/api/v1/label/*/values
, 和/api/v1/series
端点。 - OpenShift Container Platform 集群管理员现在可以配置查询日志记录。
- 如果启用了用户工作负载监控,从 OpenShift Container Platform 路由中删除对第三方 Thanos Ruler Web 用户界面的访问权限。
1.3.20.13. Grafana
对第三方 Grafana Web 用户界面的访问已弃用,并将在以后的 OpenShift Container Platform 发行版本中删除。
1.3.21. 可伸缩性和性能
1.3.21.1. 新的特殊资源 Operator 指标
Special Resource Operator(SRO)现在公开指标,以帮助您监控 SRO 自定义资源和对象的健康状态。如需更多信息,请参阅 Prometheus Special Resource Operator metrics。
1.3.21.2. 特殊资源 Operator 自定义资源定义字段
将 oc explain
用于 Special Resource Operator(SRO)现在为 SRO 自定义资源定义(CRD)提供在线文档。此增强可以为 CRD 字段提供更好的特定项。(BZ#2031875)
1.3.21.3. 添加到 Telemetry 的新 Node Tuning Operator 指标
Node Tuning Operator(NTO)指标现在添加到 Telemetry 中。按照显示 Telemetry 收集的数据 中的步骤来查看 Telemetry 收集的所有指标。
1.3.21.4. NFD Topology Updater 现已正式发布
Node Feature Discovery(NFD)Topology Updater 是一个守护进程,负责检查 worker 节点上分配的资源。它考虑可以为每个区分配给新 pod 的资源,其中区域可以是 Non-Uniform Memory Access(NUMA)节点。如需更多信息,请参阅使用 NFD Topology Updater。
1.3.21.5. 超线程感知 CPU Manager 策略(技术预览)
OpenShift Container Platform 中提供了超线程感知 CPU Manager 策略,而无需额外的调整。如果需要,集群管理员可以启用此功能。超线程由硬件抽象为逻辑处理器。超线程允许单个物理处理器同时执行两个重量线程(processes),从而动态共享处理器资源。
1.3.21.6. 使用 NUMA Resources Operator 进行可以识别 NYUMA 的调度(技术预览)
默认的 OpenShift Container Platform 调度程序不会在计算节点中看到 NUMA 区域。这可能会导致对延迟敏感的工作负载的调度没有处于最佳状态。现在提供了一个新的 NUMA 资源 Operator,它将部署一个可以识别 NUMA 的辅助调度程序。可识别 NUMA 的辅助调度程序根据集群中可用 NUMA 区域的完整视图,为工作负载做出调度决策。这样可确保在单个 NUMA 区域中处理对延迟敏感的工作负载,以最大化效率和性能。
如需更多信息,请参阅关于 NUMA 的调度。
1.3.21.7. 使用 SiteConfig 过滤器在 ZTP spoke 集群安装过程中过滤自定义资源
现在,您可以使用过滤器来自定义 SiteConfig
CR,使其包含或排除要在零接触置备 (ZTP) GitOps 管道的安装阶段使用的其他 CR。如需更多信息,请参阅使用 SiteConfig 过滤器过滤自定义资源。
1.3.21.8. 对于 vDU 的用例,在 PolicyGenTemplate CR 中禁用 chronyd
在运行 RAN vDU 应用程序的节点上,如果您从早期版本升级到 OpenShift Container Platform 4.10,则必须禁用 chronyd
。要禁用 chronyd
,在 Tuned PerformancePatch.yaml
文件的 .spec.profile.data
下的 [service]
部分添加以下行。TunedPerformancePatch.yaml
文件在组 PolicyGenTemplate
CR 中被引用:
[service] service.chronyd=stop,disable
如需更多信息,建议集群配置来运行 vDU 应用程序。
1.3.22. 备份和恢复
1.3.23. 开发者体验
1.3.23.1. 修剪部署副本集(技术预览)
此发行版本在 oc adm prune deployments
命令引入了一个技术预览标志 --replica-sets
。默认情况下,使用 oc adm prune deployments
命令只修剪复制控制器。当您将 --replica-sets
设置为 true
时,修剪过程中也会包含副本集。
如需更多信息,请参阅修剪部署资源。
1.3.24. Insights Operator
1.3.24.1. 导入简单内容访问证书
在 OpenShift Container Platform 4.10 中,Insights Operator 现在默认从 Red Hat OpenShift Cluster Manager 导入简单内容访问证书。
如需更多信息,请参阅使用 Insights Operator 导入简单的内容访问证书。
1.3.24.2. 深入了解 Operator 数据收集功能的增强
为了减少发送到 Red Hat 的数据量,Insights Operator 仅在满足特定条件时收集信息。例如,Insights Operator 仅在 Alertmanager 无法发送警报通知时收集 Alertmanager 日志。
在 OpenShift Container Platform 4.10 中,Insights Operator 会收集以下额外信息:
-
(条件性) 来自触发
KubePodCrashlooping
和KubePodNotReady
警报的 pod 的日志 -
(条件性)当
AlertmanagerClusterFailedToSendAlerts
或AlertmanagerFailedToSendAlerts
警报被触发时,Alertmanager 的日志 - 来自 Alertmanager 的静默警报
- 来自 journal 单元的节点日志(kubelet)
-
安装有
costmanagement-metrics-operator
的集群的CostManagementMetricsConfig
- 监控堆栈 Prometheus 实例的时间序列数据库状态
- 有关 OpenShift Container Platform 调度程序的更多信息
通过这些附加信息,红帽改进了 OpenShift Container Platform 功能并增强了 Insights Advisor 建议。
1.3.25. 认证和授权
1.3.25.1. 同步 OpenID Connect 身份提供程序中的组成员资格
此发行版本引进了对在用户登录时从 OpenID Connect 供应商同步到 OpenShift Container Platform 的组成员资格的支持。您可以通过在 OpenShift Container Platform OpenID Connect 身份提供程序配置中配置 groups
声明来启用。
如需更多信息,请参阅 OpenID Connect CR 示例。
1.3.25.2. 其他支持的 OIDC 供应商
Okta 和 Ping Identity OpenID Connect(OIDC)供应商现在经过测试并受 OpenShift Container Platform 支持。
有关 OIDC 供应商的完整列表,请参阅支持的 OIDC 供应商。
1.3.25.3. oc 命令现在从 Podman 配置位置获取凭证
在以前的版本中,使用 registry 配置的 oc
命令(如 oc registry login
或 oc image
命令)从 Docker 配置位置获取凭证。在 OpenShift Container Platform 4.10 中,如果默认 Docker 配置位置无法访问 registry 条目,oc
命令会从 Podman 配置位置获取凭证。您可以使用 REGISTRY_AUTH_PREFERENCE
环境变量将首选项设置为 docker
或 podman
,以对位置进行优先排序。
用户还可以选择使用 REGISTRY_AUTH_FILE
环境变量,作为现有 --registry-config
CLI 标志的替代变量。REGISTRY_AUTH_FILE
环境变量也与 podman
兼容。
1.3.25.4. 支持 Google Cloud Platform Workload Identity
现在,您可以使用 Cloud Credential Operator(CCO)实用程序 ccoctl
将 CCO 配置为使用 Google Cloud Platform Workload Identity。当 CCO 配置为使用 GCP Workload 身份时,集群组件可以使用简短、有限权限的安全凭证来模拟 IAM 服务帐户。
如需更多信息,请参阅在 GCP Workload Identity 中使用手动模式。
在 OpenShift Container Platform 4.10.8 中,因为发现了一个对镜像 registry 有负面影响的问题,删除了使用 GCP Workload Identity 的镜像 registry 支持。要使用 Workload Identity 的 OpenShift Container Platform 4.10.8 集群上使用镜像 registry,您必须将镜像 registry 配置为使用长期凭证。
在 OpenShift Container Platform 4.10.21 中,恢复了对使用带有镜像 registry 的 GCP Workload Identity 的支持。如需有关 OpenShift Container Platform 4.10.8 和 4.10.20 中此功能状态的更多信息,请参阅相关的知识库文章。