ingress是一个api-resource,是一个api资源对象,是一个服务。

ingress服务通常由负载均衡器实现。

ingress服务由(控制器+规则)组成

规则负责指定策略,控制器负责执行(所以控制器经常选nginx,系统默认也是nginx)

所以ingress是一个服务,有点相当于后端服务器的代理服务器,负责反向代理,负载均衡,流量分发,而这个正是nginx的擅长点。用户来访问这个负载均衡服务器,然后负载均衡服务器把请求转发给后端。

ingress服务的规则部分,可以在命令行用--rule="/path=svc:port"来设定,意思是,在什么路径什么端口访问什么服务。这和nginx的基于url+端口的虚拟主机,设计思路基本一致。

ingressclass相当于ingress服务所要用的控制器的类

class是班级,在计算机领域,也是类的意思。

ingressclass一般包括nginx和haproxy,管理员用哪个就选哪个,然后进行相应的配置即可。

ingressclassname  相当于ingress控制器的类的名称,是叫nginx还是叫haproxy,也可以给这个控制器的名字起成nginxs,或者haproxys,实际上都是使用的负载均衡器的功能,这个ingressclassname一般可以在配置文件自定义。有点像给网卡起一个nmcli名称一样,不影响它本身作为网卡的功能实现。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐