5.3 Deployment 控制器

Deployment(简写为 deploy)是 Kubernetes 控制器的又一种实现,它构建于 ReplicaSet 控制器之上,可为 Pod 和 ReplicaSet 资源提供声明式更新。相比较而言,Pod 和 ReplicaSet 是较低级别的资源,它们很少被直接使用。Deployment、ReplicaSet 和 Pod 的关系如图 5-7 所示:

Deployment、ReplicaSets 和 Pods
图 1.7.3 - Deployment、ReplicaSets 和 Pods

Deployment 控制器资源的主要职责同样是为了保证 Pod 资源的健康运行,其大部分功能均可通过调用 ReplicaSet 控制器来实现,同时还增添了部分特性。

  • 事件和状态查看:必要时可以查看 Deployment 对象升级的详细进度和状态。
  • 回滚:升级操作完成后发现问题时,支持使用回滚机制将应用返回到前一个或由用户指定的历史记录中的版本上。
  • 版本记录:对 Deployment 对象的每一次操作都予以保存,以供后续可能执行的回滚操作使用。
  • 暂停和启动:对于每一次升级,都能随时暂停和启动。
  • 多种自动更新方案:一是 Recreate,及重建更新机制,全面停止、删除旧有的 Pod 后用新版本替代;另一个是 RollingUpdate,即滚动升级机制,逐步替换旧有的 Pod 至新的版本。

results matching ""

    No results matching ""