Skip to content

Comenzile kubectl explicate

Comenzile kubectl folosite zi de zi, grupate pe sarcini: citirea clusterului, inspectarea workload-urilor, aplicarea și reversarea modificărilor, expunerea serviciilor, administrarea nodurilor și crearea obiectelor de configurare. Fiecare rând asociază comanda cu un apel realist.

kubectl este punctul tău de control asupra unui cluster Kubernetes. Modelul este declarativ: de obicei aplici un manifest (apply -f) în loc să creezi lucruri imperativ, apoi citești rezultatul (get, describe, logs). Comenzile de mai jos acoperă operarea zilnică; combină-le cu un flag de namespace (-n name) când nu ești în namespace-ul implicit.

Tabel de referință · 59 intrări
59 of 59 rows
Cluster și context
Arată unde rulează planul de control și serviciile de bază.kubectl cluster-info
Listează clusterele și namespace-urile între care poți comuta.kubectl config get-contexts
Comută la un alt context de cluster sau de namespace.kubectl config use-context my-prod
Setează namespace-ul implicit al contextului curent.kubectl config set-context --current --namespace=staging
Redenumește un context salvat în kubeconfig-ul tău.kubectl config rename-context old-name prod
Listează toate tipurile de resurse cunoscute de cluster.kubectl api-resources
Afișează versiunile Kubernetes ale clientului și serverului.kubectl version
Arată câmpurile suportate de o resursă, citite din schema API.kubectl explain pod.spec.containers
Verifică dacă utilizatorul curent poate executa o acțiune dată.kubectl auth can-i delete pods
Inspectarea workload-urilor
Listează podurile și starea lor; adaugă -o wide pentru nod și IP.kubectl get pods -A
Listează resursele uzuale ale unui namespace într-un singur apel.kubectl get all
Adaugă coloanele de nod și IP la orice comandă get.kubectl get pods -o wide
Afișează o resursă ca manifestul YAML complet din spatele ei.kubectl get deploy/web -o yaml
Listează deploymenturile și câte replici sunt gata.kubectl get deployments
Listează stateful seturile și replicile lor gata.kubectl get statefulsets
Listează joburile batch și cron joburile programate.kubectl get jobs,cronjobs
Arată evenimentele, labelurile și starea unui pod.kubectl describe pod web-abc
Arată capacitatea unui nod, condițiile lui și podurile care rulează.kubectl describe node node-1
Afișează stdout-ul unui pod; -f pentru urmărire, --previous pentru ultimul crash.kubectl logs -f web-abc
Rulează o comandă într-un pod pornit.kubectl exec -it web-abc -- sh
CPU și memorie în timp real pentru poduri sau noduri (necesită metrics-server).kubectl top pods
Listează evenimentele recente, precum pull-uri eșuate și backoff-uri.kubectl get events -A --sort-by=.lastTimestamp
Listează regulile ingress și adresele load balancer ale lor.kubectl get ingress
Copiază fișiere între mașina ta și un pod care rulează.kubectl cp web-abc:/var/log/app.log ./app.log
Blochează până când o resursă îndeplinește o condiție.kubectl wait --for=condition=ready pod -l app=web
Pornește un pod de unică folosință dintr-o imagine, fără manifest.kubectl run debug --rm -it --image=busybox -- sh
Aplicare, scalare, lansare
Arată ce ar schimba apply, fără să schimbe nimic.kubectl diff -f deploy.yaml
Creează sau actualizează resurse dintr-un fișier manifest.kubectl apply -f deploy.yaml
Aplică manifestele și șterge obiectele care au ieșit din ele.kubectl apply -f dir/ --prune -l app=web
Deschide o resursă live în editorul tău și aplică la salvare.kubectl edit deploy/web
Schimbă câteva câmpuri pe o resursă live.kubectl patch deploy/web --patch-file fix.json
Îndreaptă containerele unui deployment către o imagine nouă.kubectl set image deploy/web web=nginx:1.27
Înlocuiește un obiect, ștergându-l și recreându-l când e nevoie.kubectl replace --force -f deploy.yaml
Elimină resursele declarate într-un fișier manifest.kubectl delete -f deploy.yaml
Schimbă numărul de replici al unui deployment.kubectl scale deploy/web --replicas=4
Urmărește un rollout până se încheie sau eșuează.kubectl rollout status deploy/web
Listează reviziile prin care a trecut un rollout.kubectl rollout history deploy/web
Repornește fiecare pod al unui deployment, câte unul pe rând.kubectl rollout restart deploy/web
Readuce un deployment la revizia anterioară.kubectl rollout undo deploy/web
Servicii și rețea
Listează serviciile cu tipul și IP-ul de cluster.kubectl get svc
Arată ce IP-uri de pod susțin în prezent fiecare serviciu.kubectl get endpoints web
Creează un serviciu care frontează un set de poduri; --type=NodePort sau LoadBalancer ajunge în afara clusterului.kubectl expose deploy/web --port=80
Arată adresa load balancer din spatele fiecărui ingress (alpha).kubectl ingress status -A
Listează politicile care restrâng traficul podurilor.kubectl get networkpolicies
Tunelă un port local către un pod sau un serviciu.kubectl port-forward svc/web 8080:80
Noduri și mentenanță
Listează nodurile clusterului și starea lor.kubectl get nodes -o wide
Marchează un nod ca neschedulabil (fără poduri noi).kubectl cordon node-1
Marchează din nou un nod ca schedulabil.kubectl uncordon node-1
Evacuează podurile de pe un nod și îl marchează ca neschedulabil.kubectl drain node-1 --ignore-daemonsets
Adaugă sau elimină un taint care respinge podurile de pe un nod.kubectl taint node node-1 key=value:NoSchedule
Șterge imediat un pod blocat, sărind peste închiderea graceful.kubectl delete pod web-abc --grace-period=0 --force
Obiecte și configurare
Creează un namespace nou pentru resurse.kubectl create namespace staging
Listează namespace-urile și starea lor.kubectl get namespaces
Păstrează chei sau fișiere de configurare ca obiect în cluster.kubectl create configmap app --from-file=config.yaml
Listează config map-urile din namespace.kubectl get configmaps
Păstrează o parolă sau un certificat ca secret.kubectl create secret generic db --from-literal=password=s3cret
Listează secretele din namespace.kubectl get secrets
Atașează sau elimină un label pe o resursă.kubectl label pod web-abc tier=backend
Atașează metadate pe care selectorii nu le pot potrivi.kubectl annotate deploy/web release=july