4.14 版本信息和更新操作
该版本已废弃。 尽快将群集更新到 支持的版本。
查看有关 Red Hat OpenShift on IBM Cloud版本 4.14 的信息。 此版本基于 Kubernetes 版本 1.27。
要查找有关更新集群的常规信息或其他版本的信息吗? 请参阅 Red Hat Red Hat OpenShift on IBM Cloud 版本信息 和 V 4.14 博客。
Red Hat OpenShift on IBM Cloud 是 CNCF 软件一致性认证计划下 版本的认证 产品。Kubernetes 1.27 Kubernetes Kubernetes® 是 基金会在美国和其他国家的注册商标,根据 基金会的许可使用。Linux Linux
发布时间线
下表包含版本 4.14的预期发布时间线。 您可以将此信息用于规划目的,例如,估算版本可能变为不受支持的一般时间。
标记有短剑 (†
) 的日期表示这是暂定时间,会随时更改。
是否受支持? | Red Hat OpenShift / Kubernetes 版本 | 发布日期 | 不受支持的日期 |
---|---|---|---|
支持 | 4.14 / 1.27 | 2023 年 12 月 13 日 | 2026 年 1 月 8 日† |
准备更新
查看 将集群 更新为 V 4.14时可能需要进行的更改。 此信息汇总了在更新时可能对已部署的应用程序产生影响的更新。
在更新主节点之前更新
下表列出了 更新群集主控 程序前必须采取的操作。
具有专用服务端点的 VPC 集群的集群主访问权从 V 4.13显着更改。 在更新此类型的集群之前,请查看以下信息,并考虑在升级集群之前必须进行哪些更改。 另外,在创建仅具有专用服务端点的新 4.14 集群之前,请考虑此问题。
类型 | 描述 |
---|---|
不受支持: 不推荐使用和已移除 OpenShift 功能部件 | 有关更多信息,请查看 OpenShift V 4.14 不推荐使用和已移除的功能部件 以及 准备更新到 OpenShift Container Platform 4.14 以获取所需的可能操作。 |
已知 OpenShift 问题 | 有关更多信息,请查看 OpenShift V 4.14 已知问题 以了解所需的可能操作。 |
升级需要 OpenShift 集群版本货币 | 如果 OpenShift 集群版本状态显示更新已在进行中,则集群主升级将被取消。 有关详细信息,请参阅 Why does OpenShift show the cluster version is not up to date?。 |
修改后的VPC安全组所需规则 | 如果您修改了集群的默认VPC安全组,在升级之前,您必须添加一个安全组规则,以临时允许TCP流量进入openvpn或Konnectivity节点端口。 添加到默认 VPC 安全组的规则应与 kube-<clusterID> 安全组中现有的 UDP 规则匹配。 如果没有这条规则,TCP流量阻塞可能会导致webhook无法正常工作,从而破坏集群并导致升级失败。 有关向安全组添加规则的信息,请参阅 在控制台中创建安全组规则 或 在命令行中创建安全组规则。 |
升级需要解析为 OpenShift 集群版本可升级条件 | 如果 OpenShift 集群版本 Upgradeable 状态条件显示集群不可升级,则集群主升级可能会被取消。 要确定集群是否可升级,请参阅 检查集群的 Upgradeable 状态。 如果集群未处于可升级状态,那么条件信息将提供升级之前必须遵循的指示信息。 有关更多信息,请参阅 提供管理员应答。 |
Pod 安全许可标签同步更改 | 高度特权的名称空间 default ,kube-public 和 kube-system 可免于 pod 安全许可实施。 即,pod 安全许可标签同步将确保这些名称空间强制实施 privileged pod 安全许可。 您可以通过将 security.openshift.io/scc.podSecurityLabelSync 名称空间标签的值设置为
false 来禁用其他名称空间的 pod 安全许可标签同步。 有关更多信息,请参阅 了解和管理 pod 安全许可。 |
OpenVPN 已替换为 Konnectivity | Konnectivity 将 OpenVPN 替换为用于保护 OpenShift 主节点到工作程序节点通信的 Kubernetes API 服务器网络代理。 如果您的应用程序依赖 OpenVPN 来实现 OpenShift 主节点与工作节点之间的安全通信,请更新您的应用程序以支持 Konnectivity。 |
经典基础设施 私人服务 端点启用 | 如果您的集群启用了“专用服务端点”,请确保满足必要的账户要求。 有关更多信息,请参阅启用 VRF 和服务端点。 |
对 VPC 集群的联网更改 | 在4.13及更早版本中,VPC 群集通过IBM Cloud Container Registry的私有云服务端点从Container Registry 提取映像。 对于 V 4.14 和更高版本,将更新此网络路径,以便通过 VPE 网关而不是专用服务端点来拉取映像。 有关更新操作,请参阅 VPC 集群的联网更改。 |
VPC 已还原版本 4.13 中引入的仅具有专用服务端点的 VPC 集群的集群访问更改。 |
|
检查群集的 Upgradeable
状态
运行以下命令检查群集的 Upgradeable
状态。
oc get clusterversion version -o json | jq '.status.conditions[] | select(.type == "Upgradeable")'
Upgradeable
状态为 False
的示例输出。
{
"lastTransitionTime": "2023-10-04T15:55:54Z",
"message": "Kubernetes 1.27 and therefore OpenShift 4.14 remove several APIs which require admin consideration. Please see the knowledge article https://access.redhat.com/articles/6958395 for details and instructions.",
"reason": "AdminAckRequired",
"status": "False",
"type": "Upgradeable"
}
如果 Upgradeable
状态为 False
,那么条件信息提供在升级之前必须遵循的指示信息。 有关更多信息,请参阅 提供管理员应答。
VPC 集群的联网更改
在4.13及更早版本中,VPC 群集通过IBM Cloud Container Registry的私有云服务端点从Container Registry 提取映像。 对于 V 4.14 和更高版本,将更新此网络路径,以便通过 VPE 网关而不是专用服务端点来拉取映像。 此更改会影响 VPC 中的所有群集;当您将 VPC 中的单个群集创建或更新为4.14 版本时,该 VPC 中的所有群集(无论其版本如何)都会更新其网络路径。 根据安全组、网络 ACL 和网络策略的设置,您可能需要进行更改,以确保工人在更新到4.14 版后能继续成功提取容器映像。
下图显示了 V 4.14的新网络路径,该版本使用 VPE Gateway for Registry 而不是专用服务端点。
通过网络路径更新,创建或更新要在 V 4.14 上运行的 VPC 集群会向 VPC 添加新的 VPE 网关。 此 VPE 网关专门用于从IBM Cloud Container Registry提取映像,并为 VPC 中至少有一个群集工作者的每个区域分配一个 IP 地址。 DNS 条目将添加到用于将所有 icr.io
域名解析为新的 VPE 网关 IP 地址的整个 VPC 中。 根据配置网络安全组件的方式,您可能需要执行操作以确保允许与新 VPE 的连接。
我需要做些什么?
确保 VPC 集群工作程序节点继续从 Container Registry 中拉取映像所需的步骤取决于您的网络安全设置。
- 如果将缺省网络规则用于所有安全组,网络 ACL 和网络策略,那么无需执行任何操作。
- 如果您具有用于阻止 VPC 中某些 TCP 连接的定制网络安全设置,那么在更新或创建版本为 4.14的新集群之前,必须执行其他操作。 请在以下部分中进行调整,以确保允许连接到新的 VPE Gateway for Registry。
无论是否需要执行其他步骤,如果在 VPC 中保留未运行 V 4.14 的其他集群,那么必须在这些集群上 刷新集群主。 此刷新可确保将正确的更新应用于 non-4.14 集群,以便允许流向新 VPE 的流量。
我有定制安全组。 我要改变什么?
当您更新或创建版本为 4.14的集群时,必需的允许规则将自动添加到 IBM管理的 kube-<cluster_ID>
集群安全组。 但是,如果您创建了一个 不 使用 kube-<cluster_ID>
集群安全组规则的 VPC 集群,那么必须确保实施以下安全组规则以允许流向注册表的 VPE 网关的流量。 如果尚未在定制设置中实现这些规则,请 添加这些规则。
必须为 VPC 中的每个区域创建这些规则中的每个规则,并且必须将该区域的整个 VPC 地址前缀范围指定为目标 CIDR。 要查找 VPC 中每个专区的 VPC 地址前缀范围,请运行 ibmcloud is vpc-address-prefixes <vpc_name_or_id>
。
在自定义安全组中添加以下规则。
规则类型 | 协议 | 目标 IP 或 CIDR | 目标端口 |
---|---|---|---|
出站 | TCP | 整个 VPC 地址前缀范围 | 443 |
要使这些规则更具限制性,可以将目标设置为 VPE Gateway 使用的安全组,也可以指定准确的 VPE Gateway 保留 IP 地址。 请注意,如果除去 VPC 中的所有集群工作程序,那么可以更改这些 IP 地址。
我有定制 ACL。 我要改变什么?
如果已将适用于集群工作程序的 VPC 网络 ACL 定制为仅允许某些出口和入口流量,请确保实现以下 ACL 规则或等效规则以允许与 VPE Gateway for Registry 的连接。 如果尚未实现这些规则,请 添加这些规则。 必须为 VPC 中的每个区域创建这些规则中的每个规则,并且必须将该区域的整个 VPC 地址前缀范围指定为源
(对于出站规则) 或目标 (对于入站规则) CIDR。 要查找 VPC 中每个专区的 VPC 地址前缀范围,请运行 ibmcloud is vpc-address-prefixes <vpc_name_or_id>
。 每个规则的优先级应该高于任何以其他方式拒绝此流量的规则,例如拒绝所有流量的规则。
将以下规则添加到定制 ACL。
规则类型 | 协议 | 源 IP 或 CIDR | 源端口 | 目标 IP 或 CIDR | 目标端口 |
---|---|---|---|---|---|
出站/允许 | TCP | 整个 VPC 地址前缀范围 | 任意 | 整个 VPC 地址前缀范围 | 443 |
入站/允许 | TCP | 整个 VPC 地址前缀范围 | 443 | 整个 VPC 地址前缀范围 | 任意 |
我有定制网络策略。 我要改变什么?
如果使用 Calico 策略来限制来自集群工作程序的出站连接,那么必须添加以下策略规则以允许连接到 VPE Gateway for Registry。 必须为 VPC 中的每个区域创建此策略,并且必须将该区域的整个 VPC 地址前缀范围指定为目标 CIDR。 要查找 VPC 中每个专区的 VPC 地址前缀范围,请运行 ibmcloud is vpc-address-prefixes <vpc_name_or_id>
。
apiVersion: projectcalico.org/v3
kind: GlobalNetworkPolicy
metadata:
name: allow-vpe-gateway-registry
spec:
egress:
- action: Allow
destination:
nets:
- <entire-vpc-address-prefix-range> # example: 10.245.0.0/16
ports:
- 443
protocol: TCP
source: {}
order: 500
selector: ibm.role == 'worker_private'
types:
- Egress