kubernetes中提供同一个服务的pod一般是多副本,而且pod的ip不固定,所以kubernetes提供了service这种资源对象来为一组具有相同功能的容器提供统一的入口,完成pod的服务发现和负载均衡的功能。
Service 简介
service常用的有三种类型,clusterIP、NodePort、LoadBalancer。
clusterIP是一个集群内部的ip,service可以通过selector和带有该label的pod进行关联,endpoint controller将关联到这个service上的pod IP信息保存到同名的endpoint资源对象中,在集群内部访问这个clusterIP,就可以负载均衡到各pod服务中了。
例如查看service和endpoint,每一个关联后端pod的svc都有一个同名的endpoint与之对应。
访问cluster ip,请求会负载均衡地转发到相应的endpoints之一。