首页/云/Kubernetes 速查/CSI 驱动与存储接入
配置与存储54 条

CSI 驱动与存储接入

主流存储通过 CSI 驱动接入:集群侧部署驱动组件(控制器 + 节点 DaemonSet),StorageClass 中写驱动名;旧 in-tree 云盘插件逐步迁移到 CSI。

Kubernetes 速查云更新于 2026-10-13

CSI 与存储接入

CSI(容器存储接口)是 Kubernetes 的存储插件标准:厂商按接口实现驱动,Kubernetes 通过它完成卷的创建、挂载、扩容与快照,驱动代码不必再进主仓库。集群里通常有两部分组件:负责卷生命周期(创建、删除、扩容)的控制器组件,以及每个节点一个、负责把卷挂到节点并挂进容器的节点组件。StorageClass 里的 provisioner 字段写的就是驱动名,卷出问题时先看它指向谁。

基本信息

适用平台Kubernetes 1.13 起 CSI 稳定;旧 in-tree 插件逐步迁移到 CSI
相关对象CSIDriver、CSINode、StorageClass、VolumeAttachment
查看命令kubectl get csidrivers / csinodes / storageclass
组件形态控制器(Deployment 或 StatefulSet)+ 节点组件(DaemonSet)
排障入口驱动日志、PVC 事件、VolumeAttachment 状态

典型使用场景

  • 集群接入新存储(云盘、Ceph、NFS、SAN)时确认驱动是否已就绪
  • PVC 长期 Pending 时判断是驱动缺失、供应失败还是容量不足
  • 挂载失败类故障时按事件指向区分控制器问题还是节点组件问题
  • 升级集群前核对驱动与 Kubernetes 版本的兼容矩阵
  • 扩容或快照能力不生效时确认驱动是否声明了对应能力

识别集群里的驱动

识别集群里的驱动
kubectl get csidrivers
kubectl get storageclass -o custom-columns=NAME:.metadata.name,PROVISIONER:.provisioner,BIND:.volumeBindingMode
kubectl get csinodes                                     # 每节点上报的驱动与卷上限
kubectl get volumeattachment | head                      # 挂载中的卷与所在节点

看驱动日志

看驱动日志
kubectl -n kube-system get pods | grep -i -E 'csi|provisioner'
kubectl -n kube-system logs <csi-controller-pod> --tail=50    # 控制器:创建/删除/扩容报错
kubectl -n kube-system logs <csi-node-pod> --tail=50          # 节点组件:挂载/卸载报错

组件与排障入口

组件职责排障入口
CSIDriver 对象声明驱动能力与特性开关kubectl get csidriver <名称> -o yaml
控制器组件创建、删除、扩容卷控制器 Pod 日志与 PVC 事件
节点组件挂载卸载、上报节点卷上限对应节点上的节点组件 Pod 日志
StorageClass绑定驱动名与存储参数PVC 的 storageClassName 与 provisioner 是否对得上
挂载类故障既可能出在节点组件,也可能出在控制器组件:先看 Pod 事件里提到的组件名,再决定查哪一侧日志,比两头乱翻快得多。
节点组件与驱动的升级通常滚动进行,升级期间该节点上的新建卷可能短暂无法挂载,重要变更尽量避开业务高峰与批量发布窗口。

易错点

  • 升级 Kubernetes 前不核对 in-tree 插件停用时间表:升级完成后云盘不可用,业务无法调度
  • 只盯节点组件:控制器异常时新建 PVC 一直 Pending 而存量卷读写正常,故障面被误判得很小
  • 驱动版本与集群版本不匹配:部分接口行为有差异,表现为偶发挂载超时,排查成本很高
  • 在节点组件升级窗口内同时做大规模 Pod 重建:挂载与卸载并发冲突,出现短暂卷不可用

数据来源与参考

  • Kubernetes 官方文档 · CSI 卷与 in-tree 迁移
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌