为 ROSA 和 OSD 创建完全可定制的非默认 IngressController
已更新 -
目录
有什么新功能?
在 Red Hat OpenShift Dedicated (OSD) 和 Red Hat OpenShift Service on AWS (ROSA) 4.14 版本中,Ingress 变为让客户更好地控制其工作负载和配置。
使用 Openshift 版本 4.14 创建 OSD/ROSA 集群或从 4.13 升级到 4.14 时,以下新功能被启用:
- 客户将能够创建和管理基于 HAProxy 的额外的Ingress 控制器资源以及安装程序提供的默认资源。红帽将继续全面支持额外的 Ingress,并且后者将完全可配置。
- 客户可以在安装前后在默认 Ingress 上配置以下附加标志:
- 客户可以在非 STS 集群上使用 ROSA CLI 1在 AWS 网络负载均衡器和 AWS 经典负载均衡器之间切换。
- 客户可以排除命名空间解析。以
openshift-
或kube-
开头的命名空间不能被排除。这相当于 OCP =IngressController= 上的this字段,且默认包括所有命名空间。 - 客户可以排除与标签选择器匹配的路由被默认 Ingress 解析。其标签与
openshift- 或 kube-
命名空间中的路由匹配的路由选择器不能被排除。这相当于 OCPIngressController
上的this字段,默认包括所有路由。 - 客户可以允许路由匹配多个命名空间中的路径。这相当于 OCP
IngressController
上的this字段,且默认处于关闭状态。 - 客户可以创建具有通配符域的路由。这相当于 OCP
IngressController
上的this字段,且默认处于关闭状态。
- 客户可以在安装后修改主机名和
componentRoutes
的 TLS 证书。这些是OAuth 、Console和Downloads路由。
有关这些配置选项的更多信息,请参阅最新版本 CLI 1中的rosa edit ingress
和rosa create cluster
命令。
有什么变化?
在 4.14 版本上,以下内容将发生变化:
- ROSA/OSD v4.14 及更高版本的新集群将仅提供网络负载均衡器(而不是经典负载均衡器)。
- 一旦使用 AWS 网络负载均衡器,ROSA STS 集群就无法切换回 AWS 经典负载均衡器。
- 通过
rosa edit ingress
或ocm edit ingress
对默认 Ingress 进行的任何更改都将底层经典负载均衡器转换为 AWS 上的网络负载均衡器。如果集群已经在使用网络负载均衡器,则它不会改变。 - 自定义域将成为原生 OpenShift
IngressController
资源。这些资源的路由器 Pod将从红帽管理的 infra 节点重新安排到客户管理的 worker 节点。这些可以使用 OpenshiftIngressController
API 上提供的任何功能进行完全配置。- 客户将无法创建新的
CustomDomain
资源。对于同等功能,客户可以创建额外的IngressController
资源。
- 客户将无法创建新的
- 通过
rosa edit ingress
、ocm edit ingress
和混合云控制台创建由 Red Hat SRE 管理的其他 Ingress 将在 OSD/ROSA 的所有版本上被弃用。 - 从 OSD/ROSA 版本 4.13 升级到 4.14 的客户在开始升级之前必须通过混合云控制台确认这些更改。
什么没有改变?
- 默认 Ingress 仍由 Red Hat SRE 完全管理,并被调度到 Red Hat
infra
节点上。只有客户创建的IngressController
对象才会被调度到 worker 节点上。所有其他 IngressController 对象将继续被红帽支持团队支持。 - 使用
rosa edit ingress
、ocm edit ingress
编辑默认的Ingress ,混合云控制台仍然被 Red Hat SRE 完全管理。 - 通过
rosa edit ingress
、ocm edit ingress
编辑现有的其他 ingresse ,并且混合云控制台仍然支持这些对象的生命周期。 - 在 OSD/ROSA 版本 4.14 之前,客户可以照常创建、编辑和删除自定义域。
客户需要做什么才能从这些功能受益?
对于 4.14 及更高版本上新配置的集群:
- 客户可以通过 OCM/ROSA CLI 1使用上述所有功能,而无需任何其他操作。
- 客户无法安排
CustomDomain
资源来创建第二个 Ingress,而是可以使用oc create ingresscontroller
创建它们,如here 中所述。
对于升级到 4.14 且没有现有的 CustomDomain 资源或由 OSD/ROSA CLI 管理的第二个 Ingress 的客户:
- 可以使用上面提到的新的
rosa edit ingress
功能,而无需任何其他操作。 - 使用新的 CLI 1功能时,OSD/ROSA 会将现有 AWS 经典负载均衡器转换为 AWS 网络负载均衡器(如果尚未使用该负载均衡器类型)。
对于使用现有 CustomDomain 安装或 OCM/ROSA CLI 管理的第二个 Ingress 升级到 4.14 的客户:
- 红帽会将
CustomDomain
资源转换为原生IngressController
,以便能够从oc
CLI 进行管理。这些入口 Pod 将从红帽管理的 infra 节点重新安排到客户管理的 worker 节点,这可能会导致一些网络中断。
早期访问/选择退出
- 可以启用这些功能,因为 OpenShift 的 4.13 版本完全支持。如果需要在 4.14 版本之前开始使用这些功能,请联系红帽支持并开一个问题单,以请求启用此功能。
- 要明确选择退出此功能,并继续对版本 4.14 使用自定义域,请在升级之前联系红帽支持。
- 要对版本 4.14 继续使用 OSD/ROSA 第二个 Ingress,请在升级之前联系红帽支持。
已知的问题
使用现有经典负载均衡器 (CLB) 对 4.13 编辑默认Ingress
时,它将自动升级到等效的网络负载均衡器。
当从 AWS 上的经典负载均衡器切换到版本 4.13 及更高版本上的网络负载均衡器时,存在一个已知问题(在私有 bug 中跟踪:OCPBUGS-16728)。当从 CLB 切换到 NLB 或相反(ROSA 中不允许)时,被切换的底层 AWS LoadBalancer
需要手动从 AWS 中删除。此资源会在集群删除时被清理,但当从 CLB 升级到 NLB 时必须被手动删除,以避免额外的费用。
Comments