如果我们在 Kubernetes 中有自己的 api 网关,我们还需要 Ingress 控制器吗

问题描述 投票:0回答:1

和标题差不多。

API-Gateway 可以进行路由以及额外的好处(身份验证、日志记录、SSL 终止等)。

现在,Ingress主要用于路由 - 但是,如果我们将API-Gateway部署为kubernetes集群本身中的服务,那么API网关可以通过ClusterIP访问/路由到其他服务到其他组件。

当然,会有一个面向外部的负载均衡器将外部世界连接到我们的 API 网关

  • 那我们还需要单独Ingress吗?
kubernetes kubernetes-ingress api-gateway
1个回答
0
投票

正如 Jenn Gile 在 Thenewstack post 中提到的;

如果您需要 Kubernetes 内部的 API 网关功能,通常最好选择可以使用本机 Kubernetes 配置工具(例如 YAML)进行配置的工具。通常,这是一个入口控制器或服务网格。但我们听到您说,“我的 API 网关工具比我的入口控制器(或服务网格)拥有更多的功能。我这不是错过了吗?”不!更多的功能并不等于更好的工具,特别是在 Kubernetes 中,工具的复杂性可能是一个杀手。

入口控制器创建一个作为 LoadBalancer 公开的 Kubernetes 服务。为了简单理解,你可以将ingress视为一个Nginx服务器,它只是完成根据规则集将流量转发到服务的工作。然而,入口并没有像 API 网关那样的太多功能。某些入口不支持身份验证、速率限制、应用程序路由、安全性、合并响应和请求以及其他附加组件/插件选项等功能。虽然 API 网关也可以完成简单路由的工作,但它主要在您需要更高的灵活性、安全性和配置选项时使用。

API网关用于应用程序路由、速率限制、安全、请求和响应、处理和其他应用程序相关任务。假设您有一个基于微服务的应用程序,其中请求需要从多个微服务收集信息。您需要一种方法将用户请求分发到不同的服务并收集所有微服务的响应并准备发送给用户的最终响应。 API 网关就是为您完成此类工作的网关。

在 Kubernetes 中同时使用 Ingress 控制器和 API 网关可以为组织实现业务提供灵活性。

您也可以参考本文档如何选择? Api 网关与 Ingress 控制器 了解更多详细信息。

© www.soinside.com 2019 - 2024. All rights reserved.