Alibaba Cloud Container Service (ACS) integrates cloud storage through the Kubernetes Container Storage Interface (CSI). Supported storage options include block storage, File Storage NAS, Object Storage Service (OSS), and CPFS for Lingjun. ACS also supports native Kubernetes volume types such as EmptyDir and ConfigMap.
Storage basics
Volumes
PersistentVolumes and PersistentVolumeClaims
Not all volumes survive pod restarts. Persistent storage requires a remote storage service. Kubernetes represents this through two resource objects:
-
PersistentVolume (PV): An abstract storage volume backed by network or cloud storage. A PV exists independently of any pod and can be shared by multiple pods. A cluster administrator can create a PV manually, or a StorageClass (SC) can create one dynamically.
-
PersistentVolumeClaim (PVC): A pod's request for storage. A PVC specifies the capacity and access mode required and binds one-to-one with a PV. To use storage in a pod, declare a PVC as the pod's volume.
For more information, see Persistent Volumes and Storage Classes.
Choose a storage service
You can select a suitable cloud storage service based on the computing power type and storage requirements of your business workload. Consider factors such as data volume, data access frequency, IOPS, and throughput.
Use the table below to compare features and typical use cases across all supported storage types.
Storage support by pod type
| Pod type | Supported storage |
|---|---|
| CPU-based (general-purpose, compute-optimized) | All storage types |
| GPU-based (GPU, GPU-HPN) | NAS, OSS |
| GPU-based — selected models only | Block storage, CPFS for Lingjun (submit a ticket to confirm availability) |
Block storage and CPFS for Lingjun support on GPU-based pods depends on the specific GPU model. Submit a ticket to confirm whether your GPU model is supported before using these storage types.
Features and use cases
|
Storage type |
Key characteristics |
Use cases |
Options |
|
Non-shared, low-latency, and highly reliable block-level storage. Functionally similar to a local disk: supports partitioning, formatting, and file system creation. Can only be mounted to one pod at a time. |
|
Disk categories:
For pricing and performance comparisons, see Prices of block storage devices and Block storage performance. |
|
|
Distributed file system with shared access, scalability, high reliability, and high performance. Supports high throughput and IOPS, random read/write, and online file modification. Data persists after pods are deleted. |
|
General-purpose NAS and Extreme NAS file systems are supported. Select the type and specification based on your cost and performance requirements. For more information, see General-purpose NAS, Extreme NAS, and Selection guide. |
|
|
Designed for intelligent computing workloads. Provides ultra-high throughput and IOPS with end-to-end RDMA network support. Available in specific regions and zones only. |
|
CPFS for Lingjun is in invitational preview and is available in specific regions and zones only. For more information, see CPFS for Lingjun. |
|
|
Cost-effective, massively scalable shared object storage. Best suited for data that is written once and read frequently. Data persists after pods are deleted. |
|
Select a storage class based on access frequency and cost. For more information, see Selection guide and Storage classes. |
Mount a storage service
Storage plug-in
ACS uses csi-provisioner as its CSI plug-in. It handles volume mounting, unmounting, creation, and deletion for all supported Alibaba Cloud storage types.
The CSI plug-in requires permissions to access other Alibaba Cloud services. It uses a RAM role to request the creation of the AliyunCCCSIPluginRole role to access your resources in other cloud products. For details, see Authorization overview.
Mount methods
To mount cloud storage in a pod, describe a storage resource as a PV, bind the PV to a PVC, and declare the PVC in the pod's volume spec. ACS supports two provisioning methods:
-
Static provisioning: Create a PV manually from an existing storage resource, then bind it directly in a PVC. Use this method when the storage resource already exists and must be ready before the container starts.
-
Dynamic provisioning: Define the desired storage in a StorageClass and reference it in a PVC. ACS automatically creates and binds a PV based on the PVC and StorageClass configuration. This method requires no manual PV creation and is more flexible for scaling workloads.
For step-by-step instructions, see:
Related topics
-
Disks can also be used as temporary (ephemeral) volumes that are created and deleted with the pod. For more information, see Mount a temporary volume.
-
Each ACS pod includes 30 GiB of free EphemeralStorage. If your workload requires more, see Increase the size of the temporary storage space.