kubectl cluster-info în Kubernetes (kubectl)

Afișează adresa API server-ului și a serviciilor principale din cluster.

Sintaxă comandă
kubectl cluster-info [dump] [opțiuni]

Ce face kubectl cluster-info

Comanda kubectl cluster-info afișează adresa la care răspunde planul de control (API server-ul) pentru contextul curent, plus serviciile de sistem marcate cu eticheta kubernetes.io/cluster-service=true, cum ar fi CoreDNS.

Este cel mai rapid test că kubectl poate comunica cu clusterul: dacă primești o eroare de conexiune sau de autentificare, problema este în kubeconfig, în rețea sau în credențiale, nu în aplicațiile tale.

Varianta kubectl cluster-info dump adună o cantitate mare de informații de diagnostic (noduri, evenimente, loguri ale pod-urilor de sistem), utilă atunci când ceri ajutor sau deschizi un tichet de suport.

Opțiuni și argumente

Opțiune / Parametru Descriere
dump Exportă informații detaliate de diagnostic despre cluster (implicit la ieșirea standard).
--output-directory=DIR Împreună cu dump: scrie fișierele într-un director în loc de stdout.
--all-namespaces, -A Împreună cu dump: include toate namespace-urile, nu doar kube-system și cel curent.
--context=NUME Opțiune globală: interoghează alt context decât cel curent.
-v=6 Opțiune globală de verbozitate: afișează cererile HTTP trimise către API server, util la depanarea conexiunii.

Exemple

Exemplul 1: Verificarea conexiunii la cluster

kubectl cluster-info

Ieșire în terminal

Kubernetes control plane is running at https://127.0.0.1:6443
CoreDNS is running at https://127.0.0.1:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

Exemplul 2: Eroare tipică atunci când clusterul nu este accesibil

Mesajul indică faptul că API server-ul nu răspunde la adresa din kubeconfig (cluster oprit, VPN deconectat sau adresă greșită).

kubectl cluster-info --context=productie

Ieșire în terminal

E0612 10:14:03.512331   48211 memcache.go:265] couldn't get current server API group list: Get "https://10.20.0.5:6443/api?timeout=32s": dial tcp 10.20.0.5:6443: i/o timeout

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
Unable to connect to the server: dial tcp 10.20.0.5:6443: i/o timeout

Exemplul 3: Exportul informațiilor de diagnostic într-un director

Rezultatul poate fi arhivat și trimis echipei de suport.

kubectl cluster-info dump --all-namespaces --output-directory=./diagnostic
ls ./diagnostic

Ieșire în terminal

Cluster info dumped to ./diagnostic
default  kube-system  nodes.json  shop

Greșeli frecvente

  • Interpretarea unui timeout ca problemă a aplicației: cluster-info testează doar accesul la API server, nu starea pod-urilor tale.
  • Lăsarea fișierelor generate de cluster-info dump în locuri publice: pot conține variabile de mediu și alte informații sensibile din loguri.

Comenzi înrudite

  • kubectl config: Gestionează fișierul kubeconfig: clustere, utilizatori, contexte și namespace-ul implicit.
  • kubectl api-resources: Listează toate tipurile de resurse disponibile în cluster, cu prescurtări și grupuri API.
  • kubectl events: Listează și urmărește evenimentele din cluster ordonate cronologic, cu filtrare după obiect sau severitate.