Skip to content

Kubernetes cheatsheet

Debugging using events


Always check the pods and deployment versions in the namespace to make sure you are not debugging an issue in a version that is not the one you would expect

Events are a great way to understand what is going on under the hood in a Kubernetes cluster. By looking at them you can see if probes are failing, and other important signals from your cluster.

Get events for the whole namespace:

kubectl -n codacy get events --sort-by=.metadata.creationTimestamp

Get error events:

kubectl -n codacy get events --sort-by=.metadata.creationTimestamp --field-selector type=Error

Get warning events:

kubectl -n codacy get events --sort-by=.metadata.creationTimestamp --field-selector type=Warning

Get events from a specific pod:

kubectl -n codacy get events --sort-by=.metadata.creationTimestamp --field-selector<POD-NAME>


Check all the previous releases in your namespace:

helm -n codacy history codacy

Rollback to a specific revision:

helm -n codacy rollback codacy <REVISION>

Edit configmap

kubectl get configmaps


kubectl edit configmap <configmap-name>

Restart deployment of daemonset


kubectl get daemonsets


kubectl rollout restart daemonset/<daemonset-name>


kubectl get deployment


kubectl rollout restart deployment/<deployment-name>


kubectl rollout status deployment/<deployment-name> -w

Read logs

daemonset with multiple containers

kubectl logs daemonset/<daemonset-name> <container-name> -f


kubectl get svc


kubectl logs -l $(kubectl get svc/<service-name> -o=json | jq ".spec.selector" | jq -r 'to_entries|map("\(.key)=\(.value|tostring)")|.[]' | sed -e 'H;${x;s/\n/,/g;s/^,//;p;};d') -f

Open shell inside container

kubectl exec -it daemonset/<daemonset-name> -c <container-name> sh


kubectl exec -it deployment/<deployment-name> sh


Session Manager SSH

When using AWS Session Manager, to connect to the instance where you installed microk8s, since the CLI is very limited you will benefit from using these aliases:

alias kubectl='sudo microk8s.kubectl -n <namespace-name>'
alias helm='sudo helm'


Did this page help you?

Thank you for the feedback!

We're sorry to hear that. Please let us know what we can improve.

If you have a question, please ask our community or contact

Last modified November 9, 2020