K8S的RC

可能会碰到的场景:

一、某次运营活动非常成功,网站访问量突然暴增

二、运行当前Pod 的节点发生故障了,Pod 不能正常提供服务了

Kubernetes 就为我们提供了这样的资源对象

Replication Controller:用来部署、升级Pod

Replica Set:下一代的Replication Controller

Deployment:可以更加方便的管理Pod 和Replica Set

Replication Controller简称RC ,RC 是Kubernetes 系统中的核心概念 之一,简单来说,RC 可以保证在任意时间运行 Pod 的副本数量,能够保证 Pod 总是可用的。如果实际 Pod 数量比指定的多那就结束掉多余的,如果实 际数量比指定的少就新启动一些Pod ,当Pod 失败、被删除或者挂掉后, RC 都会去自动创建新的Pod 来保证副本数量,所以即使只有一个Pod ,也 应该使用RC 来管理我们的 Pod 。

ReplicaSet(RS):被认为 是“升级版”的RC,在新版本的 Kubernetes 中建议使用 ReplicaSet(简称为RS )来取代 ReplicationController,ReplicaSet 支持集合式的 selector

vim rc.yaml

apiVersion: v1
kind: ReplicationController   #RC
metadata:
  name: rc-demo
  labels:
    name: rc
spec:
  replicas: 3           #定义副本数量
  selector:
    name: rc
  template:
    metadata:
      labels:
        name: rc
    spec:
      containers:
      - name: nginx-demo
        image: nginx
        ports:
        - containerPort: 80