1 Service存在意义

1.1 防止pod失联(服务发现)

在这里插入图片描述
pod每次启动后ip是不固定的,这样就会造成访问pod的ip频繁发生变化。引入Service后,Pod会先把ip地址注册到Service上。不再直接访问pod,而是访问Service的vip(虚拟ip),然后找到具体功能对应的ip,再用最新的ip进行访问。

1.2 定义一组pod的访问策略(负载均衡)

在这里插入图片描述

2 Pod和Service关系

同Controller一样,也是通过label标签和selector选择器关联
在这里插入图片描述

3 Service类型

  • ClusterIP(默认):集群内部使用
  • NodePort:对外访问应用使用
  • LoadBalancer:对外访问应用使用,可以通过公有云访问

一般来讲node只能通过内网访问,外网不能直接访问。如果想要通过外网访问可以通过如下方式:

  • 找到一台可以外网访问的机器,安装nginx做反向代理,然后手动把可以访问的节点添加到里面
  • LoadBalancer是通过公有云,公有云中开发一个负载均衡控制器,连接公有云控制器即可

1 查看pod service类型

kubectl get svc
在这里插入图片描述

2 修改service类型
在这里插入图片描述
修改完后启动容器查看
在这里插入图片描述

Logo

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

更多推荐