场景判断
无状态优先;有状态才上卷。PVC 声明容量与访问模式,PV 是库存,StorageClass 让动态 provisioner 自动开卷。本地 kind 若未装 local-path-provisioner 等,apply 后 PVC 可能长期 Pending——这不是 YAML 写错,而是「货架上没有默认供应商」。
真实案例骨架:单副本库改成 Deployment replicas=3 并共用一块 RWO PVC——第二、三个 Pod 卡在 ContainerCreating/Pending,Events 写 Multi-Attach。订单(PVC data)只有一份货,有状态负载应评估 StatefulSet 或每副本独立卷,而不是假设共享一块盘就能水平扩展。
复现步骤
本机勾选备忘(localStorage),不代表你已在集群里跑过,也不连接任何 API。只是帮你对照步骤,别当成「学会了」的勋章。
— / 5本机勾选
- 01
- 02
- 03
- 04
- 05
关键配置
# examples/storage/pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
# storageClassName: standard # 省略则用默认 SC
# 盘点供应能力
kubectl get sc,pvc,pv
# 下单
kubectl apply -f examples/storage/pvc.yaml
kubectl get pvc data
kubectl describe pvc data
# 读访问模式(RWO ≠ 多副本共享)
kubectl explain persistentvolumeclaim.spec.accessModes
kubectl delete -f examples/storage/pvc.yaml
Bound 只证明订单配货成功——不证明你的三副本库都能安全共用同一块盘。
验收:能用订单/库存/货架类比 PVC/PV/SC;Pending 时第一条命令是 describe pvc 不是 delete;能向同事说明 Multi-Attach 风险。
现场记录
先写自己的证据,再看参考答案。输入只留在当前页面,本站不会读取或验证你的集群。
存储订单:PVC Pending 与 RWO
这是你的手动确认,不代表本站已检测命令执行结果。
关联命令
跳转图鉴并展开对应条目(可复制示例)。
对应路径课节