Cloud Parallel File Storage (CPFS) adalah sistem file paralel yang sepenuhnya dikelola untuk skenario komputasi kinerja tinggi (HPC) yang mendukung ekstensi sesuai permintaan. CPFS mendukung akses konkuren dari ratusan hingga ribuan mesin, dengan throughput puluhan GB, jutaan IOPS, dan latensi di bawah satu milidetik. Pasang volume statis CPFS ke Pod ACS untuk menyediakan penyimpanan bersama, persisten, dan berkinerja tinggi bagi aplikasi Anda.
Catatan penggunaan
CPFS for Lingjun (pratinjau undangan) cocok untuk skenario komputasi AI seperti konten hasil AI (AIGC) dan kendaraan otonom. Sebelum memasang volume, perhatikan hal-hal berikut:
Pratinjau undangan: CPFS for Lingjun mendukung jaringan Remote Direct Memory Access (RDMA) end-to-end. Edisi ini hanya tersedia di wilayah dan zona tertentu.
Persyaratan jaringan RDMA: Saat mengakses CPFS for Lingjun melalui jaringan RDMA, Pod dan sistem file harus berada di hpn-zone yang sama.
Penyimpanan bersama: Satu volume CPFS dapat dipasang ke beberapa Pod.
Kelas komputasi yang didukung: CPFS dapat dipasang ke Pod ACS dengan jenis CPU apa pun, tetapi hanya ke Pod ACS dengan model GPU tertentu. Untuk informasi lebih lanjut, submit a ticket.
Prasyarat
Add-on managed-csiprovisioner telah diinstal di kluster ACS.
Buka halaman manajemen kluster ACS di Konsol ACS. Di panel navigasi sebelah kiri, klik Components and Add-ons. Pada tab Storage, pastikan managed-csiprovisioner telah terinstal.
Buat sistem file CPFS
CPFS for Lingjun
Buat sistem file CPFS for Lingjun.
Setelah sistem file dibuat, catat ID sistem file tersebut.
(Opsional) Buat titik pemasangan VPC.
Untuk Pod yang tidak mendukung protokol RDMA, seperti Pod CPU dan beberapa Pod GPU, buat titik pemasangan VPC untuk mengakses CPFS melalui VPC.
Gunakan Virtual Private Cloud (VPC) dan vSwitch kluster ACS untuk membuat titik pemasangan VPC dan menghasilkan alamat pemasangan. Setelah titik pemasangan dibuat, catat nama domain titik pemasangan tersebut. Nama domain tersebut memiliki format
cpfs-***-vpc-***.<Region>.cpfs.aliyuncs.com.Pada halaman detail sistem file, klik Mounting di panel navigasi sebelah kiri. Pada tab Mount Target, temukan titik pemasangan VPC yang telah Anda buat. Klik ikon tampilan detail di sebelah kanan alamat pemasangan untuk mendapatkan alamat pemasangan lengkap dan salin alamat tersebut.
Pasang volume CPFS
Langkah 1: Buat PV dan PVC
kubectl
Simpan konten YAML berikut ke dalam file bernama
cpfs-pv-pvc.yaml.Pilih juga YAML berdasarkan kelas komputasi Pod yang akan dipasang.
CPFS for Lingjun
PentingCPFS for Lingjun hanya dapat dipasang ke Pod dengan model GPU tertentu. Untuk model GPU yang mendukung protokol RDMA, lihat Jenis GPU yang didukung.
apiVersion: v1 kind: PersistentVolume metadata: name: cpfs-test labels: alicloud-pvname: cpfs-test spec: accessModes: - ReadWriteMany capacity: storage: 10Ti csi: driver: bmcpfsplugin.csi.alibabacloud.com volumeAttributes: mountpointAutoSwitch: "true" # Mengaktifkan alih otomatis antara alamat pemasangan RDMA dan alamat pemasangan VPC vpcMountTarget: cpfs-***-vpc-***.<Region>.cpfs.aliyuncs.com filesystemId: bmcpfs-***** path: / volumeHandle: bmcpfs-***** --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: cpfs-test spec: accessModes: - ReadWriteMany selector: matchLabels: alicloud-pvname: cpfs-test resources: requests: storage: 10TiParameter PV:
Parameter
Deskripsi
labelsMenetapkan label agar PVC dapat menggunakan
selectoruntuk mencocokkan dan mengikat PV.accessModesMode akses PV.
capacity.storageKapasitas yang dideklarasikan untuk volume.
csi.driverJenis driver. Tetapkan nilainya ke
bmcpfsplugin.csi.alibabacloud.com.csi.volumeAttributesAtribut volume CPFS.
filesystemId: ID sistem file CPFS for Lingjun.path: nilai default/memasang direktori root sistem file CPFS. Secara opsional, tentukan subdirektori, misalnya/dir. Jika subdirektori tersebut tidak ada, maka akan dibuat secara otomatis saat volume dipasang.csi.volumeHandleID sistem file CPFS for Lingjun.
Parameter PVC:
Parameter
Deskripsi
accessModesMode akses yang diminta PVC dari PV.
selectorMencocokkan dan mengikat PV berdasarkan label pada PV.
resources.requests.storageKapasitas penyimpanan yang dialokasikan ke Pod. Nilainya tidak boleh melebihi kapasitas PV.
Buat PV dan PVC.
kubectl create -f cpfs-pv-pvc.yamlVerifikasi bahwa PVC telah terikat ke PV.
kubectl get pvc cpfs-testOutput berikut dikembalikan:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS VOLUMEATTRIBUTESCLASS AGE cpfs-test Bound cpfs-test 10Ti RWX <unset> <unset> 10s
Konsol
Login ke Konsol ACS.
Pada halaman Clusters, klik nama kluster untuk membuka halaman manajemen kluster.
Di panel navigasi sebelah kiri halaman manajemen kluster, pilih Volumes > Persistent Volume Claims.
Pada halaman Persistent Volume Claims, klik Create.
Pada kotak dialog yang muncul, konfigurasikan parameter lalu klik Create.
Tabel berikut menjelaskan parameter untuk membuat PV bersamaan dengan PVC. Atau, buat PV terlebih dahulu lalu buat PVC.
CatatanDi Konsol, pemasangan CPFS for Lingjun untuk aplikasi CPU melalui titik pemasangan VPC saat ini belum didukung.
Parameter
Deskripsi
Contoh
PVC Type
Pilih CPFS.
CPFS
Name
Nama PVC. Masukkan nama kustom. Untuk persyaratan format, lihat petunjuk di halaman.
cpfs-test
Allocation Mode
Pilih Existing Volumes atau Create PV sesuai kebutuhan Anda.
Create PV
CPFS Type
Pilih atau sesuai kebutuhan Anda. Pilih CPFS for LINGJUN.
CPFS for LINGJUN
Access Mode
Keduanya ReadWriteMany dan ReadWriteOnce didukung.
ReadWriteMany
Mount Target Domain Name:
Jika Anda menggunakan CPFS tujuan umum, tentukan direktori sistem file CPFS yang ingin Anda pasang. Jika hanya memasukkan alamat pemasangan, seperti
cpfs-***-***.cn-wulanchabu.cpfs.aliyuncs.com, maka direktori root (/) sistem file CPFS akan dipasang. Jika memasukkan alamat pemasangan dan subdirektori, seperticpfs-***-***.cn-wulanchabu.cpfs.aliyuncs.com:/dir, maka direktori/dirsistem file CPFS akan dipasang. Jika direktori/dirtidak ada, maka akan dibuat secara otomatis.cpfs-***-***.cn-wulanchabu.cpfs.aliyuncs.comLihat PVC dan PV yang telah Anda buat.
Pada halaman Persistent Volume Claims dan halaman Persistent Volumes, PVC dan PV baru akan muncul. Verifikasi bahwa keduanya telah terikat.
Langkah 2: Buat aplikasi dan pasang CPFS
kubectl
Simpan konten YAML berikut ke dalam file bernama
cpfs-test.yaml.Aplikasi GPU
Contoh YAML berikut membuat Deployment yang berisi dua Pod. Kedua Pod menggunakan label
alibabacloud.com/compute-class: gpuuntuk menyatakan bahwa daya komputasi GPU diperlukan, meminta sumber daya penyimpanan melalui PVC bernamacpfs-test, dan memasang volume ke jalur/data.CatatanUntuk model GPU tertentu, 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 # Menentukan kelas komputasi GPU alibabacloud.com/compute-class: gpu # Menentukan model GPU. Tetapkan nilai ini berdasarkan model aktual Anda, misalnya T4. alibabacloud.com/gpu-model-series: T4 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 volumes: - name: pvc-cpfs persistentVolumeClaim: claimName: cpfs-testAplikasi CPU
Contoh YAML berikut membuat Deployment yang berisi dua Pod. Pod tersebut meminta sumber daya penyimpanan melalui PVC bernama
cpfs-testdan memasang volume ke jalur/data.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 volumes: - name: pvc-cpfs persistentVolumeClaim: claimName: cpfs-testBuat Deployment dan pasang CPFS.
kubectl create -f cpfs-test.yamlPeriksa status Pod dalam Deployment.
kubectl get pod | grep cpfs-testOutput berikut dikembalikan. Dua Pod telah dibuat.
cpfs-test-****-***a 1/1 Running 0 45s cpfs-test-****-***b 1/1 Running 0 45sLihat jalur pemasangan.
Perintah berikut merupakan contoh. Perintah ini mencantumkan isi direktori pemasangan sistem file CPFS. Untuk sistem file baru, direktori tersebut kosong secara default sehingga tidak ada output yang dikembalikan.
kubectl exec cpfs-test-****-***a -- ls /data
Konsol
Di panel navigasi sebelah kiri halaman manajemen kluster, pilih Workloads > Deployments.
Pada halaman Deployments, klik Create from Image.
Konfigurasikan parameter Deployment lalu klik Create.
Tabel berikut menjelaskan parameter yang perlu Anda perhatikan. Gunakan nilai default untuk parameter lainnya. Untuk informasi lebih lanjut, lihat Buat workload tanpa status Deployment.
Aplikasi GPU
Halaman konfigurasi
Parameter
Deskripsi
Contoh
Basic Information
Application Name
Nama Deployment. Masukkan nama kustom. Untuk persyaratan format, lihat petunjuk di halaman.
cpfs-test
Replicas:
Jumlah replika Deployment.
2
Instance Type
Pilih kelas komputasi Pod.
CatatanUntuk model GPU tertentu, lihat Tentukan model GPU dan versi driver untuk Pod ACS yang dipercepat GPU.
GPU, T4
Container
Image Name
Masukkan alamat image yang digunakan untuk men-deploy aplikasi.
registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
Required Resources
Tetapkan sumber daya GPU, vCPU, dan memori yang diperlukan.
GPU: 1. CPU: 2 vCPU. Memori: 2 GiB.
Volume
Klik Add PVC dan konfigurasikan parameter. Mount Source: pilih PVC yang telah Anda buat. Container Path: masukkan jalur kontainer tempat Anda ingin memasang sistem file CPFS.
Mount Source: pvc-cpfs. Container Path: /data
Aplikasi CPU
Halaman konfigurasi
Parameter
Deskripsi
Contoh
Basic Information
Application Name
Nama Deployment. Masukkan nama kustom. Untuk persyaratan format, lihat petunjuk di halaman.
cpfs-test
Replicas:
Jumlah replika Deployment.
2
Instance Type
Pilih kelas komputasi Pod.
CPU, tujuan umum
Container
Image Name
Masukkan alamat image yang digunakan untuk men-deploy aplikasi.
registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
Required Resources
Tetapkan sumber daya vCPU dan memori yang diperlukan.
CPU: 0,25 vCPU. Memori: 0,5 GiB.
Volume
Klik Add PVC dan konfigurasikan parameter. Mount Source: pilih PVC yang telah Anda buat. Container Path: masukkan jalur kontainer tempat Anda ingin memasang sistem file CPFS.
Mount Source: pvc-cpfs. Container Path: /data
Periksa status aplikasi.
Pada halaman Deployments, klik nama aplikasi.
Pada tab Pods, verifikasi bahwa Pod sedang berjalan. Statusnya adalah Running.
Verifikasi penyimpanan bersama dan penyimpanan persisten CPFS
Deployment yang dibuat pada contoh sebelumnya berisi dua Pod yang memasang sistem file CPFS yang sama. Verifikasi kemampuan penyimpanan dengan cara berikut:
Buat file di salah satu Pod lalu lihat file tersebut di Pod lain untuk memverifikasi penyimpanan bersama.
Restart Deployment lalu periksa apakah data dalam sistem file masih ada di Pod baru untuk memverifikasi penyimpanan persisten.
Lihat informasi Pod.
kubectl get pod | grep cpfs-testOutput berikut dikembalikan:
cpfs-test-****-***a 1/1 Running 0 45s cpfs-test-****-***b 1/1 Running 0 45sVerifikasi penyimpanan bersama.
Buat file di salah satu Pod.
Contoh berikut menggunakan Pod bernama
cpfs-test-****-***a:kubectl exec cpfs-test-****-***a -- touch /data/test.txtLihat file tersebut di Pod lain.
Contoh berikut menggunakan Pod bernama
cpfs-test-****-***b:kubectl exec cpfs-test-****-***b -- ls /dataOutput berikut dikembalikan. File baru
test.txttelah dibagikan.test.txtVerifikasi penyimpanan persisten.
Restart Deployment untuk membuat ulang Pod-nya.
kubectl rollout restart deploy cpfs-testLihat Pod dan tunggu hingga Pod baru dibuat.
kubectl get pod | grep cpfs-testOutput berikut dikembalikan:
cpfs-test-****-***c 1/1 Running 0 78s cpfs-test-****-***d 1/1 Running 0 52sPeriksa apakah data dalam sistem file masih ada di Pod baru.
Contoh berikut menggunakan Pod bernama
cpfs-test-****-***c:kubectl exec cpfs-test-****-***c -- ls /dataOutput berikut dikembalikan. Data dalam sistem file CPFS masih ada dan tersedia di direktori pemasangan Pod baru.
test.txt