When Kubernetes and Go don't work well together, with Emin Laletović


Episode Artwork
1.0x
0% played 00:00 00:00
Oct 22 2024 25 mins   17 1 0

Discover how a seemingly simple 502 error in Kubernetes can uncover complex interactions between Go and containerized environments.

Emin Laletović, a solution architect at Hybird Technologies, shares his experience debugging a production issue in which a specific API endpoint failed due to out-of-memory errors.

He walks through the systematic investigation process, from initial log checks to uncovering the root cause in Go's memory management within Kubernetes.

You will learn:

  • How Go's garbage collector interacts with Kubernetes resource limits, potentially leading to unexpected OOMKilled errors.

  • The importance of the GOMEMLIMIT environment variable in Go 1.19+ for managing memory usage in containerized environments.

  • Debugging techniques for memory-related issues in Kubernetes, including GODEBUG for garbage collector tracing.

  • Considerations for optimizing Go applications in Kubernetes, balancing performance and resource utilization.

Sponsor

This episode is sponsored by StormForge – Double your Kubernetes resource utilization and unburden developers from sizing complexity with the first HPA-compatible vertical pod rightsizing solution. Try it for free.

More info