Impersonate a user and group kubectl
Test RBAC as another identity without their kubeconfig; needs impersonate verb
kubectl auth can-i list secrets -n <ns> --as=<name> --as-group=system:serviceaccounts
more kubectl
all 73 commands →
Sort pods by container restart count
kubectl get pods -A -o jsonpath='{range .items[*]}{.metadata.namespace}{"\t"}{.metadata.name}{"\t"}{.status.containerStatuses[0].restartCount}{"\n"}{end}' | sort -k3 -rn | head
Compare node allocatable vs capacity
kubectl get nodes -o json | jq -r '.items[] | {node:.metadata.name, capCPU:.status.capacity.cpu, allocCPU:.status.allocatable.cpu, capMem:.status.capacity.memory, allocMem:.status.allocatable.memory}'
ConfigMap from env-file with patch op
kubectl create configmap <name> --from-env-file=app.env -n <ns> --dry-run=client -o yaml | kubectl apply -f -; kubectl patch deploy/<name> -n <ns> --type=json -p='[{"op":"add","path":"/spec/template/spec/containers/0/envFrom/-","value":{"configMapRef":{"name":"<name>"}}}]'
List all pods across namespaces
kubectl get pods -A -o wide
Describe a pod
kubectl describe pod <name> -n <ns>