All Products
Search
Document Center

Container Compute Service:Use Alibaba Cloud storage in ACS clusters

Last Updated:Nov 19, 2025

The container storage feature of Alibaba Cloud Container Service (ACS) is based on the Kubernetes Container Storage Interface (CSI). It integrates Alibaba Cloud storage services, such as block storage, File Storage NAS, and Object Storage Service (OSS). It is also compatible with native Kubernetes storage, such as EmptyDir and ConfigMap. This topic describes the Alibaba Cloud storage services that ACS supports, their features, common scenarios, and mount methods.

Storage basics

Volume

Files in a container are stored temporarily on a disk. This can cause problems for applications that run in the container:

  • When a pod runs multiple containers, files cannot be shared between them.

  • When a container crashes, the files generated during its runtime are not saved when the container is rebuilt. This results in data loss.

To solve these problems, Kubernetes uses the Volume abstraction to provide capabilities such as shared storage and persistent storage.

  • A volume is part of a pod. It can only be defined in a pod and cannot be created independently. All containers in a pod can use the volume, but you must mount the volume to a directory in the container.

  • A volume is a channel for data transfer between a pod and an external storage device. It is also a way to share data between containers in a pod, between pods, and between a pod and the external environment.

  • Volumes have many types, such as EmptyDir, ConfigMap, and PersistentVolumeClaim (PVC).

For more information, see Volumes.

PV and PVC

Not all volumes have persistence. To implement persistent storage, container storage must rely on a remote storage service. For this purpose, Kubernetes introduced two resource objects to define and use storage resources: PersistentVolume (PV) and PersistentVolumeClaim (PVC).

  • PV (PersistentVolume)

    A PV is used to store persistent data. It is an abstract storage volume that can be network storage or cloud storage. A PV can be created in advance by a cluster administrator or dynamically created by a StorageClass (SC). A PV exists independently of pods and can be shared by multiple pods.

  • PVC (PersistentVolumeClaim)

    A PVC is a user's request for storage. It specifies the capacity and access mode of the PV that a pod requires. A PVC has a one-to-one relationship with a PV. To allow a pod to use storage resources, you can associate the volume in the pod with a PVC.

For more information, see Persistent Volumes and Storage Classes.

Select a cloud storage service

Alibaba Cloud provides low-cost, highly reliable, and highly available storage services for various storage resources, including block, file, and object storage. 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, input/output operations per second (IOPS), and throughput.

Cloud storage support for different computing power types

  • For CPU-based ACS pods, including general-purpose and compute-optimized instances, you can mount all types of cloud storage that ACS currently supports.

  • For GPU-based ACS pods, including GPU and GPU-HPN types, the support is as follows:

    • You can mount NAS and OSS.

    • Only some GPU models support mounting block storage and CPFS for Lingjun. For more information, submit a ticket.

Features and common scenarios of different cloud storage services

Cloud storage

Features

Common scenarios

Selection guide

Block storage

Non-shared, low-latency, and highly reliable block-level random access storage. It is similar to a physical hard disk and supports partitioning, formatting, and file system creation.

  • High I/O and low latency scenarios

    Disks feature low latency and high performance. They are suitable for applications with high requirements for I/O and latency, such as databases and middleware.

  • Non-shared scenarios

    A disk is non-shared storage and can be mounted to only one pod.

The following types of block storage are supported:

  • cloud_essd_entry: ESSD Entry disk.

  • cloud_auto: ESSD AutoPL disk.

  • cloud_essd: Enterprise SSD (ESSD). This is the default value.

  • cloud_ssd: standard SSD.

  • cloud_efficiency: ultra disk.

You can select disk categories based on your requirements for billing and performance. For more information, see Prices of block storage devices and Block storage performance.

File Storage NAS

A distributed file system that provides shared access, scalability, high reliability, and high performance. It offers high throughput and IOPS, and supports random read and write operations and online file modification.

  • Data sharing scenarios

    NAS is shared storage. It allows multiple pods to access the same data. Data in NAS is not deleted when a pod is deleted. You can use NAS for data sharing between pods.

  • Data analytics scenarios

    NAS provides high data throughput to meet the shared storage access requirements of batch processing jobs.

  • Web application scenarios

    Provides storage for web applications and content management systems.

  • Log saving scenarios

    If you want to store logs with persistence, use NAS.

General-purpose NAS and Extreme NAS file systems are supported.

You can select a suitable NAS type and storage specification based on cost and performance. For more information, see General-purpose NAS, Extreme NAS, and Selection guide.

CPFS for Lingjun (invitational preview)

Designed for intelligent computing services. It provides ultra-high throughput and IOPS, and supports end-to-end RDMA networks.

  • Intelligent computing scenarios such as AIGC and autonomous driving

    CPFS for Lingjun provides ultra-high throughput and IOPS. It supports end-to-end RDMA networks to meet the needs of intelligent computing services.

CPFS for Lingjun is in invitational preview and is supported only in specific regions and zones. For more information, see CPFS for Lingjun.

Object Storage Service (OSS)

A low-cost, massive, and shared storage space. It is suitable for storing data that is rarely modified after being written.

  • Data sharing scenarios

    OSS is shared storage. It allows multiple pods to access the same data. Data in OSS is not deleted when a pod is deleted. You can use OSS for data sharing between pods.

  • Read-intensive scenarios that involve files such as configuration files, images, and various video media files

    OSS is suitable for storing unstructured data, such as configuration files, images, and audio and video files. If your business needs to modify file content, select an ossfs 1.0 volume for better compatibility with POSIX operations.

  • High-concurrency batch processing scenarios such as AI inference and data analytics

    The high server-side bandwidth of OSS is suitable for high-concurrency batch processing. Examples include new compute-intensive workloads and workflows such as AI training, data analytics, and autonomous driving. These workloads mainly involve sequential and random reads, and sequential writes (append-only). Select an ossfs 2.0 volume for higher throughput.

  • Data security scenarios with high requirements for authentication and disaster recovery

    OSS supports zone-redundant storage for disaster recovery and server-side encryption capabilities such as KMS. It also supports MD5 validation to ensure the integrity of data uploads and downloads. In addition, it supports two object-level authentication methods: RAM and OSS bucket policies.

You can select a suitable storage class based on OSS billing, data access frequency, and other factors. For more information, see Selection guide and Storage classes.

Mount a cloud storage service

Storage plug-in

CSI is the storage plug-in implementation recommended by the Kubernetes community. ACS provides csi-provisioner as the CSI plug-in for ACS clusters. It supports volumes that are based on Alibaba Cloud storage resources.

Important

For operations such as mounting, unmounting, creating, and deleting volumes, the CSI plug-in requires permissions to access resources of other Alibaba Cloud products. The CSI plug-in uses a RAM role to request the creation of the AliyunCCCSIPluginRole role to access your resources in other cloud products. For more information, see Authorization overview.

Mount methods

You can mount a cloud storage service by describing an Alibaba Cloud storage resource, such as a disk or a NAS file system, with a PV, binding the PV with a PVC, and then declaring the PVC to be used in the pod's volume. Based on the differences in how PVs are created for cloud storage resources, mount methods can be divided into the following two types:

  • Static

    Create a PV (a statically provisioned volume) based on an existing cloud storage resource. Then, directly bind the PV in a PVC to statically mount the resource. This method ensures that the PV is ready before the container starts and is suitable for scenarios where storage resources already exist.

  • Dynamic

    Define the cloud storage resource to be dynamically created using a StorageClass. Then, associate the StorageClass in a PVC. The system automatically creates and binds a PV (a dynamically provisioned volume) based on the configurations of the PVC and StorageClass. This method lets you dynamically mount the resource and is more flexible and automated because you do not need to create a PV in advance.

For information about how to mount different types of volumes, see the following topics:

References

  • In addition to persistent storage, disks can also be used as temporary volumes to store temporary data. These volumes are created and deleted along with their pods. For more information, see Mount a temporary volume.

  • By default, an ACS pod provides 30 GiB of free temporary storage space (EphemeralStorage). If this storage space is not enough for your needs, you can increase the size of the temporary storage space as needed.