Kubernetes--副本控制器

一、副本控制器

  • Replicacation Controller 
  • Deployment Controller

二、Replication Controller控制器

    Replication Controller的核心作用是确保集群中某个RC关联Pod的副本数量在任何时候都保持预设值。如果发现Pod副本数量超过预设值,Replication Controller会销毁一下Pod;反之,Replication Controller会自动创建新的Pod副本,知道符合条件的Pod副本数量达到预设值。

    只有当Pod的重启策略是Always时,(RestartPolicy=Always),Replication Controller才会管理Pod的操作(例如:创建、销毁、重启等)。通常情况下,Pod对象被创建成功后都不会消失,唯一例外是Pod处于successd或failed状态时间过长(超时参数由系统设置),此时该Pod会被自动回收,管理该Pod的副本控制器将在其它工作节点上重新创建、运行该Pod。

   RC中的Pod模板像一个模具,模具制作出来离开模板,它们之间就没有任何关系。一旦Pod创建完毕,无论模板如何变化,甚至换成一个新的模板,也不会影响已经创建的Pod。Pod可以通过修改它的标签来脱离RC的管控,该方法可以用于将Pod从集群迁移、数据修复等调试。对于被迁移的Pod副本,RC会自动创建一个新的副本替换被迁移的副本。

三、Deployment Controller

    Deployment Controller在工作过程中实际控制两类相关的资源对象:Deployment以及ReplicaSet。在创建Deployment后,Deployment Controller也会创建对应的ReplicaSet,Deployment的滚动升级也是Deployment Controller自动创建新的ReplicaSet支持的。

Deployment Controller作用:

  1. 确保在当前集群中有且仅有N个Pod实例,N是在RC中定义的Pod副本数量
  2. 通过调整spec.replicas属性值来实现系统扩容或者缩容
  3. 通过改变Pod模板(主要是镜像版本)实现系统滚动升级。

Deployment Controller典型使用场景:

  1.   重新调度(Recheduling)
  2. 弹性伸缩
  3. 滚动更新

  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值