Questo documento spiega come ispezionare i carichi di lavoro stateless esistenti in esecuzione in un cluster Kubernetes air-gap Google Distributed Cloud (GDC). I carichi di lavoro stateless ti consentono di eseguire il deployment dell'applicazione senza dover archiviare dati o stato dell'applicazione. Puoi visualizzare i workload stateless con la console GDC o kubectl CLI per monitorare l'utilizzo delle risorse e l'integrità del workload.
Questo documento è rivolto agli sviluppatori del gruppo di operatori di applicazioni, responsabili della gestione dei carichi di lavoro delle applicazioni per la propria organizzazione. Per saperne di più, consulta la documentazione relativa ai segmenti di pubblico per GDC air-gapped.
Prima di iniziare
Per completare le attività descritte in questo documento, devi disporre delle seguenti risorse e dei seguenti ruoli:
Per eseguire comandi su un cluster Kubernetes, 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 se non ne hai uno.
Utilizza il percorso kubeconfig del cluster Kubernetes per sostituire
KUBERNETES_CLUSTER_KUBECONFIGin queste istruzioni.
Per ottenere le autorizzazioni necessarie per visualizzare tutti i carichi di lavoro di cui è stato eseguito il deployment in un cluster condiviso, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Visualizzatore carichi di lavoro (
workload-viewer) nello spazio dei nomi del progetto.Per ottenere le autorizzazioni necessarie per esaminare i carichi di lavoro stateless in un cluster condiviso, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Namespace Admin (
namespace-admin) nello spazio dei nomi del progetto.Per ottenere le autorizzazioni necessarie per visualizzare e ispezionare i carichi di lavoro stateless in un cluster standard, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Sviluppatore cluster (
cluster-developer) in un cluster standard.
Visualizzare i carichi di lavoro con container di un progetto
Per visualizzare i workload dei container del tuo progetto:
Console
Nel menu di navigazione, seleziona Kubernetes Engine > Workload.
Puoi visualizzare i dettagli dei carichi di lavoro con container, ad esempio:
- Nome
- Tipo
- Numero di pod
- Cluster Kubernetes
- Data ultima modifica
I carichi di lavoro dei container sono organizzati in base al cluster Kubernetes a cui appartengono. Seleziona il menu a discesa Cluster per cambiare il contesto del cluster.
Interfaccia a riga di comando
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 il deployment
Per richiedere informazioni più dettagliate sui componenti di una risorsa Deployment, esegui comandi che hanno come target diretto l'entità che vuoi esaminare.
Recupera le informazioni sull'oggetto Deployment
Per ottenere informazioni dettagliate sull'oggetto Deployment, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
describe deployment DEPLOYMENT_NAME
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster che esegue il deployment.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, questo deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.DEPLOYMENT_NAME: il nome dell'oggettoDeployment.
Visualizza la configurazione live in formato YAML
Per visualizzare il manifest di un oggetto Deployment, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
get deployments DEPLOYMENT_NAME -o yaml
Questo comando mostra la configurazione attiva dell'oggetto Deployment in formato YAML.
Elenca pod
Per elencare gli oggetti Pod creati dal deployment, esegui:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
get pods -l KEY=VALUE
In questo comando, il flag -l elenca tutti gli oggetti Pod con l'etichetta di coppia chiave-valore specificata nel cluster specificato.
Sostituisci quanto segue:
KUBERNETES_CLUSTER_KUBECONFIG: il file kubeconfig per il cluster che esegue il deployment.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, questo deve essere uno spazio dei nomi del progetto. Per i cluster standard, può essere qualsiasi spazio dei nomi.KEY: la chiave per l'insieme di etichette della coppia chiave-valore impostata nel deployment. Ad esempio, se il campo.template.metadata.labelsha l'etichettaapp: myappconfigurata, la chiave èapp.VALUE: il valore della coppia chiave-valore dell'etichetta impostata nel deployment. Ad esempio, se il campo.template.metadata.labelsha l'etichettaapp: myappconfigurata, il valore èmy-app.
Ad esempio, se hai etichettato l'oggetto Deployment come app: my-app, esegui il seguente comando per visualizzare gli oggetti Pod con questa etichetta:
kubectl --kubeconfig /tmp/kubeconfig.yaml -n my-namespace \
get pods -l app=my-app
Ottenere informazioni specifiche sul pod
Per ottenere informazioni su un oggetto Pod specifico, 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 deployment.NAMESPACE: lo spazio dei nomi. Per i cluster condivisi, questo 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 dal deployment.
Passaggi successivi
- Aggiornare i carichi di lavoro stateless
- Scalare i carichi di lavoro stateless
- Gestisci i pool di nodi