
Kubernetes Debugging met Ephemeral Containers
Het debuggen van applicaties die draaien op Kubernetes kan heel makkelijk zijn,
mits je in je containers zelf daar de goede tools voor hebt. Nu gaat er
natuurlijk niks boven goede instrumentatie met goede traces, logs, en metrics,
maar helaas zijn die niet altijd beschikbaar. Echte debugging tools in je
container images (denk aan bijvoorbeeld gdb en vrienden) is vaak niet aan te
raden, omdat we vanuit een beveiligings-standpunt dat soort tools niet in onze
images willen hebben zitten.
Het wordt pas echt leuk als je container images zelfs geen shell erin hebben zitten. Denk hierbij aan de groeiende hoeveelheid “Distroless”-images, maar ook aan images met slechts een enkele, statisch-gelinkte, binary, zoals veel Golang applicaties.
In deze video kijkt Wander naar de verschillen tussen oc debug en kubectl debug, hoe je de tweede het gedrag van de eerste kunt laten overnemen, en hoe je
met kubectl debug extra, tijdelijke, containers aan een Pod kunt toevoegen die
je wel je gewenste gereedschap geven.
Wander Boessenkool

