k8s-service
四层网络负载均衡
Service 定义了一个服务访问的入口,客户端通过这个入口即可访问服务背后的应用集群实例,service是一组Pod的逻辑集合,这一组Pod能够被Service访问到,通常是通过Label Selector实现的。
k8s中的三类IP地址
Node IP:
Node节点的IP地址,即物理网卡的IP地址。址,此为虚拟IP地址。Node节点的IP地址,即物理网卡的IP地址。址,此为虚拟IP地址。
PodIP
Pod IP:Pod的IP地址,即docker容器的IP地 clasterIP
Cluster IP
Service的IP地址,此为虚拟IP地址。
service类型
ExternalName
将service的内部FQDN对外定义了一个友好的别名
ClusterIP :
通过k8s集群内部IP暴露服务,选择该值,服务只能够在集群内部访问,这也是默认的ServiceType。
NodePort
通过每个Node节点上的IP和静态端口暴露k8s集群内部的服务。通过请求<NodeIP>:<NodePort>可以把请求代理到内部的pod。Client----->NodeIP:NodePort----->Service Ip:ServicePort----->PodIP:ContainerPort。
LoadBalancer
使用云提供商的负载均衡器,可以向外部暴露服务。外部的负载均衡器可以路由到NodePort服务和ClusterIP服务。