Scaling概述
上一篇中我们发布的程序只创建了一个Pod,在流量剧增时显然不满足需求,这时我们就要对程序进行伸缩操作,可通过replicas参数实现。
下图Service A 只将访问流量转发到 IP 为 10.0.0.5 的Pod上:
当修改了 Deployment 的 replicas 为 4 后,Kubernetes 又为该 Deployment 创建了 3 新的 Pod,这 4 个 Pod 有相同的标签。因此Service A通过标签选择器与新的 Pod建立了对应关系,将访问流量通过负载均衡在 4 个 Pod 之间进行转发。
将nginx Deployment扩展到4个副本
创建yaml文件
vim nginx-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 4
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
ports:
- containerPort: 80
应用yanl文件
kubectl apply -f nginx-deployment.yaml
查看结果
kubectl get pods -o wide
