什么是Replication Controller

77 阅读1分钟

概念

Replication Controller,简称 RC,简单来说,它其实定义了一个期望的场景,即声明某种 Pod 的副本数量在任意时刻都符合某个预期值。(由 RC 演变出了 Kubernetes后期版本中的 Deployment 和 ReplicaSet)

RC 的定义包括如下几个部分:

  • Pod 期待的副本数量
  • 用于筛选目标 Pod 的 Label Selector
  • 当 Pod 的副本数小于预期数量时,用于创建新 Pod 的模版(template)

实现

当提交这个 RC 在集群中后,Controller Manager 会定期巡检,确保目标 Pod 实例的数量等于 RC 的预期值,过多的数量会被停掉,少了则会创建补充。通过kubectl scale可以动态指定 RC 的预期副本数量。