Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/embik/ephemeral-debugger-talk
Ephemeral Containers in Action - Running a Go Debugger in Kubernetes.
https://github.com/embik/ephemeral-debugger-talk
containers debugging delve kubernetes talk
Last synced: 6 days ago
JSON representation
Ephemeral Containers in Action - Running a Go Debugger in Kubernetes.
- Host: GitHub
- URL: https://github.com/embik/ephemeral-debugger-talk
- Owner: embik
- Created: 2022-10-25T10:05:52.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-09-12T11:57:44.000Z (over 1 year ago)
- Last Synced: 2024-10-29T12:06:36.144Z (about 2 months ago)
- Topics: containers, debugging, delve, kubernetes, talk
- Language: Dockerfile
- Homepage: https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-amsterdam-2023/talk/XSGW8F/
- Size: 2.73 MB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Ephemeral Containers in Action - Running a Go Debugger in Kubernetes
This repository serves as companion repository to the talk _Ephemeral Containers in Action - Running a Go Debugger in Kubernetes_.
## Events
This talk has been given or is scheduled for the following events:
- [ContainerDays 2023](https://www.containerdays.io/), September 2023, Hamburg - [Slides](./slides/containerdays_hamburg_2023.pdf)
- [Cloud Native Rejekts EU 2023](https://cfp.cloud-native.rejekts.io/cloud-native-rejekts-eu-amsterdam-2023/talk/XSGW8F/), April 2023, Amsterdam - [Recording](https://www.youtube.com/watch?v=yq0xyw-e_J8), [Slides](./slides/rejekts_amsterdam_2023.pdf)## Talk Description
**Ephemeral containers are an amazing recent feature in Kubernetes with great potential. We will explore that potential by running a live debugger session alongside an application pod and debug it remotely.**
The modern observability stack has transformed the way you troubleshoot issues in a microservice environment. Some situations however ask for investigation of a single application pod that seems to be misbehaving. Ephemeral containers provide a way to attach to a seemingly problematic pod without restarting it. This allows developers to observe an issue in a live or staging environment running on top of Kubernetes.
We will discuss the practicality of launching a Go debugger (Delve) within an ephemeral container to remotely debug an application both on the CLI and in VS Code, highlighting the requirements and possible limitations one might encounter when trying to set up a similar troubleshooting routine. As part of that, we will explore the API for ephemeral containers and the current implementation in kubectl.
While the talk will use Go and Delve as an example, the considerations and steps presented are of universal importance to running a debugger for your language stack of choice.
## Content
- [slides](./slides/): the talk slides in PDF format.
- [sample-app](./sample-app/): very, very simple Go webserver that is debugged during the talk.
- [deploy](./deploy/): deployment manifests for the sample application.
- [images](./images/): Dockerfile for a [Delve](https://github.com/go-delve/delve) container image, used as part of the talk.## Sources
- [go-delve/delve#2295 - optimized code pitfalls](https://github.com/go-delve/delve/issues/2295#issuecomment-758130802)