My top 8 commands and tools for debugging applications running on @kubernetesio 🧵👇
A good first step is viewing the app's pods and associated logs (potentially targeting a specific container) looking for obvious crashes

$ kubectl get pods -n my-namespace

$ kubectl logs my-pod -c my-container

More info -> kubernetes.io/docs/reference…
If a container gets stuck in a crash-loop-backoff, use the `logs --previous` flag

$ kubectl logs my-pod -c my-container --previous
`kubectl port-forwarding` can be useful, whether it's to check if an app is responding or to expose a remote dashboard locally (I frequently use port-forwards to look at the Argo CD dashboard!)

$ kubectl port-forward my-pod 8080:8080

More info -> kubernetes.io/docs/tasks/acc…
When I need more flexibility to poke around the cluster network, I use the @CloudNativeFdn Telepresence tool to "put my laptop in the cluster"

$ telepresence connect
$ curl my-service.my-namespace:port/path

More info -> getambassador.io/docs/teleprese…

(I'm a committer on this project)
If you want to spin up a service locally and run and debug it like it was in the cluster, Telepresence helps here too (and can route remote traffic, volumes, and envs locally)

$ telepresence intercept my-service --port XX --mount=/tmp/

More info -> getambassador.io/docs/teleprese…
If all else fails, and you're not using distroless containers then `kubectl exec` can be useful to poke around in the container in the cluster (but remember, this is like SSHing into prod!)

$ kubectl exec my-pod -c my-container -- /bin/sh

More info -> kubernetes.io/docs/tasks/deb…
I'm increasingly interested in using ephemeral containers (in beta) to debug apps, especially when running distroless containers

$ kubectl debug -it ephemeral-demo --image=busybox --target=ephemeral-demo

More info -> kubernetes.io/docs/tasks/deb…
And that's it for this thread! What are some of your favourite Kubernetes debugging tips and tools? 🛠️

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Daniel Bryant

Daniel Bryant Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

:(