本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。

SUSE Rancher Prime中的负载均衡器和Ingress控制器设置

在Rancher中,您可以设置负载均衡器和Ingress控制器以重定向服务请求。

负载均衡器

启动应用程序后,应用程序仅在集群内可用。无法从集群外部访问。

如果您希望您的应用程序可以外部访问,必须向集群添加负载均衡器或Ingress。负载均衡器为外部连接访问您的集群创建了一个网关,前提是用户知道负载均衡器的IP地址和应用程序的端口号。

Rancher支持两种类型的负载均衡器:

有关更多信息,请参见负载均衡器

负载均衡器的限制

负载均衡器有几个您应该注意的限制:

  • 负载均衡器每个服务只能处理一个IP地址,这意味着如果您在集群中运行多个服务,必须为每个服务配置一个负载均衡器。运行多个负载均衡器可能会很昂贵。

  • 如果您想在托管的 Kubernetes 集群(即在 GKE、EKS 或 AKS 中托管的集群)中使用负载均衡器,则负载均衡器必须在该云提供商的基础设施中运行。请查看有关根据您如何配置集群而支持负载均衡器的兼容性表:

  • 对 Layer-4 负载平衡的支持

  • 对 Layer-7 负载平衡的支持

入口

如上所述的限制所提到的,使用负载均衡器的缺点包括:

  • 负载均衡器每个服务只能处理一个 IP 地址。

  • 如果您在集群中运行多个服务,则必须为每个服务配置一个负载均衡器。

  • 为每个服务配置负载均衡器可能会很昂贵。

相比之下,当使用 Ingress 作为集群的入口时,Ingress 可以更灵活地将流量路由到多个服务。它可以将多个 HTTP 请求映射到服务,而无需为每个服务分配单独的 IP 地址。

因此,如果您希望多个服务使用相同的 IP 地址、相同的第 7 层协议或相同的特权节点端口进行暴露,使用 Ingress 是非常有用的:80 和 443。

Ingress 与一个或多个 Ingress 控制器协同工作,以动态地路由服务请求。当 Ingress 接收到请求时,您集群中的 Ingress 控制器会根据您配置的服务子域或路径规则将请求定向到正确的服务。

您的 Ingress 类似于负载均衡器,为您的集群创建入口,可以位于集群内部或外部。

Ingress 还可以提供其他功能,例如 SSL 终止、基于名称的虚拟主机等。

  • 有关如何在 Rancher 中设置 Ingress 的更多信息,请参见 Ingress

  • 有关 Ingress 和 Ingress 控制器的完整信息,请参见 Kubernetes Ingress 文档

  • 在项目中使用 Ingress 时,您可以通过设置全局 DNS 条目将 Ingress 主机名映射到外部 DNS。