Kubernetes 系列 Deployment

  Deployment内部使用了replica set来实现的,是 k8s v1.2引入的新概念。本次安装k8s是v1.17,完全支持。无论Deployment的作用与目的,它的yaml定义,还是从它具体命令行操作来看,我们都可以把它看作rc的一次升级,两者的相似度超过90%

  Deployment的典型使用场景有以下几个:

  1.创建一个Deployment对象来生成对应的replica set并完成pod副本的创建过程。

  2.检查Deployment的状态来看部署动作是否完成(pod副本的数量是否达到预期的值)

  3.更新Deployment以创建新的pod(比如镜像升级)

  4.如果当前Deployment不稳定,则回滚到一个早先的Deployment版本

  5.暂停Deployment以便于一次性修改多个podTemplateSpec的配置项,之后再恢复Deployment,进行新的发布.

  6.扩展Deployment 以应对高负载。

  7.查看Deployment 的状态,经此作为发布是否成功的指标

  8. 清理不再需要的旧版本repliasets。

  deployment定义与replia set的定义很类似,除了api声明与kind类型等有所区别:

   下面是replia set

apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: nginx

  下面是deployment

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: nginx

   

  

posted on 2022-12-27 10:36  花阴偷移  阅读(13)  评论(0)    收藏  举报

导航