kubernetes 为什么Ingress需要NodePort服务?

xj3cbfub  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(2)|浏览(176)

我在阅读《kubernetes in action》一书,其中提到“云提供商(例如GKE中)上的Ingress控制器要求Ingress指向NodePort服务”。
由于Ingress控制器从服务本身获取Pod IP并将请求直接路由到IP和端口,为什么它需要NodePort服务?Node的IP和端口(由NodePort服务提供)用于什么?

ltqd579y

ltqd579y1#

入口控制器通常用于将流量从群集外部路由到群集内部的服务。NodePort是群集中每个节点上的开放端口。Kubernetes透明地将NodePort上的传入流量路由到您的服务,即使您的应用程序运行在不同的节点上。
NodePort通过ingress将应用暴露在您的每个节点上的端口上。ingress中的NodePort Service是为了让外部用户可以在不进入集群的情况下访问内部Pod。
请按此doc了解更多信息。

zaqlnxep

zaqlnxep2#

具有NodePort的入口控制器将以与通过NodePort服务公开的POD/部署相同的方式工作。入口控制器通常处理来自用户的所有请求,并根据规则将这些请求路由到集群内的不同Pod服务。如果没有入口控制器,您必须通过多个NodePort将所有POD服务直接公开给用户。
关于您的问题“节点的IP和端口(由NodePort服务提供)用于什么?”“

  • 本站不负责对产品描述的准确性或内容负责。每个节点都已经有了自己的IP。NodePort只会将您的POD/控制器IP从本地端口暴露给群集端口,用户可以从外部访问该端口。

希望这能回答你的问题,或者你可以再问一遍你不明白的部分。

相关问题