When Kubernetes and Go don't work well together, with Emin Laletović
Description
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
Find all the links and info for this episode here: https://kube.fm/kubernetes-go-emin
Interested in sponsoring an episode? Learn more.