“The Dark Side of the Loom” by aldoaldoz is licensed under CC BY-NC-SA 2.0

If you’re reading this, you’re probably already taking manual thread dumps of running Java apps in your Kubernetes cluster (or at least know how). Recently for us though, we needed to debug an issue that was causing our app container to restart randomly. There was nothing obviously wrong with JVM metrics, resource utilization, etc., so for better debugging, we decided a thread dump taken at the exact moment before the container restarts would potentially be useful in identifying the problem (SPOILER: it was). We found that we could retrieve a thread dump with the lightweight and powerful log processor/forwarder Fluent…

“File:VaticanMuseumStaircase.jpg” by Andreas Tille is licensed under CC BY-SA 4.0

This article details the installation of the Kubernetes-managed NGINX Ingress Controller for use with a Network Load Balancer (NLB) in an EKS cluster. After considering the recently announced AWS Load Balancer Controller, we went with the NGINX Controller to take advantage of the scalability of load balancing TCP traffic as well as TLS termination.

This guide is for the Kubernetes-managed NGINX Ingress Controller (kubernetes/ingress-nginx), but the same principles may be applied to the NGINX-managed NGINX Ingress Controller (nginxinc/kubernetes-ingress). View a breakdown of the differences between these two controllers.


Habeeb Mohammed

DevOps Engineer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store