ReplicationController
新建一个 pod_nginx.yml
apiVersion: v1
kind: ReplicationController
metadata:
name: nginx
spec:
replicas: 3
selector:
app: nginx
template:
metadata:
name: nginx
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
而后运行如下
kubectl create -f pod_nginx.yml
kubectl get rc
NAME | DESIRED | CURRENT | READY | AGE |
---|---|---|---|---|
nginx | 3 | 3 | 3 | 4m |
kubectl get pods
NAME | READY | STATUS | RESTARTS | AGE |
---|---|---|---|---|
nginx-89s9p | 1/1 | Running | 0 | 6m |
nginx-8bjnb | 1/1 | Running | 0 | 6m |
nginx-h49m5 | 1/1 | Running | 0 | 6m |
kubectl delete pods nginx-89s9p
kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-2mvs9 0/1 ContainerCreating 0 <invalid>
nginx-89s9p 0/1 Terminating 0 9m
nginx-8bjnb 1/1 Running 0 9m
nginx-h49m5 1/1 Running 0 9m
当咱们删掉一个 pod 的时候,kube 会主动帮咱们创立另一个 pod,从而达到动静的均衡
# 动静批改 pod 数量
kubectl scale rc nginx --replicas=2
ReplicaSet
新建一个 pod_nginx.yml
apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: nginx
labels:
tier: frontend
spec:
replicas: 3
selector:
matchLabels:
tier: frontend
template:
metadata:
name: nginx
labels:
tier: frontend
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
执行
# 创立
kubectl create -f pod_nginx.yml
# 查看
kubectl get rs
NAME DESIRED CURRENT READY AGE
nginx 3 3 3 2m
# 扩容
kubectl scale rs nginx --replicas=1