kubectl je vaše okno do Kubernetes clusteru. Základní příkazy zná každý, ale jsou triky, které dramaticky zvýší produktivitu. Sdílíme naše oblíbené.
Aliasy — protože kubectl get pods je moc dlouhé¶
alias k=kubectl
alias kgp='kubectl get pods'
alias kgs='kubectl get services'
alias kgd='kubectl get deployments'
alias kl='kubectl logs'
alias ke='kubectl exec -it'
alias kd='kubectl describe'
alias kaf='kubectl apply -f'
Kontexty a namespace¶
kubectx a kubens jsou must-have nástroje. Rychlé přepínání mezi clustery a namespace. Předejdete nechtěnému deployi do produkce, když jste mysleli staging.
JSONPath a custom columns¶
# Jen jména podů a jejich nody
kubectl get pods -o custom-columns=NAME:.metadata.name,NODE:.spec.nodeName
# Pody s restarty > 0
kubectl get pods -o json | jq '.items[] | select(.status.containerStatuses[].restartCount > 0) | .metadata.name'
Debug příkazy¶
kubectl top pods— resource usagekubectl get events --sort-by=.lastTimestamp— co se dějekubectl port-forward svc/myservice 8080:80— přímý přístupkubectl run debug --image=busybox -it --rm -- sh— debug podkubectl auth can-i create deployments— RBAC check
kubectl pluginy (krew)¶
krew je package manager pro kubectl pluginy. Doporučujeme: kubectl-tree (resource hierarchy), kubectl-neat (clean YAML output), kubectl-sniff (packet capture z podu).
Investice do kubectl productivity se vrátí¶
10 minut nastavení aliasů a pluginů vám ušetří hodiny týdně. kubectl je mocný — naučte se ho používat naplno.