Продължете към съдържанието
Начало » Блог » kubectl cheat sheet

kubectl cheat sheet

kubectl е основният команден инструмент за комуникация с Kubernetes клъстери. Той позволява създаване, преглед, модификация и изтриване на ресурси в клъстера. В тази статия ще разгледаме най-важните kubectl команди, групирани по предназначение, подходящи както за начинаещи, така и за напреднали потребители.


1. Основни команди

Описание Команда
Показване на текущия контекст kubectl config current-context
Показване на всички контексти kubectl config get-contexts
Смяна на контекст kubectl config use-context <име>
Информация за клъстера kubectl cluster-info
Тест на достъп kubectl get nodes

2. Работа с ресурси (Pods, Deployments, Services)

Pods

Описание Команда
Показване на всички pods kubectl get pods
Подробности за pod kubectl describe pod <име>
Създаване от YAML kubectl apply -f pod.yaml
Изтриване на pod kubectl delete pod <име>
Достъп до контейнер kubectl exec -it <pod> -- bash

Deployments

Описание Команда
Създаване на deployment kubectl create deployment myapp --image=nginx
Скалиране kubectl scale deployment myapp --replicas=3
Актуализация на образ kubectl set image deployment/myapp nginx=nginx:1.21
Изтриване kubectl delete deployment myapp

Services

Описание Команда
Създаване на service kubectl expose deployment myapp --port=80 --target-port=8080 --type=NodePort
Списък на services kubectl get svc
Подробности за service kubectl describe svc <име>

3. YAML и манифести

Описание Команда
Създаване от YAML файл kubectl apply -f файл.yaml
Актуализация на ресурс kubectl apply -f файл.yaml
Премахване чрез YAML kubectl delete -f файл.yaml
Гледай живи промени kubectl get pods -w

4. Namespace-и

Описание Команда
Показване на namespace-и kubectl get namespaces
Създаване на нов kubectl create namespace dev
Работа в namespace kubectl get pods -n dev
Задаване по подразбиране kubectl config set-context --current --namespace=dev

5. Debug и логове

Описание Команда
Преглед на логове kubectl logs <pod>
Логове на конкретен контейнер kubectl logs <pod> -c <контейнер>
Влизане в pod kubectl exec -it <pod> -- sh
Копиране от/до pod kubectl cp file.txt <pod>:path/

6. Автоматизация и почистване

Описание Команда
Почистване на ресурси kubectl delete all --all
Вземане на манифест от съществуващ ресурс kubectl get deployment myapp -o yaml > myapp.yaml

Полезни флагове

  • -n <namespace> — за конкретен namespace
  • -o yaml или -o json — изходен формат
  • -w — watch (следене в реално време)

Съвети

  • Използвай kubectl explain <ресурс> за да научиш синтаксиса на YAML.
  • Съчетавай с jq, grep, awk за мощни shell скриптове.
  • Инсталирай Krew за плъгини: bashCopyEditkubectl krew install neat

Заключение

kubectl е мощен инструмент, който комбинира простота и сила. Редовната употреба на cheat sheet като този може да подобри продуктивността и да помогне при отстраняване на проблеми в Kubernetes среда.