当前位置: 首页 > news >正文

k8s术语之Replication Controller

Replication Controller 在kubernetes中简称RC,它其实是定义了一个期望的场景,即声明某种Pod的副本数量在任意时刻都符合某个预期值,包括一下几个值:

        1.Pod期待的副本数(replicas)

        2.用于筛选目标Pod的Lable Selector        

        3.当Pod的副本数量小于预期数量时,用于创建新的Pod的模板(template)

当我们定义了一个RC并提交到kubernetes后,Master节点上的Controller Manager组件就得带通知,定期巡检检测中当前存活的目标Pod,并确保目标Pod实例的梳理刚好等于replicas的值,如果多于这个值,系统就会停掉一些pod,少之则创建。可以说,通过RC,kubernetes实现用户应用集群的高可用性,减少了手工运维操作

通过RC,可动态进行Pod实例数的缩放,kubectl scale命令为我们提供了这一功能

        kubectl scale rc redis-slave --replicas=3

需要注意的是,删除RC并不会影响通过该RC已经创建好的Pod,为了删除所有Pod,可用通过设置replicas的值为0,然后更新该RC.另外Kubectl提供了stop和delete命令来一次性删除RC和RC控制的所有Pod

RC也提供用户应用平滑升级的功能,比如当前系统中有10个旧版本的Pod需要更新到新版,最好的方式是每次停止一个旧版本的Pod,就创建一个新版本的Pod,几分钟后当所有的Pod都是新版本时升级完成,用户不会感受到业务有任何影响,这种在kubernetes中被称作“滚动升级”

扩展和缩减

        将replicas修改为5

        kubectl apply -f rctest.yaml

        kubectl get pod -o wide        

相关文章:

  • MySQL中ROW_NUMBER() OVER的用法以及使用场景
  • CentOS网络之network和NetworkManager深度解析
  • windows系统常用快捷键(CMD常用命令,DOS常用命令)
  • PostgreSQL数据库操作基本命令
  • windows 下 oracle 数据库的备份与还原
  • 多线程系列一:认识线程
  • 【计算机网络】​TCP(传输控制协议)套接字,多线程远程执行命令编程​
  • 2025年真实面试问题汇总(一)
  • 【Python学习路线】零基础到项目实战
  • RFID光触发标签工业级分拣难题的深度解决方案
  • Vue3笔记摘录
  • 读论文笔记-CoOp:对CLIP的handcrafted改进
  • 兰亭妙微:全流程交互设计和设计前后对比
  • 如何加速机器学习模型训练:深入探讨与实用技巧
  • Vue2 vs Vue2.7 深度对比
  • 【Java】打印运行环境中某个类引用的jar版本路径
  • Nginx核心
  • 深入探索ChatClient:简化AI模型交互的强大工具
  • Compose笔记(二十一)--AnimationVisibility
  • 深度学习论文: Describe Anything: Detailed Localized Image and Video Captioning
  • 大学2025丨对话深大人工智能学院负责人李坚强:产学研生态比“造天才”更重要
  • 伊朗外长:伊美第四轮间接谈判将于5月3日举行
  • 人民日报社论:坚定信心、奋发有为、创新创造——写在“五一”国际劳动节
  • 济南高新区一季度GDP增长8.5%,第二产业增加值同比增长14.4%
  • 中信银行一季度净利195.09亿增1.66%,不良率持平
  • 五一假期上海地铁部分线路将延时运营,这些调整请查收