安装存储驱动程序

本主题介绍如何在集群上安装容器存储接口 (CSI) 存储驱动程序。

概览

默认情况下,GKE on AWS 使用默认 StorageClass 预配 AWS EBS 卷。如果您的工作负载需要使用其他类型的存储卷,则可以安装兼容的 CSI 驱动程序来提供其访问权限。

Container Storage Interface (CSI) 是一种开放式标准 API,可让 Kubernetes 工作负载访问合规存储系统。CSI还 支持使用现代存储功能,例如调整大小和快照。

安装 CSI 驱动程序后,您需要创建 Kubernetes StorageClass。您可以将 CSI 驱动程序设置为 StorageClass 的预配工具。然后,您可以将 StorageClass 设置为默认值,或将您的工作负载配置为使用 StorageClass。如需查看如何使用自定义 StorageClass 创建 StatefulSet 的示例,请参阅将 StorageClass 与工作负载配合使用

安装供应商的 CSI 驱动程序

存储供应商负责为其 CSI 驱动程序提供安装说明。请参阅 CSI 文档中的 CSI 驱动程序列表。

按照您的 CSI 驱动程序的安装说明操作,然后继续执行此页面上的后续步骤。

验证驱动程序安装

安装 CSI 驱动程序后,您可以通过运行以下命令来验证安装。

kubectl get csinodes \
  -o jsonpath='{range .items[*]} {.metadata.name}{": "} {range .spec.drivers[*]} {.name}{"\n"} {end}{end}'

如何使用 CSI 驱动程序

如需使用 CSI 驱动程序,请执行以下操作:

  1. 创建自定义 StorageClass,以在相应的 provisioner 字段中引用驱动程序。

  2. 如需预配存储空间,您可以执行以下任一操作:

由 CSI 驱动程序支持的 StorageClass 的注意事项

创建 StorageClass 时,请考虑以下因素:

  • 检查 CSI 驱动程序文档中是否有您提供给 StorageClass 的特定于驱动程序的参数,包括预配工具名称。

  • 您应根据 StorageClass 的属性(例如 fasthighly-replicated)为其命名,而不是根据其后面的具体驱动程序或设备的名称。根据 StorageClass 的属性为其命名后,您可以在不同的集群和环境中创建同名的 StorageClass。然后,将工作负载配置为使用相同的 StorageClass。

后续步骤