All Products
Search
Document Center

Container Service for Kubernetes:Memasang volume NAS yang disediakan secara statis

Last Updated:Mar 26, 2026

Pasang sistem file Apsara File Storage NAS (NAS) ke kluster Container Service for Kubernetes (ACK) menggunakan plugin FlexVolume. Topik ini mencakup metode berbasis YAML dan berbasis konsol untuk membuat persistent volume (PV), lalu memandu Anda melalui pembuatan persistent volume claim (PVC) dan penyebaran Pod yang menggunakan penyimpanan berbasis NAS.

Prasyarat

Sebelum memulai, pastikan Anda telah:

Cara kerja

Memasang sistem file NAS ke kluster ACK melibatkan tiga langkah:

  1. Buat PV — Sebagai administrator kluster, definisikan PV yang didukung oleh sistem file NAS. PV belum dikaitkan dengan workload apa pun.

  2. Buat PVC — Ajukan klaim terhadap PV tersebut. Kubernetes mengikat PVC ke PV yang sesuai berdasarkan kelas penyimpanan, mode akses, dan kapasitas.

  3. Sebarkan Pod — Rujuk PVC dalam Penyebaran Anda. Sistem file NAS dipasang ke dalam kontainer pada path yang ditentukan.

Setelah FlexVolume diinstal di kluster, operasi pemasangan dan pencopotan pemasangan akan ditangani menggunakan protokol NFS.

Langkah 1: Buat PV

Buat PV menggunakan file YAML atau Konsol ACK.

Opsi 1: File YAML

Simpan kode berikut sebagai nas-pv.yaml, lalu jalankan kubectl apply -f nas-pv.yaml.

Ganti <mount-target-domain> dengan nama domain titik pemasangan NAS Anda, dan <subdirectory> dengan path dalam sistem file NAS yang akan dipasang (misalnya, /k8s).

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-nas
spec:
  capacity:
    storage: 5Gi
  storageClassName: nas
  accessModes:
    - ReadWriteMany
  flexVolume:
    driver: "alicloud/nas"
    options:
      server: "<mount-target-domain>"
      path: "<subdirectory>"
      vers: "3"
      options: "nolock,tcp,noresvport"

Verifikasi bahwa PV telah dibuat dan berada dalam status Available:

kubectl get pv pv-nas

Output yang diharapkan:

NAME     CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS      CLAIM   STORAGECLASS   AGE
pv-nas   5Gi        RWX            Retain           Available           nas            5s

Opsi 2: Konsol ACK

  1. Masuk ke Konsol ACK.

  2. Pada panel navigasi sebelah kiri, klik Clusters.

  3. Pada halaman Clusters, klik nama kluster target atau klik Details di kolom Actions.

  4. Pada panel navigasi sebelah kiri, pilih Volumes > Persistent Volumes.

  5. Klik Create di pojok kanan atas.

  6. Pada dialog Create PV, konfigurasikan parameter yang dijelaskan dalam tabel berikut.

ParameterDeskripsiWajibBawaan
PV typePilih NAS.Ya
Volume nameNama unik untuk PV dalam kluster. Contoh: pv-nas.Ya
Volume plug-inPilih Flexvolume.Ya
CapacityKapasitas PV. Tidak boleh melebihi kapasitas sistem file NAS.Ya
Access modeMode akses. Sistem file NAS mendukung ReadWriteMany, yang memungkinkan beberapa node membaca dan menulis secara bersamaan.YaReadWriteMany
Mount target domain nameNama domain titik pemasangan NAS. Lihat Manage mount targets.Ya
SubdirectorySubdirektori dalam sistem file NAS, dimulai dengan /. Jika subdirektori tidak ada, akan dibuat secara otomatis. Biarkan kosong untuk memasang direktori root. Untuk sistem file NAS Ekstrem, path harus dimulai dengan /share.TidakRoot directory
PermissionsIzin akses pada direktori yang dipasang, seperti 755, 644, atau 777. Hanya berlaku saat memasang subdirektori. Jika direktori berisi banyak file, hindari mengatur parameter ini agar perintah chmod tidak berjalan terlalu lama.TidakOriginal permissions
chmod (Change Mode)Cara perubahan izin diterapkan: Non-recursive (hanya memengaruhi direktori yang dipasang) atau Recursive (memengaruhi direktori yang dipasang beserta semua subdirektori dan file). Untuk versi FlexVolume sebelum V1.14.6.15-8d3b7e7-aliyun, izin selalu diterapkan secara rekursif. Untuk V1.14.6.15-8d3b7e7-aliyun dan versi setelahnya, gunakan parameter ini untuk mengontrol cakupannya.Tidak
VersionVersi protokol NFS. NFSv3 direkomendasikan. Sistem file NAS Ekstrem hanya mendukung NFSv3.TidakNFSv3
LabelsLabel yang akan ditambahkan ke PV.Tidak
  1. Klik Create.

Peringatan

Jika Anda memilih Recursive untuk direktori yang dipasang dengan jumlah file yang sangat banyak, perintah chmod mungkin berjalan dalam waktu lama, sehingga menyebabkan operasi pemasangan atau pencopotan pemasangan gagal.

Langkah 2: Buat PVC

Simpan kode berikut sebagai nas-pvc.yaml, lalu jalankan kubectl apply -f nas-pvc.yaml.

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: pvc-nas
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: nas
  resources:
    requests:
      storage: 5Gi

Kubernetes mengikat PVC ke PV pv-nas berdasarkan kesesuaian kelas penyimpanan, mode akses, dan kapasitas. Verifikasi pengikatan tersebut:

kubectl get pvc pvc-nas

Output yang diharapkan:

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

Status STATUS bernilai Bound mengonfirmasi bahwa PVC telah terhubung ke PV.

Langkah 3: Sebarkan Pod

Simpan kode berikut sebagai nas-pod.yaml, lalu jalankan kubectl apply -f nas-pod.yaml.

Sistem file NAS dipasang di /data di dalam kontainer.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nas-static
  labels:
    app: nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        ports:
        - containerPort: 80
        volumeMounts:
          - name: pvc-nas
            mountPath: /data
      volumes:
        - name: pvc-nas
          persistentVolumeClaim:
            claimName: pvc-nas

Verifikasi bahwa Pod sedang berjalan dan volumenya telah dipasang:

kubectl get pods -l app=nginx

Output yang diharapkan:

NAME                          READY   STATUS    RESTARTS   AGE
nas-static-xxxxxxxxx-xxxxx    1/1     Running   0          30s

Untuk memastikan sistem file NAS telah dipasang di dalam kontainer, jalankan:

kubectl exec -it <pod-name> -- df -h | grep /data

Output menunjukkan sistem file NAS yang dipasang di /data.