kubernetes学习笔记13:deployment
deployment中第一个replicas就是deployment期望的或最终数量,第二个template就是pod的模板
查看pod:nginx-deployment-hhhhhh-uwh3e最前面一段是pod所属的deployment.name,中间一段template-hash,这里三个pod是一样的,因为都是同一个template中创建出来的。最后一段是random字符串,通过get.pod看到,pod的ownerreference即pod所属controller资源不是deployment,是replicaset,这个replicaset的name其实是nginx-deployment加上pod.template-hash。所有的pod都是replicaset创建出来的,而replicaset对应某一个具体的deployment.template
deployment管理模式,它只负责管理不同版本的replicaset,由replicaset管理pod副本数量。没过replicaset对应deployment template的一个版本,一个replicaset下的pod都是相同的版本。
deployment管理多版本的方式是针对每个版本的template创建一个replicaset,由replicaset维护一定数量的pod,而deployment只关心不同版本的replicaset里面指定多少个数量的pod。
deployment发布和部署的根本原理就是deployment调整不同版本的replicaset里的最终副本数量,以此达到多版本pod的升级和回滚。