1.2. 新功能及功能增强

此版本对以下方面进行了改进

1.2.1. 安装和升级

1.2.1.1. OpenShift Container Platform 升级分阶段部署

在 OpenShift Container Platform 4.1 中,红帽引进了升级频道的概念,用于为集群推荐适当的升级版本。升级频道分离升级策略,并可用来控制更新的节奏。频道与 OpenShift Container Platform 的次要版本关联。例如,OpenShift Container Platform 4.3 频道永远不会包括到版本 4.4 的升级。这可确保管理员明确决定升级到下一个 OpenShift Container Platform 次要版本。频道只控制更新,且不会影响到安装的集群版本;指定补丁级别的 OpenShift Container Platform 中的 openshift-install 二进制文件始终会安装该补丁级别。

您必须选择与计划升级到的 OpenShift Container Platform 版本相对应的升级频道版本。OpenShift Container Platform 4.3 包括从之前的 4.2 版本的升级。

有关更新类型和升级频道的更多信息,请参阅 OpenShift 4.x 升级分阶段部署

因为把升级发布到频道的过程是根据 Red Hat Service Reliability engineering (SRE) 团队的数据向客户逐渐推出的,所以您可能不会在 web 控制台中马上看到从 4.2.z 升级到 4.3 的更新信息。

1.2.1.2. 支持 FIPS 加密

现在,您可以安装一个使用经 FIPS 验证的/IUT (Implementation Under Test) 加密库的 OpenShift Container Platform 集群。OpenShift Container Platform 在 Red Hat Enterprise Linux (RHEL) 和 Red Hat CoreOS (RHCOS) 中使用特定的 FIPS 验证的/IUT(Implementation Under Test)模块用于使用它们的操作系统组件。如需更多信息,请参阅 FIPS 加密的支持

1.2.1.3. 在 AWS 、Azure 或 GCP 上部署私有集群

您可以将私有集群安装到

  • Amazon Web Services (AWS) 上的现有 VPC。
  • Google Cloud Platform (GCP) 上的现有 VPC。
  • Microsoft Azure 上的现有 Azure Virtual Network (VNet) 。

要在这些云平台上创建私有集群,您必须提供一个现有的专用 VPC/VNet 和子网来托管集群。安装程序将 Ingress Operator 和 API 服务器配置为只可以从私有网络访问。

如需有关将私有集群部署到支持的云平台的更多信息,请参阅 AWSAzureGCP 的安装指南。

1.2.2. 安全性

1.2.2.1. 服务服务证书 CA 自动化轮转

对于此发行版本,未来的 z-stream 更新中会提供自动服务 CA 轮转功能。在以前的版本中,服务 CA 不会自动续订,从而造成服务中断并需要手动干预进行修复。服务 CA 和签名密钥现在会在过期前自动轮转。这可让管理员预先规划其环境,避免服务中断。

1.2.2.2. 加密存储在 etcd 中的数据

现在,您可以对存储在 etcd 中的数据进行加密。在集群中启用对 etcd 进行加密的功能可为数据的安全性提供额外的保护层。

启用 etcd 加密时,以下 OpenShift API 服务器和 Kubernetes API 服务器资源将被加密:

  • Secrets
  • ConfigMaps
  • Routes
  • OAuth 访问令牌
  • OAuth 授权令牌

1.2.3. 集群监控

1.2.3.1. web 控制台中的 PromQL 查询浏览器的改进

现在,OpenShift Container Platform Web 控制台中使用的 PromQL 查询浏览器的性能已有所改进。

1.2.3.2. 为 KubeletTooManyPods 警报使用 Pod 容量指标

KubeletTooManyPods 警报现在使用 Pod 容量指标作为阈值而不是固定数字。

1.2.3.3. 监控您自己的服务(技术预览)

现有的监控堆栈可以扩展,您可以为自己的服务配置监控功能。

1.2.3.4. 在 web 控制台中查询指标(技术预览)

现在可以通过 OpenShift Container Platform Web 控制台中的 Developer 视角来查询指标。

1.2.4. 机器 API

1.2.4.1. 使用机器健康检查自动修复损坏的机器

一个被删除的机器实例不再会尝试重新创建新实例。相反,机器会进入一个失败的阶段。您可以通过配置和部署机器健康检查,在一个机器池中自动修复损坏的机器。

监控 MachineHealthCheck 资源的控制器将检查您定义的状态。如果机器不能通过健康检查,会自动被删除并创建新的机器来代替它。删除机器之后,您会看到“机器被删除”事件。为限制删除机器造成的破坏性影响,控制器一次仅清空并删除一个节点。

若要停止检查,请删除其资源。

1.2.5. 日志记录

1.2.5.1. 日志转发(技术预览)

Log Forwarding API 能提供将容器和节点日志发送到目的地的方法,而目的地不一定由 OpenShift Container Platform 集群日志记录基础架构管理。目标端点可以在您的 OpenShift Container Platform 集群中,也可以在集群以外。日志转发提供了比使用 Fluentd 插件更容易的转发日志的方法,而无需将集群设置为非受管状态。请参阅使用 Log Forwarding API 转发日志来获得更详细的信息。

1.2.6. 开发者体验

1.2.6.1. OpenShift Do 的改进

OpenShift Do (odo) 有几个改进,主要针对应用程序部署的用户体验:

  • PushTimeout 已添加为可配置的 wait 参数。
  • 通过更多输出和信息提示,服务目录和组件的创建有所改进。
  • 构架支持增加了对 IBM Z 和 Power 平台的支持,提供可用于安装的二进制文件。

1.2.6.2. Helm(技术预览)

helm 是 Kubernetes 和 OpenShift Container Platform 应用程序的软件包管理器。它使用名为 Helm charts 的打包格式来简化应用程序和服务的定义、安装和升级。

Helm CLI 由 OpenShift Container Platform 构建并提供,可在 Web 控制台的 CLI 菜单中下载。

1.2.7. Web 控制台

1.2.7.1. 新的项目仪表板

新的Project(项目)仪表板现在可从管理员和开发者视角访问。此仪表板提供以下有关项目的信息:

  • status/health
  • 外部链接
  • inventory
  • 使用率
  • 资源配额
  • 活动及主要消耗者

1.2.7.3. 提供集群范围的第三方用户界面

现在,您可以集成集群范围的第三方用户界面,以便使用 ConsoleLink 自定义资源定义来开发、管理并配置 Operator 支持的服务。

1.2.7.4. 新的 ConsoleYAMLSample 自定义资源定义

新的 ConsoleYAMLSample 自定义资源定义可随时动态地将 YAML 示例添加到任何 Kubernetes 资源中。

如需更多信息,请参阅自定义 Web 控制台

1.2.7.5. 从 web 控制台访问支持问题单

现在,您可以在 web 控制台的帮助菜单中访问红帽支持问题单。

1.2.7.6. 查看安全漏洞

现在,您可以从 Web 控制台仪表板查看容器漏洞。这会利用 Quay Operator,支持内部和外部 Quay registry。只有 Quay 管理的镜像才会报告安全漏洞。

1.2.7.7. 新用户管理部分

现在,可以通过 User Resource 来访问所有用户管理资源。

另外还添加了模拟用户的功能,这样您就可以查看用户使用控制台时可以看到什么信息。

1.2.7.8. 创建警报接收器

现在,您可以创建警报接收器来获得与集群状态相关的警报信息。您可以创建 PagerDuty 和 Webhook 警报类型。

1.2.7.9. Developer Perspective (开发者视角)

现在,您可以使用开发者视角来:

  • 创建无服务器应用程序及修订版本,并在修订版本间分割流量。
  • 删除应用程序及其所有组件。
  • 为项目中的用户分配 RBAC 权限。
  • 使用绑定连接器将应用程序与 Service 绑定。

1.2.7.10. CSI 置备程序现在在存储类创建页面中显示

现在,存储类创建页面中会显示容器存储接口 (CSI) 置备程序。存储类在用户界面中是硬编码的; 基于 CSI 的存储类是动态的,且没有静态名称。现在,用户可以在存储类创建页面中列出基于 CSI 的置备程序,也可以创建它。

1.2.8. 网络

1.2.8.1. 配置网络策略

OpenShift Container Platform 中提供了 Kubernetes v1 NetworkPolicy 功能,但 Egress 策略类型和 IPBlock 除外。

NetworkPolicy 对 IPBlock 的支持有一定限制,它支持没有 except 的 IPBlock。如果创建的策略带有一个有 exceptipBlock 项,SDN Pods 的日志中会出现警告,策略中的整个 ipBlock 项都会被忽略。

1.2.8.2. Kuryr CNI 支持 Red Hat OpenStack Platform (RHOSP)

您可在使用 Kuryr SDN 的 RHOSP 13 和 16 上安装自定义集群。请参阅在带有 Kuryr 的 OpenStack 上安装集群指南。

1.2.9. 扩展

1.2.9.1. 集群最大限制

针对 OpenShift Container Platform 4.3 的集群最大限制指导信息已更新。

使用 OpenShift Container Platform Limit Calculator 可以估算出您的环境的集群限制。

1.2.10. 存储

1.2.10.1. OpenShift Container Storage 4.2

现在,您可以部署、管理、监控和迁移 Red Hat OpenShift Container Storage 4.2 集群。如需更多信息,请参阅 Red Hat OpenShift Container Storage 4.2 发行注记

1.2.10.2. 使用 iSCSI 的持久性存储

现在,OpenShift Container Platform 4.3 已完全支持使用 iSCSI 的持久性卷(以前为技术预览功能)。

1.2.10.3. 原始块卷支持

iSCSI 原始块卷现在被 OpenShift Container Platform 4.3 完全支持(以前为技术预览)。

使用 Cinder 的原始块卷现在还是一个技术预览功能。

1.2.10.4. CSI 卷扩展

现在,您可以在存储卷被创建后,使用 Container Storage Interface (CSI) 来扩展它们。在技术预览中默认启用这个功能。

1.2.10.5. 在 Local Storage Operator 中使用容忍功能

Local Storage Operator 现在可以容忍节点污点,您可以从污点节点置备本地卷。

1.2.11. Operator

1.2.11.1. Samples Operator

Samples Operator 在安装过程中自动识别集群架构,且不会在 Power 和 Z 架构中安装不兼容的 x86_64 内容。

Samples Operator 还使用 Prometheus metrics 收集有关哪个镜像流导入失败的信息,以及 Samples Operator 是否有无效配置。如果镜像流无法导入,或 Samples Operator 具有无效的配置,则会发送警报。

1.2.11.2. Image Registry Operator

Image Registry Operator 有以下改进:

  • registry 管理状态在 Baremetal 、vSphere 和 Red Hat Virtualization 平台上被设置为 Removed ,这样就可以配置其他存储供应商。在置备存储之外,新安装必须将 registry 状态设置为 Managed
  • 当 registry 存储有变化时会发送警报,因为这可能导致数据丢失。

1.2.11.3. 简化的 OperatorHub 的镜像(mirror)

假设在一个与网络断开连接的环境中运行一个对断开连接的集群和运行 oc adm 命令的工作站都可用的 registry,您现在可以通过以下三个步骤来对 OperatorHub 进行镜像:

  1. 将 Operator 目录镜像(mirror)到容器镜像中,使用 oc adm catalog build 推送到断开连接的 registry 中。
  2. 解析引用的 Operator 和应用镜像,并使用 oc adm catalog mirror推送到断开连接的 registry 中。
  3. 使用 oc apply -f ./manifests在断开连接的集群中启用镜像的 (mirror) 目录。

详情请参阅在受限网络中使用 Operator Lifecycle Manager

1.2.11.4. Operator 遥测和警报

Lifecycle Operator Manager (OLM) 现在会报告已安装的 Operator 信息。例如,OLM 会发送有关 Operator 转换到失败状态的警报。