Ispeziona i carichi di lavoro stateless

Questa pagina spiega come ispezionare i carichi di lavoro stateless esistenti in esecuzione in un cluster Kubernetes dell'appliance Google Distributed Cloud (GDC) air-gap. 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.

Questa pagina è rivolta agli sviluppatori all'interno del gruppo di operatori di applicazioni, che sono responsabili della gestione dei carichi di lavoro delle applicazioni per la propria organizzazione.

Prima di iniziare

Per eseguire comandi sul cluster Kubernetes bare metal preconfigurato, 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 CLUSTER_KUBECONFIG in queste istruzioni.

Per ottenere le autorizzazioni necessarie per visualizzare tutti i workload di cui è stato eseguito il deployment in un progetto, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Visualizzatore workload (workload-viewer) nello spazio dei nomi del progetto.

Per ottenere le autorizzazioni necessarie per ispezionare i carichi di lavoro stateless, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Amministratore spazio dei nomi (namespace-admin) nello spazio dei nomi del progetto.

Visualizzare i carichi di lavoro con container di un progetto

Esegui questo comando per elencare tutti i pod nel tuo progetto:

kubectl get pods -n PROJECT_NAMESPACE

L'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 CLUSTER_KUBECONFIG -n NAMESPACE \
    describe deployment DEPLOYMENT_NAME

Sostituisci quanto segue:

  • CLUSTER_KUBECONFIG: il file kubeconfig per il cluster Kubernetes che esegue il deployment.

  • NAMESPACE: lo spazio dei nomi del progetto.

  • DEPLOYMENT_NAME: il nome dell'oggetto Deployment.

Visualizzare la configurazione live in formato YAML

Per visualizzare il manifest di un oggetto Deployment, esegui:

kubectl --kubeconfig 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 CLUSTER_KUBECONFIG -n NAMESPACE \
    get pods -l KEY=VALUE

In questo comando, il flag -l elenca tutti gli oggetti Pod con l'etichetta della coppia chiave-valore specificata.

Sostituisci quanto segue:

  • CLUSTER_KUBECONFIG: il file kubeconfig per il cluster Kubernetes che esegue il deployment.

  • NAMESPACE: lo spazio dei nomi del progetto.

  • KEY: la chiave per l'etichetta della coppia chiave-valore impostata nel deployment. Ad esempio, se il campo .template.metadata.labels ha l'etichetta app: myapp configurata, la chiave è app.

  • VALUE: il valore della coppia chiave-valore dell'etichetta impostata nel deployment. Ad esempio, se il campo .template.metadata.labels ha l'etichetta app: myapp configurata, 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 CLUSTER_KUBECONFIG -n NAMESPACE \
    describe pod POD_NAME

Sostituisci quanto segue:

  • CLUSTER_KUBECONFIG: il file kubeconfig per il cluster Kubernetes che esegue il deployment.

  • NAMESPACE: lo spazio dei nomi del progetto.

  • POD_NAME: il nome del pod gestito dal deployment.