Service介绍
Last updated
Was this helpful?
Last updated
Was this helpful?
Service资源对象可以为一组具有相同功能的Pod提供一个单一不变的接入点。
引入Service的原因:
Pod的IP地址是随机变化的,并且无法直接由外部访问或访问外部;
Service的IP地址和端口是固定的;
下图是典型的前后端之间互相访问的架构图,前端Pod不会与后端Pod直接通信,而是通过Service访问后端Pod,前端暴露给外部客户端的同样也是一个Service:
Service对象是通过标签选择器来匹配Pods,在匹配到一个Pod后,会创建一个Endpoint资源,并将该Pod的IP地址和端口记录下来,因此Service与Pod之间其实还有一层Endpoint。
Service同样是使用标签选择器spec.selector
来匹配Pod作为其转发流量的后端Pod。
创建Service同样有两种方法:
使用配置文件创建Service,如下:
使用kubectl expose
命令来创建Service,详情可见;