搜索结果: "pvc"

共找到 19 个页面

K8s 持久化存储 — PV / PVC / StorageClass 生产实战

标题匹配

title: K8s 持久化存储 — PV / PVC / StorageClass 生产实战

tags: [kubernetes, storage, pvc, statefulset, production]

## PV / PVC / StorageClass 关系

PVC(PersistentVolumeClaim)= 租仓单(用户申请多大空间、什么类型)

管理员提前创建 PV,用户创建 PVC 去绑定。适合小规模或特殊存储要求场景。

存储排障 — PVC Pending / 挂载失败

标题匹配

title: 存储排障 — PVC Pending / 挂载失败

tags: [kubernetes, troubleshooting, storage, pvc, statefulset]

## PVC Pending

**现象:** PVC 处于 Pending 状态,Pod 无法启动。

# 查看 PVC 事件(直接揭示原因)

Jenkins 多 Master 架构部署方案 — K8S + Gateway API

- **各 Master 完全独立**,各自有独立的 PVC 持久化

- **PVC 持久化**(JENKINS_HOME)

**方案一:PVC 快照(推荐)**

2. 删除旧 PVC(保留 PV 的话删除 PVC 即可)

3. 从快照恢复 PVC 或 rsync 回数据

K8s 架构与核心概念深度解析 — 面试通关秘籍(一)

| 存储 | 共享或无 | 独立 PVC(volumeClaimTemplates) |

### PV / PVC — 持久化存储

PVC (PersistentVolumeClaim) ← 用户申请存储

PVC 创建 → 查找匹配 PV(容量/访问模式/StorageClass)

详见 [[k8s-persistent-storage-guide]](PV/PVC 生产实战)和 [[storage-troubleshooting]](存储排障)。

K8s 面试通关指南 — 100 道核心题全解析

| 14 | PV 和 PVC? | PV 是集群存储资源,PVC 是对 PV 的请求 | [[k8s-persistent-storage-guide]] |

| 40 | 持久化存储实现? | PV/PVC/StorageClass 配合 | [[k8s-persistent-storage-guide]] |

| 54 | 有状态应用部署? | StatefulSet + Headless Service + PVC | [[k8s-statefulset-guide]] |

| 94 | 存储架构设计? | 需求分析 + 类型选择(PV/PVC/StorageClass)+ 分层 + HA + 监控 |

| [[k8s-persistent-storage-guide]] | PV/PVC/StorageClass 生产实战 |

Pod Pending 排障指南 — 7 个角度快速定位调度失败根因

### 方向四:存储卷问题(PVC Pending)

- PVC 的 accessModes 不匹配

# 检查 PVC 状态

kubectl get pvc -n

kubectl describe pvc <pvc-name> -n

StatefulSet 完全指南 — 稳定网络标识 / 独立存储 / 有序部署

| 存储 | 共享 PVC 或无 | 每个 Pod **独立 PVC**(volumeClaimTemplates) |

为每个 Pod 自动创建独立 PVCPVC 名称与 Pod 序号绑定:

**PVC 命名规则:** `{volumeClaimTemplate-name}-{statefulset-name}-{ordinal-index}`

- Pod `mysql-0` → PVC `data-mysql-0`

- Pod `mysql-1` → PVC `data-mysql-1`

K8s 高频问题一站式排查清单 — 10 大故障场景快速参考

| **PVC 未就绪** | `kubectl get pvc -n ` → `kubectl describe pvc` | 检查 StorageClass / PV 绑定 / 存储后端 |

**诊断入口:** `kubectl get pvc -n ` → `kubectl describe pvc <pvc-name>`

PVC Pending → 检查 StorageClass → 检查 PV → 检查 CSI 驱动 → 检查后端存储

| PVC Pending | StorageClass 不存在或注解错误 | `kubectl get sc` |

> ⚠️ **风险提醒:** 有状态应用的存储问题**不适用**简单的 Pod 重建——新 Pod 会挂载同名 PVC,如果 PVC 本身有问题则修复过程更复杂。

Pod 排障 — CrashLoopBackOff / Exit Code 排查 / OOM / 探针 / 依赖服务 / ConfigMap

- **PVC Pending**(等待存储绑定)

# 检查 PVC 状态

kubectl get pvc -n

kubectl describe pvc <pvc-name> -n

- **PVC Pending:** 检查 StorageClass 是否存在、CSI 是否正常

Linux RAID 与 LVM 基础指南 — 磁盘组合与空间管理

| LVM | 空间分配(灵活扩缩) | pvcreate, vgcreate, lvcreate |

pvcreate /dev/sdb /dev/sdc # 将硬盘初始化为 PV

3. 掌握 LVM 核心命令:pvcreate → vgcreate → lvcreate → mkfs → mount

4. 掌握扩容流程:加盘 → pvcreate → vgextend → lvextend → xfs_growfs

数据库上 K8s 架构选型 — 收益与风险权衡

| 通用避雷 | ❗ 禁止 | 不要只用 StatefulSet + 普通 PVC 硬扛生产数据库 |

| 存储 | PVC + CSI 抽象 + 网络存储 | 本地高性能低延迟 IO | 多层转发 → IO 抖动 / 延迟不可控 |

**存储层风险最大:** 数据库依赖低延迟稳定 IO 和顺序读写。PVC + CSI + 网络存储的多层转发会直接导致 IO 抖动、读写延迟不可控、排查难度翻倍。

K8s 生产排障基本原则与快速定位流程

- **存储层:** `kubectl get pvc,pv`, `kubectl get storageclass`

| Pending | `kubectl describe pod` 事件 | 资源不足、污点不匹配、PVC Pending |

| PVC Pending | `kubectl describe pvc` 事件 | StorageClass 不存在、CSI 异常 |

Wiki Index

- [[k8s-persistent-storage-guide]] — K8s 持久化存储:PV / PVC / StorageClass 生产实战

- [[storage-troubleshooting]] — 存储排障:PVC Pending / 挂载失败

Wiki Schema

- pvc: 持久化存储

运维工程师面试 50 题 — 经典 Linux/网络/数据库基础全覆盖

pvcreate /dev/sda3

ConfigMap 挂载踩坑指南 — 符号链接 / 只读 / 热更新 / 标准挂载模式

- [[k8s-persistent-storage-guide]] — PV/PVC 持久化存储(需持久化写目录时的替代方案)

Linux 磁盘空间排查 — 8 个命令 / 四种场景 / 生产清理流程

- [[storage-troubleshooting]] — K8s 存储排障(PVC/挂载)

NFS 挂载参数全解析 — 测试与调优指南

- [[storage-troubleshooting]] — K8s 存储排障(PVC 挂载失败与 NFS 的关系)

Wiki Log

## [2026-05-08] ingest | K8s持久化存储深度解析:PV、PVC、StorageClass