Ingress和Ingress控制器有什么区别?

23

我正在使用GCP上的k8s。为了建立TLS连接,需要设置ingress,因此我为我的应用程序设置了ingress,并且它运行良好!


顺便问一下,像Nginx Ingress控制器之类的Ingress控制器是什么?

我确定ingress会创建新的负载均衡器,并通过http请求提供应用程序服务。但是,设置nginx控制器的重点是什么?您可以使用注释为nginx设置小型配置。

3个回答

34

你可能对Ingress有一些误解。 Ingress应该是流量规则,指示请求的目的地将通过集群中的哪个路径进行传递。 Ingress Controller是Ingress的实现。 GCE和Nginx都受到k8s的支持。它们将负责L4或L7代理。


谢谢您的回复。那就是我后来发现的。简单来说,Ingress 是一个配方,而 Ingress Controller 则是基于 Ingress 的系统,对吗? - Yoshihito Takashiba
请参阅Ingress = https://kubernetes.io/docs/concepts/services-networking/ingress/#what-is-ingress,以及 Ingress控制器https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/ - PatS

31

Ingress资源:一组路由规则的对象。
Ingress控制器:运行在k8中的另一个pod(通常与Deployment一起运行)。

Ingress控制器负责读取Ingress资源信息并相应地处理数据。

隐喻解释:

Ingress(一把枪),
Ingress控制器(持枪士兵)和
Ingress规则(命令士兵开火的人)。


7

就像K8s中的其他对象一样,ingress也是K8s的一种对象类型,主要用作一组重定向规则。

而ingress控制器则像其他部署对象(也可以是守护进程集)一样,监听和配置这些ingress规则。

以Nginx为例,ingress控制器就像是Nginx软件本身,而ingress(ingress规则)则是Nginx配置。


Ingress控制器并不是Nginx,它是k8s和Nginx之间的一个控制器。参考:https://www.nginx.com/resources/glossary/kubernetes-ingress-controller/ - srth12

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接