Questo documento spiega come ispezionare i workload stateful esistenti in esecuzione in un cluster Kubernetes Google Distributed Cloud (GDC) con air gap. I workload stateful ti consentono di eseguire l'applicazione con uno spazio di archiviazione dei container permanente. Puoi visualizzare i tuoi workload stateful con la console GDC o l'interfaccia a riga di comando kubectl per monitorare l'utilizzo delle risorse e l'integrità del workload.
Questo documento è rivolto agli sviluppatori del gruppo di operatori di applicazioni, che sono responsabili della gestione dei workload delle applicazioni per la loro organizzazione. Per saperne di più, consulta la documentazione relativa ai segmenti di pubblico per 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
Per ottenere le autorizzazioni necessarie per visualizzare e ispezionare i workload stateful, devi disporre di ruoli specifici. I ruoli necessari dipendono dal fatto che tu stia lavorando all'interno di un cluster condiviso con ambito a livello di organizzazione o di un cluster standard con ambito a livello di progetto. Per saperne di più, consulta Configurazioni dei cluster Kubernetes.
Ruoli cluster condivisi
Chiedi all'amministratore del progetto IAM di concederti i seguenti ruoli nello spazio dei nomi del progetto in base all'attività da eseguire:
- Workload Viewer (
workload-viewer): visualizza tutti i workload di cui è stato eseguito il deployment in un cluster condiviso. - Namespace Admin (
namespace-admin): crea, elimina, modifica o visualizza i workload in uno spazio dei nomi di un progetto di cluster condiviso.
Questi ruoli sono associati allo spazio dei nomi del progetto.
Ruoli cluster standard
Per creare, eliminare, modificare o visualizzare i workload in un cluster standard, chiedi all'amministratore IAM del progetto di concederti il ruolo Sviluppatore 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_KUBECONFIGin queste istruzioni.
Visualizza i workload dei container di un progetto
Per visualizzare i workload dei container del tuo progetto, completa i seguenti passaggi:
Console
Nel menu di navigazione, seleziona Kubernetes Engine > Workload.
Puoi visualizzare i dettagli dei tuoi workload containerizzati, ad esempio:
- Nome
- Tipo
- Numero di pod
- Cluster Kubernetes
- Data ultima modifica
I workload dei container sono organizzati in base al cluster Kubernetes a cui appartengono. Seleziona il menu a discesa Cluster per cambiare il contesto del cluster.
kubectl
Esegui questo comando per elencare tutti i pod nel tuo progetto:
kubectl get pods -n PROJECT_NAMESPACEL'output è simile al seguente:
NAME READY STATUS RESTARTS AGE nginx-workload-ah-aa-1228 1/1 Running 0 12h nginx-workload-ah-ab-6784 1/1 Running 0 11h nginx-workload-ah-ac-0045 1/1 Running 0 12h
Ispeziona una risorsa StatefulSet
Per richiedere informazioni più dettagliate sui componenti di una risorsa StatefulSet, esegui i comandi che hanno come target diretto l'entità che vuoi ispezionare.
Recupera le informazioni sull'oggetto StatefulSet
Per ottenere informazioni dettagliate sull'oggetto StatefulSet, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
describe statefulset STATEFULSET_NAME
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster in esecuzioneStatefulSetoggetto.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.STATEFULSET_NAME: il nome dell'oggettoStatefulSet.
Visualizza la configurazione attiva in formato YAML
Per visualizzare la configurazione attiva della risorsa StatefulSet in formato YAML, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
get statefulset STATEFULSET_NAME -o yaml
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster in esecuzioneStatefulSetoggetto.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.STATEFULSET_NAME: il nome dell'oggettoStatefulSet.
Elenca pod
Per elencare gli oggetti Pod creati da StatefulSet, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
get pods -l app=APP_NAME
In questo comando, il flag -l elenca tutti gli oggetti Pod etichettati con APP_NAME.
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster in esecuzioneStatefulSetoggetto.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.APP_NAME: il nome dell'applicazione stateful gestita dall'oggettoStatefulSet.
Ottieni informazioni specifiche sui pod
Per visualizzare le informazioni su un Pod specifico nel cluster, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
describe pod POD_NAME
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster che esegue il pod.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.POD_NAME: il nome del pod gestito dall'oggettoStatefulSet.
Elenca i PVC
Per elencare gli oggetti PersistentVolumeClaim (PVC) nel cluster, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
get pvc
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig del cluster che esegue le PVC.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.
Ottieni informazioni specifiche sulla PVC
Per ottenere informazioni su una specifica PersistentVolumeClaim (PVC) nel cluster, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
describe pvc PVC_NAME
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster che esegue la PVC.NAMESPACE: lo spazio dei nomi. 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 della PVC configurata per l'oggettoStatefulSet.
Ottieni informazioni sul PV
Per ottenere informazioni su un volume permanente (PV) PersistentVolume specifico nel cluster, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
describe pv PV_NAME
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster che esegue il VP.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.PV_NAME: il nome del PV configurato per l'oggettoStatefulSet.