Kubernetes-Pod/ReplicaSet/Deployment/Service关系

本文主要记录解决自己学习和工作中的一个疑惑:k8s中的Pod/ReplicaSet/Deployment/Service这几个资源究竟是什么关系?

资源之间的关系

1)Pod是最小的调度单元,Pod启停容器镜像等;
2)Pod由ReplicaSet控制,ReplicaSet由Deployment控制,然后外部提供服务的是Service。

RS—>Pod

查看Pod:

$ kubectl get pods
pod

查看RS:

$ kubectl get rs
![RS]( https://img-blog.csdnimg.cn/20200306114951933.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0FuZHlhX25ldA==,size_16,color_FFFFFF,t_70)

查看Pod详情:

$ kubectl describe pods pod_name
![Pod详情]( https://img-blog.csdnimg.cn/20200306115116246.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0FuZHlhX25ldA==,size_16,color_FFFFFF,t_70)
我们可以通过kubectl describe pods pod_name看到Controlled By字段的值是ReplicaSet/rs_name,即Pod由RS控制

Deployment—>RS

查看RS:

$ kubectl get rs
![RS]( https://img-blog.csdnimg.cn/20200306114951933.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0FuZHlhX25ldA==,size_16,color_FFFFFF,t_70)

查看Deployment:

$ kubectl get deploy
![Deployment]( https://img-blog.csdnimg.cn/20200306115244563.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0FuZHlhX25ldA==,size_16,color_FFFFFF,t_70)

查看RS详情:

$ kubectl describe rs rs_name
![RS详情]( https://img-blog.csdnimg.cn/20200306115040687.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0FuZHlhX25ldA==,size_16,color_FFFFFF,t_70)
我们可以通过kubectl describe rs rs_name看到Controlled By字段的值是Deployment/deploy_name,即RS由Deployment控制
  我们也可以通过kubectl describe deploy deploy_name查看某个deployment的详情,发现没没有Controlled By字段,deployment不受其他组件控制,需要用户去创建该资源,service则在deployment——>rs——>pod这一套流程的基础上对外提供服务。

posted @ 2020-03-06 12:06  Andya_net  阅读(870)  评论(0)    收藏  举报