1、Kubernetes Replication Controller(RC)
Replication Controller简称RC,它能够保证Pod持续运行,并且在任何时候都有指定数量的Pod副本,在此基础上提供一些高级特性,比如滚动升级和弹性伸缩。当需要确保指定数量的 pod 或至少一个 pod 正在运行时,会及时使用它。它具有开启或关闭指定数量的 pod 的能力。
2、RC常用操作
最好是使用Replication Controller(RC)来管理 pod 生命周期,而不是一次又一次地创建 pod。
1)配置文件
apiVersion: v1 kind: ReplicationController metadata: name: tomcat-rc spec: replicas: 3 template: metadata: name: Tomcat-ReplicationController labels: app: App component: neo4j spec: containers: - name: tomcat image: tomcat: 8.0 ports: - containerPort: 8080
ReplicationController:Kind: ReplicationController
中ReplicationController
表示kubectl
将使用yaml文件来创建Replication Controller(RC)。
name: name: tomcat-rc
将用于识别创建Replication Controller(RC)的名称。name: tomcat
表示容器的名称定义为tomcat
,pod中出现的容器是tomcat
。
replicas:replicas: 3
表示需要在pod生命周期的任何时间点维护一个pod的三个副本。
containerPort:containerPort: 8080
是确保集群中的所有节点(pod在pod中运行容器)都暴露在同一个端口8080
上。
2)缩容Pod
kubectl scale replicationcontroller tomcat-rc --replicas=1 replicationcontroller "tomcat-rc" scaled kubectl get pod -l name kubectl get rc tomcat-rc
3)扩容Pod
kubectl scale replicationcontroller tomcat-rc --replicas=4 replicationcontroller "tomcat-rc" scaled kubectl get pod -l name kubectl get rc tomcat-rc
4)判断及修改副本数量
判断当前副本数是否为3个,如果是,则更改为1个副本:
kubectl scale rc tomcat-rc --current-replicas=3 --replicas=1
相关文档:
Kubernetes(K8s) kubectl get 常用命令
Kubernetes(K8s) kubectl describe常用命令
Kubernetes(K8s) kubectl create常用命令
Kubernetes(K8s) kubectl replace常用命令
Kubernetes(K8s) kubectl patch常用命令
Kubernetes(K8s) kubectl edit 常用命令
Kubernetes(K8s) kubectl delete 常用命令