Pod控制器

目录

pod的创建方式:

什么是pod控制器:

pod控制器的分类:

分类详解:

ReplicaSet:

 Deployment:

扩缩容指令:

版本更新:

版本回退:

 金丝雀发布:


pod的创建方式:

  1. 自主式pod:kubernetes直接创建出来的Pod,这种pod删除后就没有了,也不会重建
  2. 控制器创建的pod:kubernetes通过控制器创建的pod,这种pod删除了之后还会自动重建

什么是pod控制器:

         Pod控制器是管理pod的中间层,使用Pod控制器之后,只需要告诉Pod控制器,想要多少个什么样 的Pod就可以了,它会创建出满足条件的Pod并确保每一个Pod资源处于用户期望的目标状态。如 果Pod资源在运行中出现故障,它会基于指定策略重新编排Pod。

pod控制器的分类:

  • ReplicaSet:保证副本数量一直维持在期望值,并支持pod数量扩缩容,镜像版本升级
  • Deployment:通过控制ReplicaSet来控制Pod,并支持滚动升级、回退版本
  • Horizontal Pod Autoscaler:可以根据集群负载自动水平调整Pod的数量,实现削峰填谷
  • DaemonSet:在集群中的指定Node上运行且仅运行一个副本,一般用于守护进程类的任务
  • Job:它创建出来的pod只要完成任务就立即退出,不需要重启或重建,用于执行一次性任务
  • Cronjob:它创建的Pod负责周期性任务控制,不需要持续后台运行
  • StatefulSet:管理有状态应用

分类详解:

ReplicaSet:

主要作用:保证一定数量的pod的正常运行,一旦某个pod发生故障,他会重新启动或重建,也支持pod的扩缩及镜像版本的更迭。

扩缩容指令: 

  • 使用编辑指令,即
    kubectl edit rs 名称 -n 命名空间

    回车后编辑修改里面的replicas属性,修改为所需要的值,保存退出即可。

  • 直接使用下面命令即可

    kubectl scale rs 名称 --replicas=指定值 -n 命名空间

 镜像的更迭:

  • 使用编辑指令,即

    kubectl edit rs 名称 -n 命名空间

    回车后编辑修改里面的镜像版本属性,修改为所需要的版本,保存退出即可。

  • 直接使用下面指令即可

    kubectl set image rs 名称 容器名称=容器所指定的镜像版本 -n 命名空间

 Deployment:

主要作用:ReplicaSet的全部功能,且还具有版本回退更新的功能,本质时通过操纵ReplicaSet来对pod进行操作的。

扩缩容指令:

         与ReplicaSet类似

版本更新:
  • 重建更新:先删除老的版本,重建新的版本​​​​​​​
spec:
 strategy: # 策略
  type: Recreate # 重建更新
  • 滚动更新:杀死一部分,就启动一部分,在更新的过程中存在两个版本的pod。
spec:
 strategy: # 策略
  type: RollingUpdate # 滚动更新策略
  rollingUpdate:
   maxSurge: 25%    #默认值
   maxUnavailable: 25%   #默认值

注意:滚动更新时,会产生一个新的RS控制器,新的RS增加一个pod后,老的RS控制器会减少一个一个pod,从而完成更新操作。 而更新完成后,老的RS并不会杯删除,而是会保留,用于做版本的回退。

版本回退​​​​​​​:

指令如下:

kubectl rollout status deploy 名称 -n 命名空间   # 查看当前升级版本的状态
kubectl rollout history deploy 名称 -n 命名空间   # 查看升级历史记录
kubectl rollout undo deployment 名称  --to-revision=版本号 -n 命名空间  # 版本回滚到指定版本,若没有指定版本,则回退至前一版本
 金丝雀发布:

概念:在版本更新时,新的RS生成一个pod后,老的RS还没删除时,就先暂停更新操作,然后先让一小部分请求去新的RS中的pod,看更新后功能是否正常运行,若不可以,则直接回到老版本即可,若可以则继续更新。

指令:只需在更新镜像的指令后再加上pause(暂停版本升级即可),可以正常运行则使用resume(继续已暂停的版本升级过程)继续更新即可。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值