入口控制器与API网关

时间:2019-11-27 13:57:36

标签: kubernetes api-gateway

我想知道 api网关入口控制器之间的区别是什么。由于人们提供的相似功能,人们倾向于互换使用这些术语。当我说“ 入口控制器”时;不要将其与kubernetes提供的 Ingress 对象混淆。另外,如果您能解释一个方案比另一个方案更有用的场景,那将是很好的。

api网关是云原生世界中流量路由器的通用术语,而“入口控制器”是kubernetes世界中api-gateway的实现吗?

2 个答案:

答案 0 :(得分:4)

入口控制器允许单个ip端口通过入口规则访问在k8s中运行的所有服务。入口控制器服务已设置为负载均衡器,因此可以从公共Internet进行访问。

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

答案 1 :(得分:0)

事实上,两者都有一系列相交的功能,路径映射,路径转换,负载平衡等。

但是,它们确实有所不同。我可能是错的,但是您创建了一个Ingress 1)以在Kubernetes中运行它2)更像是反向代理“ kubernetes本机”。

API网关可以安装在任何地方(尽管现在有许多在Kubernetes中运行,例如Ambassador,Glo,Kong),并且它们确实具有更多功能,如开发人员门户,速率限制等。

我个人使用入口作为网站的反向代理。和API网关的API。这并不意味着您不能对API使用Ingress。但是,您没有充分利用它们。