Accedere all'archiviazione permanente

Questa pagina spiega come creare e gestire lo spazio di archiviazione permanente per i carichi di lavoro con container nel tuo universo sovrano air-gapped di Google Distributed Cloud (GDC). Lo spazio di archiviazione permanente fornisce alla tua applicazione identità coerenti e nomi host stabili, indipendentemente da dove vengono pianificati i carichi di lavoro.

Questa pagina è rivolta agli sviluppatori del gruppo di operatori di applicazioni, responsabili della creazione di carichi di lavoro delle applicazioni per la propria organizzazione. Per saperne di più, consulta Pubblici per la documentazione GDC con air gap.

Prima di iniziare

Per completare le attività descritte in questo documento, devi richiedere le autorizzazioni necessarie e preparare l'ambiente.

Richiedi ruoli IAM

Devi disporre di ruoli specifici per ottenere le autorizzazioni necessarie per accedere allo spazio di archiviazione permanente. I ruoli richiesti dipendono dal fatto che tu stia lavorando in un cluster condiviso con ambito organizzativo o in un cluster standard con ambito progetto. Per saperne di più, consulta Configurazione dei cluster Kubernetes.

Ruoli del cluster condiviso

Per creare, eliminare, modificare o visualizzare i volumi permanenti in un cluster condiviso, chiedi all'amministratore IAM del progetto di concederti il ruolo Amministratore dello spazio dei nomi (namespace-admin). Questo ruolo è associato allo spazio dei nomi del progetto.

Ruoli del cluster standard

Per creare, eliminare, modificare o visualizzare i volumi permanenti in un cluster standard, chiedi all'amministratore IAM del progetto di concederti il ruolo Sviluppatore del cluster (cluster-developer). Questo ruolo è associato allo spazio dei nomi del progetto.

Prepara l'ambiente

Per eseguire comandi su un cluster Kubernetes utilizzando l'API, assicurati di disporre delle seguenti risorse:

  • Individua il nome del cluster Kubernetes o chiedi a un membro del gruppo di amministratori della piattaforma qual è il nome del cluster.

  • Accedi e genera il file kubeconfig per il cluster Kubernetes.

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

Crea un volume permanente

Le seguenti istruzioni mostrano come creare un volume utilizzando StorageClass standard-rwo di GDC. Per saperne di più sulle risorse StorageClass disponibili in GDC, consulta Spazio di 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 in cui creare il PVC. Per i cluster condivisi, deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.

    • PVC_NAME: il nome dell'oggetto PersistentVolumeClaim.

  2. Verifica 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 carichi di lavoro con container in modo che utilizzino il PVC. Di seguito è riportato un pod nginx di esempio 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.

Espandi la capacità del volume

Per aumentare la capacità di un oggetto PersistentVolumeClaim, aggiorna il campo spec.resources.storage alla nuova capacità. La dimensione massima supportata per il 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 in cui esiste la risorsa PVC. Per i cluster condivisi, deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.

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

    • VOLUME_SNAPSHOT_SIZE: la quantità di 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