k8s管理部署发布的控制器Deployment

前言

作用
  • 定义一组Pod的期望数量,controller会维持Pod数量与期望数量一致
  • 配置Pod发布方式,controller会按照给定策略更新Pod,保证更新过程中不可用额pod数量在限定范围内
  • 如果发布有问题,支持"一键"回滚
语法
apiVersion: apps/v1
kind: Deployment
#--------Deployment元信息--------
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  #--------期望Pod数量--------
  replicas: 3
  #--------Pod的选择器--------
  selector:
    matchLabels:
      app: nginx    
  #--------Pod模板-------
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - name: nginx
          image: nginx:1.7.9
          ports:
          - containerPort: 80        
  • 更新镜像方法
    kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.9.1

set image: 设置镜像
deployment.v1.apps: 资源类型
nginx-deployment: 要更新的Deployment名字
nginx: 要更新的容器名字
nginx:1.9.1: 新的镜像

  • 快速回滚方法
    kubectl rollout undo deployment/nginx-deployment

  • 回滚到Deployment某一个版本,需要先查询版本列表
    kubectl rollout history deployment.v1.apps/nginx-deployment
    kubectl rollout undo deployment.v1.apps/nginx-deployment --to-revision=2

状态机制

在这里插入图片描述

管理模式

Deployment只负责管理不同版本的ReplicaSet,由ReplicaSet管理Pod副本数
每个Replicaset对应了Deployment template的一个版本
一个ReplicaSet下的Pod都是相同的版本

Deployment控制器

在这里插入图片描述

replicaset控制器

在这里插入图片描述

发布模拟在这里插入图片描述
扩容模拟

在这里插入图片描述

回滚模拟

在这里插入图片描述

结语

… …

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值