Kubernetes Deployment提供了官方的用于更新Pod和Replica Set(下一代的Replication Controller)的方法,您可以在Deployment对象中只描述您所期望的理想状态(预期的运行状态),Deployment控制器为您将现在的实际状态转换成您期望的状态;
Deployment集成了上线部署、滚动升级、创建副本、暂停上线任务,恢复上线任务,回滚到以前某一版本(成功/稳定)的Deployment等功能,在某种程度上,Deployment可以帮我们实现无人值守的上线,大大降低我们的上线过程的复杂沟通、操作风险。
Deployment的典型用例:
使用Deployment来启动(上线/部署)一个Pod或者ReplicaSet;
检查一个Deployment是否成功执行;
更新Deployment来重新创建相应的Pods(例如,需要使用一个新的Image);
如果现有的Deployment不稳定,那么回滚到一个早期的稳定的Deployment版本。