Kubernetes中的ReplicationController和ReplicaSet
ReplicationController
保证 Pod 对象始终处于期望的运行状态。不管 Pod 因何种原因消失(节点从集群消失或pod从节点中逐出)。
控制器的协调流程
LOOP
- 通过标签选择器匹配 Pod
- 比较匹配的数量与期望的副本数量
- 少了。使用当前的模板创建 Pod
- 多了。删除超出数量的 Pod
- 等于。
ReplicationController 的三个主要部分
- selector, 标签选择器
- replicas, 副本个数
- template, Pod 模板
编写 ReplicationController 的YAML文件(kubia-rc.yaml) apiVersion: v1 kind: ReplicationController metadata: name: kubia spec: selector: app: kubia replicas: 2 template: metadata: labels: app: kubia spec: containers: - name: kubia image: wangjunjian/kubia:latest ports: - containerPort: 8080 ★ 可以不指定标签选择器(selector),它会自动根据 Pod 模板中的标签设置。