Accedere all'archiviazione permanente

Questa pagina spiega come creare e gestire l'archiviazione permanente per i carichi di lavoro dei container nell'universo sovrano air-gap di Google Distributed Cloud (GDC). L'archiviazione permanente fornisce alla tua applicazione identità coerenti e nomi host stabili, indipendentemente da dove vengono pianificati i suoi carichi di lavoro.

Questa pagina è rivolta agli sviluppatori all'interno del gruppo di operatori di applicazioni, che sono responsabili della creazione dei carichi di lavoro delle applicazioni per la loro organizzazione. Per ulteriori informazioni, consulta Segmenti di pubblico per la documentazione air-gapped di GDC.

Prima di iniziare

Per eseguire comandi su un cluster Kubernetes, assicurati di disporre delle seguenti risorse:

  1. Individua il nome del cluster Kubernetes o chiedi all'amministratore della piattaforma qual è il nome del cluster.

  2. Accedi e genera il file kubeconfig per il cluster Kubernetes se non ne hai uno.

  3. Utilizza il percorso kubeconfig del cluster Kubernetes per sostituire KUBERNETES_CLUSTER_KUBECONFIG in queste istruzioni.

Per ottenere le autorizzazioni necessarie per creare un volume persistente, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Namespace Admin (namespace-admin) nello spazio dei nomi del progetto.

Crea un volume permanente

Le seguenti istruzioni mostrano come creare un volume utilizzando GDC standard-rwo StorageClass. Per ulteriori informazioni sulle risorse StorageClass disponibili in GDC, vedi Archiviazione permanente per i container.

  1. Crea una risorsa PersistentVolumeClaim (PVC) e configurala con una modalità di accesso ReadWriteOnce e una classe di archiviazione standard-rwo:

    kubectl --kubeconfig KUBERNETES_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
    

    Sostituisci quanto segue:

    • KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster.

    • NAMESPACE: lo spazio dei nomi del progetto in cui creare la PVC.

    • PVC_NAME: il nome dell'oggetto PersistentVolumeClaim.

  2. Conferma che l'oggetto PVC sia disponibile:

    kubectl get pvc --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \
        --namespace NAMESPACE
    

    L'output è simile al seguente:

    NAME       CAPACITY   ACCESS MODES   STATUS      CLAIM     STORAGECLASS   AGE
    pvc-uuid   10Gi       RWO            Bound       pvc-name  standard-rwo   60s
    
  3. Configura i tuoi workload container per utilizzare il PVC. Di seguito è riportato un esempio di pod nginx che utilizza un PVC standard-rwo:

    kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \
        --namespace NAMESPACE apply -f - <<EOF
    apiVersion: 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
    

    Sostituisci PVC_NAME con il PVC che hai creato.

Espandere la capacità del volume

Per aumentare la capacità di un oggetto PersistentVolumeClaim, aggiorna il campo spec.resources.storage con la nuova capacità. La dimensione massima supportata del volume è 14,5 Ti.

  1. Aggiorna il volume a una dimensione maggiore nel file manifest dell'oggetto PersistentVolumeClaim:

    kubectl --kubeconfig KUBERNETES_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
    

    Sostituisci quanto segue:

    • KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster.

    • NAMESPACE: lo spazio dei nomi del progetto in cui esiste la risorsa PVC.

    • PVC_NAME: il nome del PVC per cui stai aumentando le dimensioni dello spazio di archiviazione.

    • VOLUME_SNAPSHOT_SIZE: l'importo delle dimensioni dello spazio di archiviazione da aumentare, ad esempio 50Gi.

  2. Controlla lo stato dei PV aggiornati nel cluster:

    kubectl get pv --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG
    

Passaggi successivi