k8s入门-4 服务与pod的关系

 

1、两者关系

Service定义了pods的逻辑集合和访问这个集合的策略。 Pods集合是通过定义Service时提供的Label选择器完成的

Service的引入旨在保证pod的动态变化对访问端透明,访问端只需要知道service的地址,由service来提供代理
Service的抽象使得前端客户和后端Pods进行了解耦
支持ClusterIP, NodePort以及LoadBalancer三种类型
Service的底层实现有userspace、 iptables和ipvs三种模式

 

 

 

 2、进入pod测试通过服务访问Ngnix,docker与kubectl对比关系
转自:https://www.bbsmax.com/A/x9J2DXnnd6/

# docker run 
$ docker run -d -e DOMAIN=cluster --name my-nginx -p 80:80 nginx 
$ kubectl run my-nginx --image=nginx --port=80 --env="DOMAIN=cluster" 
 
# docker ps  
$ docker ps  
$ kubectl get pods 
 
# docker exec 
$ docker exec [容器id] ls 
$ kubectl exec [pod_id] ls 
 
# docker exec 交互式 
$ docker exec -it [容器id] /bin/sh 
$ kubectl exec -it [pod_id] -- /bin/sh 
 
# docker info 
$ docker info  
$ kubectl cluster-info 

3、进入Pod,上面示例中pod_id实际上对应pod_name

 

 4、测试cluster ip访问

 

 5、查看service

 

 6、通过serviceip访问,也就是说在内部只要通过serviceip即可以访问所有的服务

 

 

  

 

 

posted @ 2021-08-15 12:56  zhaogaojian  阅读(544)  评论(0编辑  收藏  举报