ingress 工作原理
在 Kubernetes 中,Ingress 是一种基于 HTTP 和 HTTPS 的通用网络入口,它可以将外部请求路由到 Kubernetes 集群内部的服务和 Pod 中,从而实现负载均衡、SSL/TLS 终止和路径基础路由。下面是 Ingress 工作原理的概述:
- 定义 Ingress
在 Kubernetes 中,首先需要定义一个 Ingress 对象,它定义了如何将外部流量路由到集群内部的服务和 Pod 中。Ingress 规则由 Host、Path、Service 和 TLS 选项组成。
- Host:用来指定 Ingress 的访问域名。
- Path:用来指定访问路径。
- Service:用来指定后端服务的名称和端口。
- TLS:用来启用 SSL/TLS 加密传输并指定相关证书信息。
在定义 Ingress 对象时,我们需要在集群中创建一个 Ingress 控制器,以便 Ingress 规则能够被转化为 Kubernetes 中的其他对象。
- 转发流量
一旦定义了 Ingress 规则,Ingress 控制器就会将外部流量转发到相应的后端服务和 Pod 中。它通过检查流量的 Host 和 Path 字段来确定路由规则,然后将流量转发到正确的后端服务和 Pod。
- 处理 SSL/TLS 终止
如果 Ingress 规则指定了 TLS 选项,并在 Ingress 控制器中配置了 SSL/TLS 终止设置,则 Ingress 规则会在流量到达后立即解密该流量,并将其转发到相应的后端服务和 Pod。这样可以保证在流量从外部发送到集群时,能够使用 SSL/TLS 对流量进行安全加密。
Ingress 可以让我们在 Kubernetes 中轻松配置路由规则,从而将外部流量路由到集群内的多个服务和 Pod 中。它还提供了 SSL/TLS 终止和负载均衡等功能,让我们能够更方便地部署和管理应用程序。

浙公网安备 33010602011771号