Updated on 2025-04-27 GMT+08:00

Storage Overview

On-premises clusters offer multiple types of container storage covering various application scenarios through Container Storage Interface (CSI). Additionally, on-premises clusters are fully compatible with Kubernetes native storage services. All these allow you to mount multiple types of storage to containers in on-premises clusters. In addition to Kubernetes volumes such as hostPath, emptyDir, ConfigMaps, and secrets, on-premises clusters support multiple persistent volumes such as file system volumes and local volumes.

  • In terms of implementation, storage supports CSI and Kubernetes native storage.

    Category

    Description

    CSI

    An out-of-tree volume plugin, which specifies the standard container storage API and allows storage vendors to use standard custom storage plugins that are mounted using PVCs and PVs without the need to add their plugin source code to the Kubernetes repository for unified build, compilation, and release.

    Kubernetes native storage

    An "in-tree" volume plugin that is built, compiled, and released with the Kubernetes repository.

  • In terms of storage media, storage can be classified as cloud storage, local storage, and Kubernetes resource objects.

    Category

    Description

    Application Scenario

    Cloud storage

    The storage media is provided by storage vendors. Storage volumes of this type are mounted using PVCs and PVs.

    Data requires high availability or needs to be shared, for example, logs and media resources.

    Local storage

    The storage media is the local data disk or memory of the node. The local PV is a custom StorageClass provided by CCE and mounted using PVCs and PVs through the CSI. Other StorageClasses are native to Kubernetes.

    Non-HA data requires high I/O and low latency.

    Kubernetes resource objects

    ConfigMaps and secrets are resources created in clusters. They are special storage types and are provided by tmpfs (RAM-based file system) on the Kubernetes API server.

    ConfigMaps are used to inject configuration data to pods.

    Secrets are used to transmit sensitive information, such as passwords, to pods.

On-premises clusters are compatible with CSI and support storage products of mainstream storage providers. If you need a storage product, obtain the CSI driver from the storage provider and install the CSI driver.

Table 1 Storage products provided by multiple storage providers

Storage Product

Description

Reference Link

Huawei Cloud storage

Huawei Cloud provides object storage, block storage, file storage, and hybrid cloud storage for enterprises and individuals. These storage products feature high reliability, high performance, and security compliance to meet diverse service requirements.

https://support.huaweicloud.com/intl/en-us/obs/index.html

OceanStor Dorado

OceanStor Dorado is an enterprise-class all-flash storage solution. It provides ultimate performance, high reliability, and intelligent management. It supports CDR backup and DR and cross-cluster DR for containerized applications based on storage replication technology. The cross-cluster DR for containerized applications can achieve an RPO of less than 15s. This type of storage is suitable for containerized scenarios of core services such as finance and healthcare.

https://e.huawei.com/hu/products/storage/all-flash-storage

Ceph

Ceph is an open-source distributed storage system. It supports block storage (RBD) and file storage (CephFS). It provides the CSI driver and allows dynamically provisioning Ceph volumes and attaching them to workloads. Independent CSI plugins are provided to support RBD and CephFS backed volumes for high availability, automatic recovery, and elastic scaling. This type of storage is suitable for private cloud and hybrid cloud container platforms.

https://github.com/ceph/ceph-csi

SMTX ZBS

SMTX ZBS provides distributed block storage and file storage services with high availability, high performance, easy scalability, and easy maintenance, for large-scale virtualization, private clouds and container environments.

https://www.smartx.com/hk-mo/smtx-zbs/

NetApp

NetApp Trident can meet the persistent storage requirements of containerized applications through CSI. Trident enables your containerized applications to use NetApp storage services. Trident provides snapshots, backups, replication, and cloning for data protection, disaster recovery, and migration of containerized applications.

https://github.com/NetApp/trident