谈谈Ingress

先上图

谈谈Ingress

上图是一个客户端访问k8s集群服务的示意图,本文只讲解ingress控制器、NodePort类型的Service对外暴露端口两部分。

Ingress和Ingress控制器的官方定义如下:

Ingress 是对集群中服务的外部访问进行管理的 API 对象,典型的访问方式是 HTTP,Ingress 可以提供负载均衡、SSL 终结和基于名称的虚拟托管。Ingress通常负责通过负载均衡器来实现 Ingress。

官方定义看得人云里雾里。我用大白话解释,打个比方Ingress控制器类似于与nginx,Ingress类似于nginx的配置文件。如果我们只安装nginx,不写nginx的配置文件,例如不写转发规则,则此nginx将毫无意义;反过来,若只有nginx的配置文件,但没装nginx,则配置文件无运行载体。所以Ingress和Ingress控制器是配合着使用的。

从上图可以看出Ingress和Ingress控制器是负责对外部请求的管理、转发,并没有对外暴露端口,需要在Ingress前面加一个NodePort类型的Service,通过这个Service对外暴露端口。

 

附录

Kubernetes - 使用Ingress、Ingress控制器(Ingress Controller)转发请求

 

上一篇:k8s入坑之路(12)ingress-nginx安装配置四层代理


下一篇:k8s学习记录,Ingress及其安装(十四)