1. 课程导入与全景认知

在企业级 IT 基础设施中,容器化已经成为应用交付的主流形态。Kubernetes 解决了无状态应用的编排问题,但数据库、消息队列、日志检索、AI 训练数据等有状态负载,仍然需要一块可靠、可共享、可迁移的持久化存储。Dell 企业存储产品线与容器平台的集成,正是围绕这一需求展开:把企业级存储的可靠性、快照、复制、精简配置等能力,通过 CSI(Container Storage Interface)等标准接口暴露给 Kubernetes,让 Pod 像使用本地卷一样使用企业存储。

一、Dell 企业存储产品线概览

理解容器持久化集成,首先要分清 Dell 存储家族中哪些产品面向块存储、哪些面向文件存储、哪些面向对象存储,以及它们各自通过什么方式接入容器平台。

产品线 存储类型 典型协议 容器接入方式
PowerStore 块 / 文件 / vVol iSCSI、FC、NFS、SMB CSI 驱动(PowerStore CSI)
PowerMax 高端块存储 FC、iSCSI、NVMe-oF CSI 驱动(PowerMax CSI)
PowerFlex 软件定义块存储 SDC、NVMe-oF CSI 驱动(PowerFlex CSI)
PowerScale 横向扩展文件存储 NFS、SMB、S3 CSI 驱动(PowerScale CSI)
Unity XT 中端块 / 文件 iSCSI、FC、NFS、SMB CSI 驱动(Unity CSI)
ObjectScale / ECS 对象存储 S3 通过 S3 接口或 COSI 接入

从容器视角看,块存储适合单 Pod 独占的高性能数据库场景,文件存储适合多 Pod 共享读写(RWX)场景,对象存储适合备份、归档、数据湖等场景。选择哪条产品线,取决于业务对性能、共享方式、容量规模和成本的要求。

二、容器持久化集成的业务价值

为什么要把企业存储接入容器平台?核心价值可以归纳为四点。

  • 数据持久与生命周期解耦:Pod 重建、节点漂移、集群升级时,数据卷不随容器销毁而丢失,PV(PersistentVolume)与 PVC(PersistentVolumeClaim)把存储生命周期与计算生命周期分离。
  • 复用企业级数据服务:快照、克隆、远程复制、精简配置、QoS 限流等能力,通过 StorageClass 参数和 CSI 接口直接暴露给应用团队,无需存储管理员手工划卷。
  • 动态供给与自助交付:开发人员提交 PVC 即可自动创建后端 LUN 或文件系统,缩短交付周期,减少人工工单。
  • 统一运维与可观测性:存储侧与容器侧通过 CSI 驱动、拓扑感知、指标暴露形成统一视图,便于容量规划和故障定位。
提示:容器持久化不是“把存储挂进容器”这么简单,它涉及 CSI 驱动部署、StorageClass 设计、访问模式选择、拓扑约束、快照与恢复策略等多个环节,本课程将逐层展开。

三、从请求到落盘:一次 PVC 的完整链路

下面这张图展示了 Kubernetes 中一次 PVC 请求如何经过 CSI 驱动最终落到 Dell 存储阵列上。理解这条链路,是后续所有配置和排障的基础。

Kubernetes PVC 到 Dell 存储的持久化链路 应用 Pod 挂载 /data PVC 请求 100Gi / RWO StorageClass provisioner: csi CSI Controller CreateVolume Dell 存储阵列 PowerStore / PowerMax / PowerFlex 创建 LUN / 文件系统 / 快照 PV 绑定 卷 ID / 访问路径 kubelet NodeStage / NodePublish 关键点:PVC 只描述需求,StorageClass 决定用哪个 CSI 驱动,CSI Controller 负责在后端创建卷, kubelet 通过 CSI Node 插件把卷挂载到 Pod。任一环节配置错误,都会导致 Pod 处于 Pending 或 ContainerCreating。

图中可以看到,PVC 本身只是一个“需求声明”,真正决定使用哪条 Dell 产品线的是 StorageClass 中的 provisioner 字段。例如 csi-powerstore.dellemc.com 对应 PowerStore,csi-powermax.dellemc.com 对应 PowerMax。CSI Controller 负责调用后端 API 创建卷,CSI Node 插件负责在目标节点上完成挂载。排障时,这条链路上的每一个对象——PVC 事件、StorageClass 参数、CSI Controller 日志、CSI Node 日志、存储侧卷状态——都是需要检查的观察点。

四、课程目标与学习路径

本课程的目标不是让读者背命令,而是建立一套“从需求到落盘、从配置到排障”的完整能力。学完之后,你应该能够:

  1. 根据业务场景选择合适的产品线和访问模式(RWO / ROX / RWX)。
  2. 部署并验证 Dell CSI 驱动,确认 Controller 与 Node 插件状态正常。
  3. 设计 StorageClass 参数,包括精简配置、快照类、拓扑约束、QoS 等。
  4. 完成 PVC 动态供给、Pod 挂载、数据读写验证的完整闭环。
  5. 使用快照、克隆、复制等能力实现备份与恢复。
  6. 在 Pod Pending、挂载失败、性能异常等场景下定位问题。

学习路径建议按“产品认知 → CSI 原理 → 驱动部署 → StorageClass 设计 → 应用挂载 → 快照与恢复 → 排障与优化”的顺序推进。每一章都会围绕真实对象和可观察结果展开,避免停留在概念层面。

本课程后续涉及的示例参数(如卷大小、IOPS 上限、快照保留数量等)均为教学示例或合理假设,用于说明配置方法和判断依据,不代表任何生产环境的实测结果。实际部署时请以现场存储型号、固件版本和业务需求为准。

容器持久化集成的本质,是把企业存储的能力通过标准接口“翻译”给 Kubernetes。理解这条翻译链路,后面的每一章都会变得有迹可循。