Kubernetes 副本控制器


副本控制器(Replication Controller)是 Kubernetes 的关键特性之一,它负责管理 pod 生命周期,确保指定数量的 pod 副本在任何时间点都在运行。当需要确保指定数量的 pod 或至少一个 pod 正在运行时使用,它具有启动或关闭指定数量的 pod 的能力。

最好的做法是使用副本控制器来管理 pod 生命周期,而不是一次又一次地创建 pod。

apiVersion: v1
kind: ReplicationController --------------------------> 1
metadata:
    name: Tomcat-ReplicationController --------------------------> 2
spec:
    replicas: 3 ------------------------> 3
    template:
        metadata:
            name: Tomcat-ReplicationController
        labels:
            app: App
            component: neo4j
        spec:
            containers:
            - name: Tomcat- -----------------------> 4
            image: tomcat: 8.0
            ports:
                - containerPort: 7474 ------------------------> 5

设置细节


  • kind:ReplicationController→ 上面的代码将种类定义为副本控制器,告诉kubectl这个yaml文件将被用于创建副本控制器;

  • name:Tomcat-ReplicationController→ 识别将用于创建副本控制器的名称,如果运行 kubctl,它将显示复制控制器的详细信息;

  • replicas:3→ 用于副本控制器了解它需要在 Pod 生命周期的任何时间点维护 Pod 的三个副本;

  • name: Tomcat→ 在spec中将name定义为tomcat,它将告诉副本控制器 pod 中存在的容器是 tomcat;

  • containerPort:7474→ 用于确保 Pod 运行 Pod 内容器的集群中的所有节点都将暴露在同一端口 7474 上。

Kube Service for Replicas

在这里,Kubernetes 服务用作三个 tomcat 副本的负载均衡器。