Deployment是k8s中用来管理发布的控制器,在开发的过程中使用非常频繁,本篇文章主要介绍deployment相关的使用和原理。
- 声明式API
- 最终一致性
- 水平触发
- 资源对象
- 。。。
一,Deployment的作用
- 定义一组pod的期望数量,controller会维持Pod的数量和期望的一致(其实deployment是通过管理rs的状态来间接管理pod)
- 配置Pod的发布方式,controller会按照给定的策略去更新pod资源,以此来保证更新过程中可用的pod数量和不可用的pod数量都在限定范围内。(MaxUnavailable以及MaxSurge字段)
- 支持回滚操作,可记录多个前置版本(数量可通过配置设置revisionHistoryLimit)