All Products
Search
Document Center

Container Compute Service:Gunakan volume CPFS statis

Last Updated:Mar 27, 2026

Pasang volume CPFS yang disediakan secara statis.

Cloud Parallel File Storage (CPFS) adalah sistem file paralel yang sepenuhnya dikelola dan dapat diskalakan untuk skenario komputasi berkinerja tinggi. CPFS memungkinkan akses konkuren dari ribuan server, menyediakan throughput puluhan GB/detik dan jutaan operasi input/output per detik, semuanya dengan latensi di bawah satu milidetik. Beban kerja AI dan HPC yang berjalan di Alibaba Cloud Container Service (ACS) sering memerlukan jenis penyimpanan bersama ber-throughput tinggi ini yang dapat diakses oleh beberapa Pod secara simultan. Topik ini menjelaskan cara memasang volume CPFS yang disediakan secara statis ke aplikasi ACS serta memverifikasi bahwa volume tersebut mendukung penyimpanan bersama dan persisten.

Sebelum Anda mulai

CPFS for LINGJUN dirancang untuk skenario komputasi cerdas seperti AIGC dan kendaraan otonom. Perhatikan batasan berikut sebelum melanjutkan:

  • CPFS for LINGJUN mendukung jaringan RDMA end-to-end dan saat ini berada dalam pratinjau undangan. Dukungan terbatas pada wilayah dan zona tertentu.

  • Saat mengakses CPFS for LINGJUN melalui RDMA, hpn-zone dari Pod harus sesuai dengan hpn-zone dari sistem file CPFS for LINGJUN.

  • CPFS adalah sistem file bersama. Anda dapat memasang volume CPFS ke beberapa Pod secara simultan.

  • Volume CPFS dapat dipasang ke Pod ACS yang dipercepat CPU apa pun. Untuk Pod yang dipercepat GPU, hanya model GPU tertentu yang didukung. Untuk memeriksa kelayakan, kirim tiket.

Prasyarat

Sebelum memulai, pastikan Anda telah:

Untuk memverifikasi instalasi, buka halaman manajemen kluster ACS, pilih Operations > Add-ons di panel navigasi kiri, lalu periksa tab Storage.

Cara kerja penyediaan statis

Penyediaan statis mencakup tiga langkah:

  1. Buat sistem file CPFS di Konsol CPFS dan catat ID sistem file tersebut.

  2. Buat PersistentVolume (PV) dan PersistentVolumeClaim (PVC) di kluster ACS Anda yang mereferensikan sistem file tersebut.

  3. Buat Deployment yang mereferensikan PVC. Kubernetes akan mengikat PVC ke PV dan memasang sistem file ke dalam Pod Anda.

Pilih metode akses Anda

Konfigurasi PV bergantung pada jenis Pod dan metode akses jaringan Anda. Tentukan skenario yang berlaku sebelum melanjutkan ke Langkah 1.

Scenario Pod type Network CSI driver
CPFS for LINGJUN via RDMA GPU (hanya model tertentu) Direct RDMA povplugin.csi.alibabacloud.com
CPFS for LINGJUN via VPC Pod CPU atau Pod GPU tanpa dukungan RDMA VPC mount target nasplugin.csi.alibabacloud.com

Langkah 1: Buat sistem file CPFS

  1. Buat sistem file CPFS for LINGJUN dan catat ID sistem file tersebut.

  2. (Opsional) Buat VPC mount target. Buat VPC mount target jika Pod Anda tidak mendukung RDMA — misalnya, Pod CPU atau Pod GPU tanpa dukungan RDMA. Gunakan VPC dan vSwitch kluster ACS Anda saat membuat titik pemasangan. Catat nama domain titik pemasangan, yang mengikuti format cpfs-*-vpc-*.<Region>.cpfs.aliyuncs.com.

    CPFS VPC mount target

Langkah 2: Buat PV dan PVC

kubectl

  1. Buat file bernama cpfs-pv-pvc.yaml. Pilih YAML yang sesuai dengan metode akses Anda dari tabel "Pilih metode akses Anda". CPFS for LINGJUN — jaringan RDMA

    Penting

    Hanya Pod dengan model GPU tertentu yang mendukung RDMA. Untuk model yang didukung, lihat Model GPU yang didukung oleh ACS.

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: cpfs-test
      labels:
        alicloud-pvname: cpfs-test        # Digunakan oleh selector PVC untuk mengikat PV ini
    spec:
      accessModes:
      - ReadWriteMany
      capacity:
        storage: 10Ti                     # Kapasitas yang dideklarasikan; harus >= permintaan PVC
      csi:
        driver: povplugin.csi.alibabacloud.com
        volumeAttributes:
          filesystemId: bmcpfs-*****      # Ganti dengan ID sistem file CPFS for LINGJUN Anda
          path: /                         # Jalur pemasangan dalam sistem file; subdirektori dibuat otomatis
        volumeHandle: bmcpfs-*****        # Sama dengan filesystemId
    ---
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: cpfs-test
    spec:
      accessModes:
      - ReadWriteMany
      selector:
        matchLabels:
          alicloud-pvname: cpfs-test      # Harus sesuai dengan label pada PV di atas
      resources:
        requests:
          storage: 10Ti                   # Tidak boleh melebihi kapasitas PV

    CPFS for LINGJUN — jaringan VPC

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: cpfs-test
      labels:
        alicloud-pvname: cpfs-test        # Digunakan oleh selector PVC untuk mengikat PV ini
    spec:
      accessModes:
      - ReadWriteMany
      capacity:
        storage: 10Ti                     # Kapasitas yang dideklarasikan; harus >= permintaan PVC
      csi:
        driver: nasplugin.csi.alibabacloud.com
        volumeAttributes:
          mountProtocol: efc             # Protokol untuk akses CPFS berbasis VPC
          server: cpfs-***-vpc-***.cn-wulanchabu.cpfs.aliyuncs.com  # Ganti dengan nama domain VPC mount target Anda
          path: /                        # Jalur pemasangan dalam sistem file; subdirektori dibuat otomatis
        volumeHandle: bmcpfs-*****       # Ganti dengan ID sistem file CPFS for LINGJUN Anda
    ---
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: cpfs-test
    spec:
      accessModes:
      - ReadWriteMany
      selector:
        matchLabels:
          alicloud-pvname: cpfs-test     # Harus sesuai dengan label pada PV di atas
      resources:
        requests:
          storage: 10Ti                  # Tidak boleh melebihi kapasitas PV
  2. Buat PV dan PVC.

    kubectl create -f cpfs-pv-pvc.yaml
  3. Konfirmasi bahwa PVC terikat ke PV.

    kubectl get pvc cpfs-test

    Output yang diharapkan:

    NAME        STATUS   VOLUME      CAPACITY   ACCESS MODES   STORAGECLASS    VOLUMEATTRIBUTESCLASS   AGE
    cpfs-test   Bound    cpfs-test   10Ti       RWX            <unset>         <unset>                 10s

Console

Pemasangan CPFS for LINGJUN ke aplikasi CPU melalui VPC mount target saat ini tidak didukung di Konsol. Gunakan kubectl untuk skenario ini.
  1. Masuk ke Konsol ACS.

  2. Di halaman Clusters, klik nama kluster.

  3. Di panel navigasi kiri, pilih Volumes > Persistent Volume Claims.

  4. Di halaman Persistent Volume Claims, klik Create.

  5. Konfigurasikan parameter dan klik Create.

    Parameter Description Example
    PVC type Pilih CPFS. CPFS
    Name Nama kustom untuk PVC. cpfs-test
    Allocation mode Pilih Existing Volumes untuk mengikat PV yang sudah ada, atau Create Volume untuk membuat PV dan PVC sekaligus. Create Volume
    CPFS type

    Pilih CPFS for LINGJUN.

    CPFS for LINGJUN
    Access mode Pilih ReadWriteMany atau ReadWriteOnce. ReadWriteMany
    File system ID ID sistem file CPFS for LINGJUN Anda. bmcpfs-0115\*\*\*\*\*\*13q5
  6. Di halaman Persistent Volume Claims dan halaman Persistent Volumes, konfirmasi bahwa PVC dan PV yang baru dibuat muncul dan statusnya menunjukkan Bound.

Langkah 3: Sebarkan aplikasi dengan volume CPFS

kubectl

  1. Buat file bernama cpfs-test.yaml. Pilih templat yang sesuai dengan jenis Pod Anda. Contoh berikut membuat Deployment dengan dua replika. Kedua Pod memasang sistem file CPFS di /data menggunakan PVC yang dibuat di Langkah 2. Aplikasi yang dipercepat GPU

    Untuk model GPU dan versi driver yang didukung, lihat Tentukan model GPU dan versi driver untuk Pod ACS yang dipercepat GPU.
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: cpfs-test
      labels:
        app: cpfs-test
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: cpfs-test
      template:
        metadata:
          labels:
            app: cpfs-test
            alibabacloud.com/compute-class: gpu       # Meminta sumber daya komputasi GPU
            alibabacloud.com/gpu-model-series: T4     # Tentukan model GPU (misalnya, T4); sesuaikan jika perlu
            alibabacloud.com/compute-qos: default
        spec:
          containers:
          - name: nginx
            image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
            ports:
            - containerPort: 80
            volumeMounts:
              - name: pvc-cpfs
                mountPath: /data                      # Jalur pemasangan di dalam kontainer
          volumes:
            - name: pvc-cpfs
              persistentVolumeClaim:
                claimName: cpfs-test                  # Harus sesuai dengan nama PVC dari Langkah 2

    Aplikasi yang dipercepat CPU

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: cpfs-test
      labels:
        app: cpfs-test
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: cpfs-test
      template:
        metadata:
          labels:
            app: cpfs-test
        spec:
          containers:
          - name: nginx
            image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
            ports:
            - containerPort: 80
            volumeMounts:
              - name: pvc-cpfs
                mountPath: /data                      # Jalur pemasangan di dalam kontainer
          volumes:
            - name: pvc-cpfs
              persistentVolumeClaim:
                claimName: cpfs-test                  # Harus sesuai dengan nama PVC dari Langkah 2
  2. Buat Deployment.

    kubectl create -f cpfs-test.yaml
  3. Konfirmasi kedua Pod sedang berjalan.

    kubectl get pod | grep cpfs-test

    Output yang diharapkan:

    cpfs-test-****-***a   1/1     Running   0          45s
    cpfs-test-****-***b   1/1     Running   0          45s
  4. Konfirmasi sistem file CPFS dipasang di jalur yang diharapkan.

    kubectl exec cpfs-test-****-***a -- ls /data

    Direktori kosong secara default jika belum ada data yang ditulis.

Console

  1. Di panel navigasi kiri halaman manajemen kluster, pilih Workloads > Deployments.

  2. Di halaman Deployments, klik Create from Image.

  3. Konfigurasikan parameter Deployment. Untuk parameter yang tidak tercantum di bawah ini, gunakan nilai default. Untuk informasi lebih lanjut, lihat Buat aplikasi tanpa status menggunakan Deployment.

    Aplikasi yang dipercepat GPU

    Halaman konfigurasi Parameter Deskripsi Contoh
    Basic information Name Nama kustom untuk Penyebaran. cpfs-test
    Replicas Jumlah replika Pod. 2
    Type Jenis komputasi untuk Pod. Untuk model GPU yang didukung, lihat Specify GPU models and driver versions for ACS GPU-accelerated pods. GPU, T4
    Container Image name Alamat gambar kontainer. registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
    Required resources GPU, vCPU, dan memori yang akan dialokasikan. GPU: 1, CPU: 2 vCPUs, Memory: 2 GiB
    Volume Klik Add PVC dan atur sumber mount serta path kontainer. Mount source: pvc-cpfs, Container path: /data

    Aplikasi yang dipercepat CPU

    Configuration page Parameter Description Example
    Basic information Application name Nama kustom untuk Deployment. cpfs-test
    Replicas Jumlah replika Pod. 2
    Type Jenis komputasi untuk Pod. CPU, tujuan umum
    Container Image name Alamat gambar kontainer. registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
    Required resources vCPU dan memori yang dialokasikan. CPU: 0.25 vCPUs, Memory: 0.5 GiB
    Volume Klik Add PVC dan atur sumber pemasangan serta jalur kontainer. Mount source: pvc-cpfs, Container path: /data
  4. Klik nama Deployment di halaman Deployments. Di tab Pods, konfirmasi bahwa semua Pod menunjukkan status Running.

Verifikasi penyimpanan bersama dan persisten

Deployment yang dibuat di atas memiliki dua Pod yang memasang sistem file CPFS yang sama. Ikuti langkah-langkah berikut untuk memverifikasi bahwa penyimpanan bersama dan penyimpanan persisten berfungsi dengan benar.

  1. Dapatkan nama Pod.

    kubectl get pod | grep cpfs-test

    Output yang diharapkan:

    cpfs-test-****-***a   1/1     Running   0          45s
    cpfs-test-****-***b   1/1     Running   0          45s
  2. Konfirmasi direktori pemasangan kosong sebelum menulis data apa pun.

    kubectl exec cpfs-test-****-***a -- ls /data

    Jika tidak ada output yang dikembalikan, direktori kosong dan siap untuk pengujian.

  3. Verifikasi penyimpanan bersama.

    1. Buat file di salah satu Pod. ``shell kubectl exec cpfs-test-**-*a -- touch /data/test.txt ``

    2. Periksa apakah file tersebut terlihat di Pod lain. ``shell kubectl exec cpfs-test-**-*b -- ls /data ` Output yang diharapkan — file yang dibuat di Pod pertama terlihat di Pod kedua: ` test.txt ``

  4. Verifikasi penyimpanan persisten.

    1. Restart Deployment untuk membuat Pod baru. ``shell kubectl rollout restart deploy cpfs-test ``

    2. Tunggu hingga Pod baru mencapai status Running. ``shell kubectl get pod | grep cpfs-test ` Output yang diharapkan: ` cpfs-test-**-*c 1/1 Running 0 78s cpfs-test-**-*d 1/1 Running 0 52s ``

    3. Periksa apakah data tetap ada di Pod baru. ``shell kubectl exec cpfs-test-**-*c -- ls /data ` Output yang diharapkan — file masih ada setelah Pod dibuat ulang: ` test.txt ``