Mengakses penyimpanan persisten

Halaman ini menjelaskan cara membuat dan mengelola penyimpanan persisten untuk beban kerja container di perangkat appliance Google Distributed Cloud (GDC) yang terisolasi. Penyimpanan persisten memberi aplikasi Anda identitas yang konsisten dan nama host yang stabil, terlepas dari tempat beban kerjanya dijadwalkan.

Halaman ini ditujukan untuk developer dalam grup operator aplikasi, yang bertanggung jawab membuat beban kerja aplikasi untuk organisasi mereka.

Sebelum memulai

Untuk menyelesaikan tugas dalam dokumen ini, Anda harus meminta izin yang diperlukan dan menyiapkan lingkungan.

Meminta peran IAM

Untuk membuat, menghapus, mengedit, atau melihat volume persisten di cluster Kubernetes, minta Admin IAM Organisasi Anda untuk memberi Anda peran Admin Namespace (namespace-admin). Peran ini terikat ke namespace project Anda.

Menyiapkan lingkungan Anda

Untuk menjalankan perintah terhadap cluster Kubernetes bare metal yang telah dikonfigurasi sebelumnya, pastikan Anda memiliki resource berikut:

  1. Temukan nama cluster Kubernetes, atau tanyakan kepada Administrator Platform Anda nama cluster tersebut.

  2. Login dan buat file kubeconfig untuk cluster Kubernetes jika Anda belum memilikinya.

  3. Gunakan jalur kubeconfig cluster Kubernetes untuk mengganti CLUSTER_KUBECONFIG dalam petunjuk ini.

Membuat volume persisten

Petunjuk berikut menunjukkan cara membuat volume menggunakan StorageClass standard-rwo GDC. Untuk mengetahui informasi selengkapnya tentang resource StorageClass yang tersedia di GDC, lihat Penyimpanan persisten untuk container.

  1. Buat PersistentVolumeClaim dan konfigurasikan dengan mode akses ReadWriteOnce dan class penyimpanan standard-rwo:

    kubectl --kubeconfig CLUSTER_KUBECONFIG \
        --namespace NAMESPACE apply -f - <<EOF
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: PVC_NAME
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 10Gi
      storageClassName: standard-rwo
    EOF
    

    Ganti kode berikut:

    • CLUSTER_KUBECONFIG: file kubeconfig untuk cluster Kubernetes.

    • NAMESPACE: namespace project tempat PVC akan dibuat.

    • PVC_NAME: nama objek PersistentVolumeClaim.

  2. Objek PersistentVolume (PV) disediakan secara dinamis. Periksa status PV baru di cluster Kubernetes Anda:

    kubectl get pv --kubeconfig CLUSTER_KUBECONFIG
    

    Outputnya mirip dengan hal berikut ini:

    NAME       CAPACITY   ACCESS MODES   STATUS      CLAIM     STORAGECLASS   AGE
    pvc-uuidd  10Gi       RWO            Bound       pvc-name  standard-rwo   60s
    
  3. Konfigurasikan beban kerja container Anda untuk menggunakan PVC. Berikut adalah contoh pod nginx yang menggunakan PVC standard-rwo:

    kubectl --kubeconfig CLUSTER_KUBECONFIG \
        --namespace NAMESPACE apply -f - <<EOF
    apiVersion: apps/v1
    kind: Pod
    metadata:
      name: web-server-deployment
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        volumeMounts:
        - mountPath: /usr/share/nginx/html
          name: data
      volumes:
      - name: data
        persistentVolumeClaim:
          claimName: PVC_NAME
    EOF
    

    Ganti PVC_NAME dengan PVC yang Anda buat.

Memperluas kapasitas volume

Untuk meningkatkan kapasitas objek PersistentVolumeClaim, perbarui kolom spec.resources.storage ke kapasitas baru. Ukuran volume maksimum yang didukung adalah 14,5 Ti.

  1. Perbarui volume ke ukuran yang lebih besar dalam file manifes objek PersistentVolumeClaim:

    kubectl --kubeconfig CLUSTER_KUBECONFIG \
        --namespace NAMESPACE apply -f - <<EOF
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: PVC_NAME
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: VOLUME_STORAGE_SIZE
    EOF
    

    Ganti kode berikut:

    • CLUSTER_KUBECONFIG: file kubeconfig untuk cluster Kubernetes.

    • NAMESPACE: namespace project tempat resource PVC berada.

    • PVC_NAME: nama PVC yang ukuran penyimpanannya akan Anda tingkatkan.

    • VOLUME_SNAPSHOT_SIZE: jumlah ukuran penyimpanan yang akan ditingkatkan, seperti 50Gi.

  2. Periksa status PV yang diperbarui di cluster Anda:

    kubectl get pv --kubeconfig CLUSTER_KUBECONFIG
    

Langkah berikutnya