You need to enable JavaScript to run this app.
导航

路由规则概述

最近更新时间2024.03.15 15:13:42

首次发布时间2022.03.04 23:10:38

Ingress 作为 Kubernetes 集群中一种独立的资源,系统通过它来制定外部访问流量的转发规则,并通过 Ingress Controller 将其分配到一个或多个 Service 中。本文为您介绍容器服务支持的 Ingress 种类和区别。

Nginx Ingress

Nginx Ingress 是使用 Nginx 作为反向代理和负载均衡器的 Kubernetes 的 Ingress 控制器。您可以在集群中部署容器服务提供的 Nginx Ingress 组件:ingress-nginx,实现七层负载均衡。

容器服务通过 Nginx Ingress 对接结合四层的网络负载均衡器 CLB ,在云端实现了完整的四、七层负载能力:

  1. 容器服务集群以组件化的方式提供 ingress-nginx 组件,有七层负载功能需求的用户需要安装组件。
  2. ingress-nginx 组件安装完成后,集群的中节点上会对应运行有 Nginx Ingress 实例。
  3. 通过在路由规则中配置负载均衡器的 ingress 类型ingress-nginx,实现 Nginx Ingress 的七层应用负载功能。

alt

CLB Ingress

说明

ALB Ingress 提供更加丰富的功能和可靠性,为保障您业务的安全和稳定,建议在集群中优先选择 ALB Ingress 实现业务发布。

CLB(Cloud Load Balancer)是一种将访问流量按策略分发给多台后端服务器的服务,可以扩展系统对外服务能力,消除单点故障,从而提高系统的整体可用性。

  1. 用户创建 Ingress 资源,在 Ingress 中配置流量访问转发规则,包括负载均衡器、URL、SSL 以及访问的后端(Backend)Service 端口等。
  2. Ingress Controller 实现 Ingress,当监听到 Ingress 资源发生变化时,就会根据其中定义的流量转发规则,在 CLB 侧重新配置监听器以及转发规则。
  3. 当用户进行访问时,CLB 根据配置的转发策略把流量转发到对应的后端服务器 Service 端口,最终访问到关联的各个工作负载。

alt

ALB Ingress

火山引擎应用型负载均衡(Application Load Balancer,ALB)专门面向七层设计,提供超强的业务处理性能。针对应用层网站、音视频应用等大流量分发场景,可以实现精细均衡的流量调度、消除单站点故障影响。火山引擎 ALB 支持 HTTP、HTTPS、HTTP/2、WebSocket、QUIC 等多种应用层协议接入,满足不同业务类型需求。

  1. 通过在路由规则中配置负载均衡器的 ingress 类型应用型负载均衡 ALB,配置流量访问转发规则,包括负载均衡器、URL、TLS 以及访问的后端(Backend)Service 端口等。
  2. ALB Ingress Controller 通过 API Server 获取 Ingress 资源的变化。
  3. 当监听到 Ingress 资源发生变化时,就会根据其中定义的流量转发规则,在 ALB 侧重新配置监听器以及转发规则。
  4. 当用户进行访问时,ALB 根据配置的转发策略把流量转发到对应的后端服务器 Service 端口,最终访问到关联的各个工作负载。

alt

APIG Ingress

火山引擎 API 网关(API Gateway,APIG)是基于云原生的、高扩展、高可用的云上网关托管服务。在传统流量网关的基础上,集成丰富的服务发现和服务治理能力,打通微服务架构的内外部网络,快速实现各服务之间、服务与客户端之间的安全通信。火山引擎 API 网关支持 HTTP、HTTPS 等应用层协议接入,满足不同业务类型需求。

  1. 通过在路由规则中配置负载均衡器的 ingress 类型API 网关 APIG,配置流量访问转发规则,包括 URL、TLS 以及访问的后端(Backend)Service 端口等。
  2. APIG Ingress Controller 通过 API Server 获取 Ingress 资源的变化。
  3. 当监听到 Ingress 资源发生变化时,就会根据其中定义的流量转发规则,在 APIG 侧配置转发规则。
  4. 当用户进行访问时,APIG 根据配置的转发策略,直接把流量转发到对应的后端 Pod。

alt