English | 简体中文
The Alibaba Cloud CSI Driver implements the Container Storage Interface (CSI) specification, allowing Container Orchestrators (COs) such as Kubernetes to manage the full lifecycle of Alibaba Cloud storage volumes — dynamic provisioning, attaching, mounting, resizing and snapshotting.
Warning
Deploying this driver to your ACK cluster manually is not recommended. Instead, users should use ACK Add-ons to automatically deploy and manage the Alibaba Cloud CSI Driver. Manual deployment of the driver in your ACK cluster is not officially supported by Alibaba Cloud.
Alibaba Cloud CSI plugins implement an interface between CSI-enabled Container Orchestrators and Alibaba Cloud Storage. They allow you to dynamically provision storage volumes and attach them to your workloads.
The current implementation has been tested against Kubernetes 1.14+; manual deployment via Helm requires Kubernetes 1.26+.
| Driver | CSI Name | Type | Access Modes | Dynamic Provisioning | Documentation |
|---|---|---|---|---|---|
| Disk | diskplugin.csi.alibabacloud.com |
Block | RWO | Yes | Cloud Disk |
| NAS | nasplugin.csi.alibabacloud.com |
File | RWX / RWO | Yes | NAS |
| OSS | ossplugin.csi.alibabacloud.com |
Object | RWX / RWO | No (bucket mount) | OSS |
| BMCPFS | bmcpfsplugin.csi.alibabacloud.com |
File | RWX / RWO | No (static only) | BMCPFS |
- Cloud Disk is block storage that can only be used by one workload at a
time (
ReadWriteOnce) and attached to a single node at a time. It supports snapshots, expansion, topology-aware scheduling, raw block volumes, and local-disk data caching for acceleration. - NAS is a shared network file system compatible with NFS/SMB, mountable
from many nodes simultaneously (
ReadWriteMany). CPFS 2.0 is now served through the NAS CSI plugin. - OSS mounts object-storage buckets into pods. It does not provision buckets
but can be mounted from multiple nodes (
ReadWriteMany). - BMCPFS mounts a Bare Metal Cloud Parallel File System — a high-performance
parallel file system optimized for high-I/O workloads, mountable from many
nodes simultaneously (
ReadWriteMany). It supports static provisioning only: the file system must be pre-created in Alibaba Cloud. Both VSC (high performance, Lingjun) and VPC networking are supported.
CPFS CSI Plugin — Removed: use the NAS CSI plugin for CPFS 2.0.
| Feature | Stage | Min Kubernetes Version | Min Driver Version |
|---|---|---|---|
| Topology | GA | 1.17 | v1.0.2 |
| Resize (Expand) | GA | 1.16 | v1.0.5 |
| Snapshots | GA | 1.20 | v1.1.2 |
kubectlconfigured to communicate with the cluster- Helm 3
- RAM permissions for the driver to invoke Alibaba Cloud OpenAPIs on your behalf (see the example policies)
- Individual drivers may have additional requirements; consult their documentation
See the Installation Guide for deployment options, RAM setup, configuration presets, and verification steps.
Container images are built via:
make buildmake fmt # check formatting
make vet # go vet
make lint # golangci-lint
make test # unit tests
# End-to-end Helm install against a kind cluster
make check-helm-kindLearn how to engage with the Kubernetes community on the community page.
You can reach the maintainers of this project at the Cloud Provider SIG.
You can join the DingTalk group (Group ID: 33936810) to talk with us.
Please submit issues at GitHub Issues, and read CONTRIBUTING.md before opening a pull request.
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.
Please report vulnerabilities by email to kubernetes-security@service.aliyun.com. See our SECURITY.md for details.
This project is licensed under the Apache License 2.0.