All Products
Search
Document Center

Container Compute Service:Mount volume sementara

Last Updated:Jun 28, 2025

Jika aplikasi Anda memerlukan penyimpanan tambahan tetapi tidak memerlukan persistensi data, Anda dapat memasang volume sementara ke pod aplikasi Anda. Volume sementara dibuat dan dihapus bersamaan dengan pod, sehingga menyederhanakan penyebaran dan pengelolaan aplikasi. Topik ini menjelaskan cara memasang volume sementara ke pod dengan menambahkan parameter ephemeral.volumeClaimTemplate ke konfigurasi pod. Topik ini juga memverifikasi apakah Persistent Volume (PV) dan Persistent Volume Claim (PVC) yang relevan dihapus secara otomatis ketika pod dihapus.

Skenario

Volume sementara cocok untuk skenario berikut:

  • Aplikasi menggunakan volume sementara untuk menyimpan data sementara yang tidak perlu dipertahankan.

  • Aplikasi biasanya menghasilkan sejumlah besar data log. Anda dapat menggunakan volume sementara eksklusif untuk menyimpan data log tersebut.

Prosedur

  1. Hubungkan ke kluster ACS Anda. Untuk informasi lebih lanjut, lihat Dapatkan file kubeconfig dari kluster dan gunakan kubectl untuk terhubung ke kluster dan Gunakan kubectl pada Cloud Shell untuk mengelola kluster ACS.

  2. Buat file bernama ephemeral-example.yaml dan salin blok kode berikut ke dalam file tersebut. Modifikasi parameter dalam template sesuai dengan deskripsi parameter dalam tabel di bawah blok kode.

    Catatan

    Parameter ephemeral.volumeClaimTemplate berlaku untuk Deployment, StatefulSets, dan pod. Dalam contoh ini, Deployment digunakan.

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: ephemeral-example
    spec:
      replicas: 2
      selector:
        matchLabels:
          pod: example-pod
      strategy:
        type: Recreate      
      template:
        metadata:
          labels:
            pod: example-pod
        spec:
          containers:
            - name: nginx
              image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
              resources:
                requests:
                  cpu: 500m
                  memory: 2Gi
                  ephemeral-storage: 2Gi
              volumeMounts:
              - mountPath: "/scratch"
                name: scratch-volume
          volumes:
            - name: scratch-volume
              ephemeral:
                volumeClaimTemplate:
                  metadata:
                    labels:
                      type: scratch-volume
                  spec:
                    accessModes: [ "ReadWriteOncePod" ]
                    storageClassName: alicloud-disk-topology-alltype
                    resources:
                      requests:
                        storage: 40Gi

    Template YAML di atas mendefinisikan Deployment yang menyediakan dua pod. Volume sementara dipasang ke setiap pod. Tabel berikut menjelaskan bidang dalam parameter volumeClaimTemplate.

    Parameter

    Deskripsi

    accessModes

    Mode akses volume. Atur nilainya menjadi ReadWriteOncePod.

    storageClassName

    Nama StorageClass yang ingin Anda gunakan.

    Dalam contoh ini, StorageClass alicloud-disk-topology-alltype digunakan. Ini adalah StorageClass default yang disediakan oleh Alibaba Cloud Container Compute Service (ACS). StorageClass ini menentukan konfigurasi volume disk, yang disediakan untuk memasang Enterprise SSD (ESSD) tingkat performa 1 (PL1).

    Catatan

    Anda akan dikenakan biaya untuk disk yang Anda gunakan berdasarkan sistem bayar sesuai pemakaian. Untuk informasi lebih lanjut, lihat Penagihan perangkat penyimpanan blok dan Harga perangkat penyimpanan blok.

    storage

    Kapasitas volume sementara.

    StorageClass yang digunakan dalam contoh ini dapat digunakan untuk membuat volume disk yang disediakan untuk memasang ESSD PL1. ESSD PL1 mendukung kapasitas mulai dari 20 hingga 65.536 GiB.

  3. Sebarkan file ephemeral-example.yaml untuk membuat Deployment.

    kubectl create -f ephemeral-example.yaml
  4. Periksa status pod yang dibuat oleh Deployment.

    kubectl get pod

    Keluaran berikut menunjukkan bahwa dua pod telah dibuat.

    NAME                                 READY   STATUS    RESTARTS   AGE
    ephemeral-example-64db7b9f5c-hcpz5   1/1     Running   0          108s
    ephemeral-example-64db7b9f5c-qqvl5   1/1     Running   0          108s
  5. Periksa PVC.

    kubectl get pvc

    Keluaran berikut menunjukkan bahwa PVC dan PV dibuat untuk pod.

    Catatan

    Volume disk digunakan dalam contoh ini. Anda dapat memperoleh ID disk dari bidang VOLUME.

    NAME                                                STATUS   VOLUME                   CAPACITY   ACCESS MODES   STORAGECLASS                     AGE
    ephemeral-example-64db7b9f5c-hcpz5-scratch-volume   Bound    d-uf6h6nl0yf2y1331****   40Gi       RWOP           alicloud-disk-topology-alltype   3m28s
    ephemeral-example-64db7b9f5c-qqvl5-scratch-volume   Bound    d-uf6a3lk85znunou6****   40Gi       RWOP           alicloud-disk-topology-alltype   3m28s

Verifikasi hasil

Setelah Anda menyelesaikan langkah-langkah di atas untuk membuat Deployment, volume sementara disediakan untuk setiap pod untuk memasang disk. Volume sementara dihapus secara otomatis ketika pod dihapus. Lakukan langkah-langkah berikut untuk memverifikasi hasil penyebaran:

  1. Kurangi jumlah replika pod untuk Deployment.

    Jalankan perintah berikut untuk mengurangi jumlah replika pod untuk Deployment menjadi satu:

    kubectl scale deploy ephemeral-example --replicas=1
  2. Periksa apakah operasi penskalaan masuk telah selesai.

    kubectl get pod

    Keluaran berikut menunjukkan bahwa jumlah replika pod yang dibuat untuk Deployment adalah satu.

    NAME                                 READY   STATUS    RESTARTS   AGE
    ephemeral-example-64db7b9f5c-qqvl5   1/1     Running   0          11m
  3. Periksa apakah PV dan PVC dihapus.

    1. Periksa PV.

      kubectl get pv

      Keluaran berikut menunjukkan bahwa PV dihapus bersamaan dengan pod.

      NAME                     CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                                                       STORAGECLASS                     REASON   AGE
      d-uf6a3lk85znunou6****   40Gi       RWOP           Delete           Bound    default/ephemeral-example-64db7b9f5c-qqvl5-scratch-volume   alicloud-disk-topology-alltype            20m
    2. Periksa PVC.

      kubectl get pvc

      Keluaran berikut menunjukkan bahwa PVC dihapus bersamaan dengan pod.

      NAME                                                STATUS   VOLUME                   CAPACITY   ACCESS MODES   STORAGECLASS                     AGE
      ephemeral-example-64db7b9f5c-qqvl5-scratch-volume   Bound    d-uf6a3lk85znunou6****   40Gi       RWOP           alicloud-disk-topology-alltype   15m