Pod 与工作负载
Pod 是 K8s 的最小单元(一组容器),Deployment 声明"我要几个副本、什么镜像",K8s 负责维持这个状态。
Deployment 工作方式
声明式:你写 YAML 说"跑 3 个 nginx 副本",K8s 自动创建 Pod;Pod 挂了自动重建;更新镜像滚动升级不中断服务。
常用操作
kubectl create deployment 创建;kubectl scale 扩缩容;kubectl rollout restart 重启滚动;kubectl delete deployment 删除。
代码示例
# deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: web
spec:
replicas: 3 # 3 个副本
selector:
matchLabels:
app: web
template:
metadata:
labels:
app: web
spec:
containers:
- name: web
image: nginx:alpine
ports:
- containerPort: 80
# 应用
kubectl apply -f deployment.yaml
# 扩缩容
kubectl scale deployment web --replicas=5
# 看状态
kubectl get pods -o wide
kubectl describe pod web-xxx
# 删除
kubectl delete deployment web