Kubernetes - 复制控制器


Replication Controller 是 Kubernetes 的关键功能之一,负责管理 Pod 生命周期。它负责确保指定数量的 Pod 副本在任何时间点都在运行。当需要确保指定数量的 pod 或至少有 1 个 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

设置详情

  • 种类:ReplicationController →上面的代码中,我们将种类定义为复制控制器,它告诉 kubectl yaml文件将用于创建复制控制器。

  • 名称:Tomcat-ReplicationController → 这有助于识别创建复制控制器时使用的名称。如果我们运行 kubctl,获取rc < Tomcat-ReplicationController >它将显示复制控制器的详细信息。

  • 副本:3 → 这有助于复制控制器了解它需要在 Pod 生命周期的任何时间点维护 Pod 的三个副本。

  • name: Tomcat → 在规范部分,我们将名称定义为 tomcat,它将告诉复制控制器 pod 内存在的容器是 tomcat。

  • 容器端口:7474 → 它有助于确保集群中 pod 运行容器的所有节点都将在同一端口 7474 上公开。

Kube 副本服务

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