Ingress 规则(Kubernetes Ingress)将集群外部的 HTTP/HTTPS 路由暴露到内部路由(Kubernetes Service),从而实现对计算组件的外部访问控制。
创建一个 Ingress 来管理对 Service 的外部 HTTP/HTTPS 访问。
在同一命名空间内创建多个 ingress 时,不同的 ingress 不得 具有相同的 域名、协议 和 路径(即不允许重复的访问入口)。
Ingress 规则依赖于 Ingress Controller 的实现,Ingress Controller 负责监听 Ingress 和 Service 的变化。当创建新的 Ingress 后,Ingress Controller 收到请求时,会根据 Ingress 中的转发规则匹配,并将流量分发到指定的内部路由,如下图所示。
对于 HTTP 协议,Ingress 仅支持 80 端口作为外部端口。对于 HTTPS 协议,Ingress 仅支持 443 端口作为外部端口。平台的负载均衡器会自动添加 80 和 443 监听端口。
nginx
表示使用 ingress-nginx
controller,$alb_name
表示使用 alb 作为 ingress controller。hosts
。访问 Container Platform。
在左侧导航栏点击 Network > Ingress。
点击 Create Ingress。
参考以下说明配置相关参数。
参数 | 说明 |
---|---|
Ingress Class | Ingress 可以由不同的 controller 实现,具有不同的 IngressClass 名称。如果平台上存在多个 ingress controller,用户可以通过此选项选择使用哪一个。 |
域名 | Host 可以是精确匹配(例如 foo.bar.com )或通配符(例如 *.foo.com )。可用的域名由平台管理员分配。 |
证书 | TLS secret 或由平台管理员分配的证书。 |
匹配类型 和 路径 |
|
Service | 外部流量将转发到该 Service。 |
Service 端口 | 指定流量将转发到 Service 的哪个端口。 |
点击 Create。