kubernetes 水平扩展

        
那么,在具体的实现上,这个 Deployment,与 ReplicaSet,以及 Pod 的关系是怎样的呢?

[root@dock01 ~]# kubectl get pods -l app=nginx_20210106
NAME                                        READY   STATUS    RESTARTS   AGE
nginx-deployment-20210106-87b5c4dbd-hmvvr   1/1     Running   0          3d20h
nginx-deployment-20210106-87b5c4dbd-lzzpj   1/1     Running   0          3d20h
nginx-deployment-20210106-87b5c4dbd-ww77z   1/1     Running   0          3d20h


比如,把这个值从 3 改成 4,那么 Deployment 所对应的 ReplicaSet,就会根据修改后的值自动创建一个新的 Pod。这就是“水平扩展”了;“水平收缩”则反之。而用户想要执行这个操作的指令也非常简单,就是 kubectl scale,比如:

$ kubectl scale deployment nginx-deployment --replicas=4
deployment.apps/nginx-deployment scaled


[root@dock01 ~]# cat nginx-deployment.yaml 
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment-20210106
spec:
  selector:
    matchLabels:
      app: nginx_20210106
  replicas: 3
  template:
    metadata:
      labels:
        app: nginx_20210106
    spec:
      containers:
      - name: nginx
        image: nginx:1.8
        ports:
        - containerPort: 80
        volumeMounts:
        - mountPath: "/usr/share/nginx/html"
          name: nginx-vol
      volumes:
      - name: nginx-vol
        hostPath:           
         path:  "/var/data"
         
kubectl scale deployment  nginx-deployment-20210106 --replicas=4
[root@dock01 ~]# kubectl scale deployment  nginx-deployment-20210106 --replicas=4
deployment.apps/nginx-deployment-20210106 scaled
[root@dock01 ~]# kubectl get pods -l app=nginx_20210106
NAME                                        READY   STATUS              RESTARTS   AGE
nginx-deployment-20210106-87b5c4dbd-csjlp   0/1     ContainerCreating   0          1s
nginx-deployment-20210106-87b5c4dbd-hmvvr   1/1     Running             0          3d20h
nginx-deployment-20210106-87b5c4dbd-lzzpj   1/1     Running             0          3d20h
nginx-deployment-20210106-87b5c4dbd-ww77z   1/1     Running             0          3d20h
[root@dock01 ~]# kubectl get pods -l app=nginx_20210106
NAME                                        READY   STATUS              RESTARTS   AGE
nginx-deployment-20210106-87b5c4dbd-csjlp   0/1     ContainerCreating   0          2s
nginx-deployment-20210106-87b5c4dbd-hmvvr   1/1     Running             0          3d20h
nginx-deployment-20210106-87b5c4dbd-lzzpj   1/1     Running             0          3d20h
nginx-deployment-20210106-87b5c4dbd-ww77z   1/1     Running             0          3d20h

猜你喜欢

转载自blog.csdn.net/zhaoyangjian724/article/details/112426737