全部产品
Search
文档中心

Container Service for Kubernetes:Pasang volume NAS yang diaprovisi secara statis

更新时间:Jul 23, 2025

File Storage NAS (NAS) adalah sistem file terdistribusi yang mendukung akses bersama dan skalabilitas elastis dengan keandalan serta performa tinggi. NAS cocok untuk skenario seperti analisis big data, berbagi data, aplikasi web, dan penyimpanan log. Plugin Container Storage Interface (CSI) memungkinkan Anda menggunakan sistem file NAS yang ada untuk membuat volume persisten (PV) dan klaim volume persisten (PVC), serta memasangnya ke beban kerja untuk penyimpanan data persisten dan bersama.

Prasyarat

  • Plugin CSI telah diinstal di kluster. Untuk informasi lebih lanjut tentang cara peningkatan, lihat Perbarui csi-plugin dan csi-provisioner.

    Catatan

    Jika FlexVolume digunakan di kluster Anda, tingkatkan FlexVolume ke CSI karena FlexVolume sudah tidak digunakan lagi. Untuk informasi lebih lanjut, lihat Tingkatkan dari FlexVolume ke CSI. Pilih Operations > Add-ons, dan klik tab Storage untuk memeriksa jenis komponen penyimpanan.

  • Pastikan bahwa sistem file NAS yang ada memenuhi persyaratan berikut. Jika tidak, buat sistem file atau pasang volume NAS yang diaprovisi secara dinamis.

    • Tipe protokol adalah NFS.

      ACK tidak mendukung pemasangan sistem file NAS yang menggunakan Protokol SMB.

    • Titik pemasangan dan node kluster termasuk dalam VPC yang sama dan Status titik pemasangan adalah Available. Untuk informasi lebih lanjut tentang cara membuat titik pemasangan, lihat Kelola titik pemasangan.

      Ketika Anda memasang sistem file NAS ke beberapa pod, pod tersebut harus diterapkan dalam virtual private cloud (VPC) yang sama. Anda tidak dapat memasang sistem file NAS ke pod di VPC yang berbeda. Dalam VPC yang sama, NAS dapat dipasang lintas zona.

    Catatan

    Jika Anda ingin mengenkripsi data dalam volume NAS, konfigurasikan pengaturan enkripsi saat Anda membuat sistem file NAS.

Catatan Penggunaan

Pasang volume NAS yang diaprovisi secara statis (kubectl)

Langkah 1: Buat PV

  1. Ubah konten YAML berikut dan simpan sebagai pv-nas.yaml.

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: pv-nas
      labels:
        alicloud-pvname: pv-nas
    spec:
      capacity:
        storage: 5Gi
      accessModes:
        - ReadWriteMany
      csi:
        driver: nasplugin.csi.alibabacloud.com
        volumeHandle: pv-nas   # Masukkan nama PV.
        volumeAttributes:
          server: "0c47****-mpk25.cn-shenzhen.nas.aliyuncs.com"  # Alamat titik pemasangan. VPC tempat titik pemasangan berada harus sama dengan VPC tempat kluster berada.
          path: "/csi"  # Tentukan subdirektori sistem file NAS.
      mountOptions:
      - nolock,tcp,noresvport
      - vers=3

    Parameter

    Deskripsi

    name

    Nama PV.

    labels

    Label yang ingin Anda tambahkan ke PV.

    storage

    Kapasitas PV.

    Penting

    Kapasitas tersedia sebenarnya dari volume NAS tidak dibatasi oleh konfigurasi ini. Kapasitas ditentukan oleh spesifikasi sistem file NAS. Untuk informasi lebih lanjut, lihat NAS tujuan umum dan NAS Ekstrem untuk memastikan kapasitas tersedia tertentu.

    accessModes

    Mode akses PV. Nilai default adalah ReadWriteMany. Anda juga dapat mengatur nilainya menjadi ReadWriteOnce atau ReadOnlyMany.

    driver

    Tipe driver volume yang digunakan untuk menyediakan volume. Dalam contoh ini, parameter diatur ke nasplugin.csi.alibabacloud.com. Ini menunjukkan bahwa plugin CSI yang disediakan oleh Alibaba Cloud digunakan.

    volumeHandle

    Pengenal unik PV. Masukkan nama PV. Jika beberapa PV digunakan, pengenal setiap PV harus unik.

    server

    Alamat titik pemasangan. VPC tempat titik pemasangan berada harus sama dengan VPC tempat kluster berada.

    Untuk informasi lebih lanjut tentang cara melihat alamat titik pemasangan, lihat Kelola titik pemasangan.

    path

    Subdirektori sistem file NAS yang ingin Anda pasang.

    • Jika Anda tidak mengatur parameter ini, direktori root akan dipasang secara default.

    • Jika subdirektori yang ditentukan tidak ada dalam sistem file NAS, sistem secara otomatis membuat subdirektori tersebut lalu memasangnya.

    Catatan

    Direktori root sistem file NAS tujuan umum adalah /, dan direktori root sistem file NAS Ekstrem adalah /share. Saat Anda memasang subdirektori sistem file NAS Ekstrem, path harus dimulai dengan /share, seperti /share/data.

    mountOptions

    Opsi pemasangan untuk sistem file NAS, termasuk versi protokol NFS. Kami sarankan Anda menggunakan NFS v3. Sistem file NAS Ekstrem hanya mendukung NFS v3. Untuk informasi lebih lanjut tentang protokol NFS, lihat Protokol NFS.

  2. Buat PV.

    kubectl create -f pv-nas.yaml
  3. Lihat PV.

    kubectl get pv

    Output yang diharapkan:

    NAME     CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS      CLAIM    STORAGECLASS     VOLUMEATTRIBUTESCLASS   REASON   AGE
    pv-nas   5Gi        RWX            Retain           Available                             <unset>                          25s

Langkah 2: Buat PVC

  1. Simpan konten YAML berikut ke file bernama pvc-nas.yaml.

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: pvc-nas
    spec:
      accessModes:
        - ReadWriteMany
      resources:
        requests:
          storage: 5Gi
      selector:
        matchLabels:
          alicloud-pvname: pv-nas

    Parameter

    Deskripsi

    name

    Nama PVC.

    accessModes

    Mode akses. Nilai default adalah ReadWriteMany. Anda juga dapat mengatur nilainya menjadi ReadWriteOnce atau ReadOnlyMany.

    storage

    Kapasitas PV.

    Penting

    Kapasitas tersedia sebenarnya dari volume NAS tidak dibatasi oleh konfigurasi ini. Kapasitas ditentukan oleh spesifikasi sistem file NAS. Untuk informasi lebih lanjut, lihat NAS tujuan umum dan NAS Ekstrem untuk memastikan kapasitas tersedia tertentu.

    matchLabels

    Label yang digunakan untuk memilih PV dan mengikatnya ke PVC.

  2. Buat PVC.

    kubectl create -f pvc-nas.yaml
  3. Lihat PVC.

    kubectl get pvc

    Output berikut menunjukkan bahwa PVC terikat ke PV.

    NAME       STATUS   VOLUME    CAPACITY   ACCESS MODES   STORAGECLASS   VOLUMEATTRIBUTESCLASS   AGE
    pvc-nas    Bound    pv-nas    5Gi        RWX                           <unset>                 5s

Langkah 3: Buat aplikasi dan pasang volume NAS

  1. Simpan konten YAML berikut sebagai nas.yaml.

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nas-test
      labels:
        app: nginx
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          containers:
          - name: nginx
            image: anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6
            ports:
            - containerPort: 80
            volumeMounts:
              - name: pvc-nas
                mountPath: "/data"
          volumes:
            - name: pvc-nas
              persistentVolumeClaim:
                claimName: pvc-nas

    Parameter

    Deskripsi

    mountPath

    Path kontainer ke mana volume NAS dipasang.

    claimName

    Nama PVC yang dipasang ke aplikasi.

  2. Buat Deployment dan pasang volume NAS.

    kubectl create -f nas.yaml
  3. Periksa status pod yang dibuat oleh Deployment.

    kubectl get pod -l app=nginx

    Output yang diharapkan:

    NAME                  READY   STATUS    RESTARTS   AGE
    nas-test-****-***a    1/1     Running   0          32s
    nas-test-****-***b    1/1     Running   0          32s

Pasang volume NAS yang diaprovisi secara statis (konsol)

Langkah 1: Buat volume persisten (PV)

  1. Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.

  2. Di halaman Clusters, temukan kluster yang Anda inginkan dan klik namanya. Di panel kiri, pilih Volumes > Persistent Volumes.

  3. Di halaman Persistent Volumes, klik Create.

  4. Di kotak dialog yang muncul, konfigurasikan parameter dan klik Create.

    Parameter

    Deskripsi

    Contoh

    PV Type

    Pilih NAS.

    NAS

    Volume Name

    Nama volume. Nama tersebut harus unik di dalam kluster.

    pv-nas

    Capacity

    Kapasitas PV.

    Penting

    Kapasitas tersedia sebenarnya dari volume NAS tidak dibatasi oleh konfigurasi ini. Kapasitas ditentukan oleh spesifikasi sistem file NAS. Untuk informasi lebih lanjut, lihat NAS tujuan umum dan NAS Ekstrem untuk memastikan kapasitas tersedia tertentu.

    5Gi

    Access Mode

    Anda dapat memilih ReadWriteMany atau ReadWriteOnce.

    ReadWriteMany

    Enable CNFS

    Tentukan apakah akan mengaktifkan Container Network File System (CNFS). Menggunakan CNFS untuk mengelola NAS dapat meningkatkan performa dan kontrol Quality of Service (QoS) dari NAS.

    Topik ini menjelaskan cara langsung menggunakan sistem file NAS yang ada untuk membuat volume tanpa mengaktifkan CNFS. Untuk informasi lebih lanjut tentang cara mengonfigurasi sistem file NAS yang ada dengan CNFS, lihat Gunakan CNFS untuk mengelola sistem file NAS (direkomendasikan).

    Nonaktif

    Mount Target Domain Name

    Anda harus mengonfigurasi parameter ini saat CNFS dinonaktifkan.

    Anda dapat memilih Select Mount Target atau Custom untuk mengonfigurasi sistem file NAS yang ingin Anda pasang. Untuk informasi lebih lanjut tentang cara melihat alamat titik pemasangan, lihat Kelola titik pemasangan.

    0c47****-mpk25.cn-shenzhen.nas.aliyuncs.co

    Advanced Options (Optional)

    Mount Path

    Subdirektori sistem file NAS yang ingin Anda pasang.

    • Jika Anda tidak mengatur parameter ini, direktori root akan dipasang secara default.

    • Jika subdirektori yang ditentukan tidak ada dalam sistem file NAS, sistem secara otomatis membuat subdirektori tersebut lalu memasangnya.

    Catatan

    Direktori root sistem file NAS tujuan umum adalah /, dan direktori root sistem file NAS Ekstrem adalah /share. Saat Anda memasang subdirektori sistem file NAS Ekstrem, path harus dimulai dengan /share, seperti /share/data.

    /data

    Reclaim Policy

    Nilai default adalah Retain. Ini menunjukkan bahwa ketika PVC dihapus, PV terkait dan sistem file NAS tetap ada dan hanya dapat dihapus secara manual.

    Catatan

    Delete harus digunakan dengan archiveOnDelete. Karena PV statis tidak mendukung archiveOnDelete, ketika Anda memilih Delete di sini, PV dan sistem file NAS sebenarnya tidak dihapus ketika PVC dihapus. Jika Anda ingin mengonfigurasi archiveOnDelete, gunakan volume NAS yang diaprovisi secara dinamis.

    Retain

    Mount Options

    Opsi pemasangan untuk sistem file NAS, termasuk versi protokol NFS. Kami sarankan Anda menggunakan NFS v3. Sistem file NAS Ekstrem hanya mendukung NFS v3. Untuk informasi lebih lanjut tentang protokol NFS, lihat Protokol NFS.

    • nolock,tcp,noresvport

    • vers=3

    Label

    Tambahkan label ke PV.

    pv-nas

    Setelah Anda membuat PV, Anda dapat melihatnya di halaman Persistent Volumes.

Langkah 2: Buat klaim volume persisten (PVC)

  1. Di panel navigasi kiri halaman detail, pilih Volumes > Persistent Volume Claims.

  2. Di halaman Persistent Volume Claims, klik Create.

  3. Di kotak dialog yang muncul, konfigurasikan parameter dan klik Create.

    Parameter

    Deskripsi

    Contoh

    Storage Claim Type

    Pilih NAS.

    NAS

    Name

    Nama PVC. Nama tersebut harus unik di dalam kluster.

    pvc-nas

    Allocation Mode

    Pilih Volume yang Ada.

    Catatan

    Jika tidak ada PV yang dibuat, Anda dapat mengatur parameter Allocation Mode menjadi Create Volume dan mengonfigurasi parameter yang diperlukan untuk membuat PV.

    Pilih Volume yang Ada

    Existing Storage Volume

    Klik Select Existing Volume, temukan PV yang ingin Anda gunakan, dan klik Select di kolom Tindakan.

    pv-nas

    Capacity

    Kapasitas PV. Kapasitas yang diklaim tidak boleh melebihi kapasitas total PV.

    Penting

    Kapasitas tersedia sebenarnya dari volume NAS tidak dibatasi oleh konfigurasi ini. Kapasitas ditentukan oleh spesifikasi sistem file NAS. Untuk informasi lebih lanjut, lihat NAS tujuan umum dan NAS Ekstrem untuk memastikan kapasitas tersedia tertentu.

    5

    Access Mode

    Nilai default adalah ReadWriteMany. Anda juga dapat mengatur nilainya menjadi ReadWriteOnce atau ReadOnlyMany.

    ReadWriteMany

Langkah 3: Buat aplikasi dan pasang volume NAS

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

  2. Di halaman Stateless, klik Create From Image.

  3. Konfigurasikan parameter aplikasi. Setelah Anda mengonfigurasi parameter, klik Create.

    Tabel berikut menjelaskan parameter utama. Gunakan pengaturan default untuk parameter lainnya. Untuk informasi lebih lanjut, lihat Buat aplikasi tanpa status menggunakan Deployment.

    Bagian

    Parameter

    Deskripsi

    Contoh

    Basic Information

    Name

    Masukkan nama kustom untuk Deployment. Nama tersebut harus memenuhi persyaratan format yang ditampilkan di konsol.

    nas-test

    Replicas

    Jumlah replika untuk Deployment.

    2

    Container

    Image Name

    Alamat citra yang digunakan untuk menerapkan aplikasi.

    anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6

    Required Resources

    Sumber daya vCPU dan memori yang dibutuhkan.

    0.25 Core, 512 MiB

    Volume

    Klik Add PVC dan konfigurasikan parameter.

    • Mount Source: Pilih PVC yang Anda buat.

    • Container Path: Tentukan path kontainer ke mana Anda ingin memasang sistem file NAS.

    • Sumber Pemasangan: pvc-nas

    • Path Kontainer: /data

  4. Lihat status penyebaran aplikasi.

    1. Di halaman Deployments, klik nama aplikasi.

    2. Di tab Pods, periksa apakah pod berada dalam status Running.

Verifikasi fitur penyimpanan bersama dan penyimpanan persisten NAS

Deployment yang dibuat dalam contoh sebelumnya menyediakan dua pod dan memasang sistem file NAS ke pod tersebut. Anda dapat menggunakan metode berikut untuk memverifikasi ini:

  • Buat file di satu pod dan lihat file tersebut dari pod lain untuk memverifikasi penyimpanan bersama.

  • Buat ulang Deployment. Lalu, periksa apakah data yang disimpan dalam sistem file ada di pod baru untuk memverifikasi penyimpanan persisten.

  1. Lihat informasi pod.

    kubectl get pod | grep nas-test

    Hasil sampel:

    nas-test-*****a   1/1     Running   0          40s
    nas-test-*****b   1/1     Running   0          40s
  2. Verifikasi penyimpanan bersama.

    1. Buat file di pod.

      Dalam contoh ini, pod nas-test-*****a digunakan:

      kubectl exec nas-test-*****a -- touch /data/test.txt
    2. Lihat file dari pod lain.

      Dalam contoh ini, pod nas-test-*****b digunakan:

      kubectl exec nas-test-*****b -- ls /data

      Output yang diharapkan menunjukkan bahwa file baru test.txt dibagikan.

      test.txt
  3. Verifikasi penyimpanan persisten.

    1. Buat ulang Deployment.

      kubectl rollout restart deploy nas-test
    2. Tunggu hingga pod diregenerasi.

      kubectl get pod | grep nas-test

      Hasil sampel:

      nas-test-*****c   1/1     Running   0          67s
      nas-test-*****d   1/1     Running   0          49s
    3. Masuk ke pod yang diregenerasi dan periksa apakah file masih ada dalam sistem file.

      Dalam contoh ini, pod nas-test-*****c digunakan:

      kubectl exec nas-test-*****c -- ls /data

      Output berikut menunjukkan bahwa file masih ada di sistem file NAS dan dapat diakses dari direktori pemasangan di pod yang diregenerasi.

      test.txt

FAQ

Jika Anda mengalami masalah saat memasang dan menggunakan volume NAS, lihat dokumen berikut untuk pemecahan masalah.

Referensi

CNFS memungkinkan Anda mengelola sistem file NAS secara independen dan meningkatkan performa serta kontrol Quality of Service (QoS) dari sistem file NAS. Untuk informasi lebih lanjut, lihat Gunakan CNFS untuk mengelola sistem file NAS (direkomendasikan).