目录

​一、知识点​

​二、Deployment更新机制​


Deployments 可以实现副本集,进行水平收缩,挻不错的功能。但是只适用于无状态。

所谓遥无状态是对等关系,没有顺序要求,所有pod都一样

一、知识点

主要是

创建
更新
回滚
缩放
暂停、恢复
金丝雀发布(Canary Deployment)和蓝绿发布(Blue-Green Deployment)
A/B测试等

这些在k8s官方的Deployment中文文档 都做了很详细的介绍,我这里不不多说了

“水平扩展 / 收缩”非常容易实现,Deployment Controller 只需要修改它所控制的 ReplicaSet 的 Pod 副本个数就可以了。

二、Deployment更新机制

这里的更新机制,使用的是 滚动更新(rolling update)机制,如下图所示:

hualinux 进阶 1.13: Deployments水平收缩及更新机制_k8s水平收缩

Deployment的更新机制是基于滚动更新的,具体顺序如下:

1.首先,创建一 个新的RS控制器, 版本为v2 ;
2接着将旧控制器的pod陆续下线,同时新的RS控制器同步上线对应Pod ;
3.Pod更新完成后,弃用旧的RS控制器,滚动发布就此完成。

你可以另起一个终端,使用kubectl get pod -o wide -W 观察pod滚动更新情况

使用kubectl get rs -o wide 观察RS控制器的名字、状态等信息。

你也可以使用pause命令实现基于deployment的金丝雀发布策略。

例子不讲了,自己看。