Sehen Sie den Vortrag von Marvin Beckers auf der Cloud Native Rejekts EU 2023
Ephemerale Container sind eine erstaunliche neue Funktion in Kubernetes mit großem Potenzial. Wir werden dieses Potenzial erkunden, indem wir eine Live-Debugger-Sitzung neben einem Anwendungs-Pod laufen lassen und ihn aus der Ferne debuggen.
Der moderne Observability Stack hat die Art und Weise, wie Sie Probleme in einer Microservice-Umgebung beheben, verändert. In manchen Situationen ist es jedoch erforderlich, einen einzelnen Anwendungs-Pod zu untersuchen, der sich scheinbar nicht richtig verhält. Ephemerale Container bieten eine Möglichkeit, sich mit einem scheinbar problematischen Pod zu verbinden, ohne ihn neu zu starten. Dies ermöglicht es Entwicklern, ein Problem in einer Live- oder Staging-Umgebung zu beobachten, die auf Kubernetes läuft.
Wir werden die Praktikabilität des Starts eines Go-Debuggers (Delve) innerhalb eines ephemeren Containers erörtern, um eine Anwendung sowohl über die CLI als auch in VS Code aus der Ferne zu debuggen, und dabei die Anforderungen und möglichen Einschränkungen hervorheben, auf die man stoßen könnte, wenn man versucht, eine ähnliche Routine zur Fehlerbehebung einzurichten. Als Teil davon werden wir die API für ephemere Container und die aktuelle Implementierung in kubectl untersuchen.
Während der Vortrag Go und Delve als Beispiel verwendet, sind die vorgestellten Überlegungen und Schritte von universeller Bedeutung für den Betrieb eines Debuggers für den Sprachstapel Ihrer Wahl.
Sprecher: Marvin Beckers, leitender Software-Ingenieur bei Kubermatic