Ingress Controller控制器是实现Ingress对象的定义的组件,也即网关,负责Kubernetes集群内流量的分发,Kubernetes可以运行多个Ingress Controller控制器实例,不同的Ingress定义可以使用不同的Ingress Controller控制器实现,Kubernetes官方负责支持与维护的Ingress Controller控制器包括AWS、GCE以及NGINX Ingress Controller控制器,本文主要描述一些常用Ingress Controller控制器的使用方式。

Kubernetes技术与架构-Ingress Controller-LMLPHP

如上所示,使用NGINX Ingress Controller定义两个Ingress,其对应的服务是ingress-myservicea以及ingress-myserviceb,其对应的IngressClassName是nginx

Kubernetes技术与架构-Ingress Controller-LMLPHP

如上所示,使用apisix Ingress Controller定义一个Ingress,其对应的服务是httpbin,其对应的IngressClassName是apisix

Kubernetes技术与架构-Ingress Controller-LMLPHP

如上所示,阿里云微服务应用MSE提供的Ingress Controller控制器Alibaba Cloud MSE Ingress的部署运行架构图

10-21 12:20