GKE On-Prem 集群可以通过两种负载平衡模式之一运行:集成模式或手动模式。在集成模式下,GKE On-Prem 集群将使用 F5 BIG-IP 负载平衡器。在手动模式下,GKE On-Prem 将使用您选择的其他负载平衡器。手动负载平衡模式要求您进行比集成模式更多的配置。
如果您选择使用 F5 BIG-IP 负载平衡器,则需要拥有有充分权限设置和管理负载平衡器的用户角色。Administrator 角色或 Resource Administrator 角色足够。如需了解详情,请参阅 F5 BIG-IP 帐号权限。
本主题介绍如何预留 IP 地址和 nodePort
值供以后使用。您可以选择要用于负载平衡和集群节点的 IP 地址和 nodePort
值。但是,此时您不会对地址和 nodePort
值执行任何操作。稍后,当您准备好安装 GKE On-Prem 时,需要使用地址和 nodePort
值来填充集群配置文件。
预留虚拟 IP 地址
无论您使用集成模式还是手动模式,都必须预留一些虚拟 IP 地址(VIP 地址)以用于负载平衡。在集成模式下,您可以在集群配置文件中指定这些 VIP 地址,GKE On-Prem 会自动将 F5 BIG-IP 负载平衡器配置为使用 VIP 地址。在手动模式下,您必须手动将负载平衡器配置为使用 VIP 地址。
对于管理员集群,您必须预留以下 VIP 地址:
- Kubernetes API 服务器的 VIP 地址
- Ingress 服务的 VIP 地址
对于要创建的每个用户集群,您必须预留以下 VIP 地址:
- Kubernetes API 服务器的 VIP 地址
- Ingress 服务的 VIP 地址
如果您打算在管理员集群中使用插件,则必须为管理员集群中的插件服务预留一个 VIP 地址。
对于要使用插件的每个用户集群,您必须为该用户集群中的插件服务预留一个 VIP 地址。
例如,假设您打算使用两个用户集群,并且打算在所有集群中使用插件。那么,您的管理员集群需要三个 VIP 地址,每个用户集群需要三个 VIP 地址。因此,您需要预留九个 VIP 地址。
预留节点 IP 地址
在集成模式下,您可以使用现有的动态主机配置协议 (DHCP) 服务器为您的集群节点提供 IP 地址,也可以为节点指定静态 IP 地址。在手动模式下,您无法使用 DHCP。您必须为节点指定静态 IP 地址。
如果您选择使用静态 IP 地址,则必须为管理员集群中的节点和要创建的所有用户集群中的节点预留足够的地址。如需详细了解要预留的节点 IP 地址数量,请参阅配置静态 IP 地址。
预留 nodePort
值
在 GKE On-Prem 集群中,Kubernetes API 服务器、Ingress 服务和插件服务是作为 NodePort
类型的 Kubernetes Service 实现的。在集成负载平衡模式下,GKE On-Prem 会自动为这些 Service 选择 nodePort
值。在手动负载平衡模式下,您必须指定要用于这些 Service 的 nodePort
值。如需了解详情,请参阅预留 nodePort
值。
配置负载平衡器
在集成负载平衡模式下,GKE On-Prem 会自动使用您在集群配置文件中指定的 VIP 地址配置 F5 BIG-IP 负载平衡器。在手动模式下,您必须使用自己选择的 VIP 地址配置负载平衡器。负载平衡器的配置方式取决于您使用的负载平衡器。如需了解详情,请参阅启用手动负载平衡。
负载平衡准备摘要
下表总结了在集成模式和手动模式下准备负载平衡时必须执行的操作:
集成模式 | 手动模式 | |
---|---|---|
在创建集群之前选择 VIP 地址。 | 必须执行 | 必须执行 |
在创建集群之前选择节点 IP 地址。 | 无需执行(如果使用 DHCP)。 必须执行(如果使用静态 IP 地址)。 | 必须执行 |
在创建集群之前选择 nodePort 值。 | 无需执行 | 必须执行 |
手动配置负载平衡器 | 无需执行 | 必须执行 |
在集群中创建服务
在您的用户集群运行之后,您可能希望创建 Kubernetes Service 并将其公开给外部客户端。
无论您使用的是集成负载平衡模式还是手动负载平衡模式,都可以使用 Ingress 对象将 Service 公开给外部客户端。
在集成负载平衡模式下,您可以创建类型为 LoadBalancer
的 Service,并为其指定 VIP 地址。GKE On-Prem 会自动在 F5 BIG-IP 负载平衡器上配置 VIP 地址。
在手动负载平衡模式下,您无法将 LoadBalancer
类型的 Service 公开给外部客户端。相反,您可以按照以下步骤将 Service 公开给外部客户端:
创建类型为 NodePort 的 Service。
为您的 Service 选择 VIP 地址。
手动配置负载平衡器,以便将发送到 VIP 地址的流量转发到您的 Service。
下表总结了您可以在集成模式和手动模式下公开的 Service 种类:
集成模式 | 手动模式 | |
---|---|---|
使用 Ingress 对象将 Service 公开给外部客户端。 | 是 | 是 |
将类型为 ClusterIP 的 Service 公开给内部客户端。 | 是 | 是 |
将类型为 NodePort 的 Service 公开给外部客户端。 | 是 | 是 |
将类型为 LoadBalancer 的 Service 公开给外部客户端。 | 是 | 否 |