New k8s cluster with nginx ingress controller displays 1/2 load balancers unhealthy since creation

Posted April 21, 2020 1.1k views
DigitalOcean Managed Kubernetes

Created a k8s cluster yesterday with two nodes, and have been using it without issue. Through the portal, I added the nginx ingreess controller. I logged into the DO portal today, and noticed that one of the two load balancers has been unhealthy since the approximate creation time.

I haven’t been able to figure out how to resolve this issue.

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
2 answers

The documentation found here: actually covers the issue in question, albeit slightly further down the article. The file that’s recommended to be applied has a service.spec.externalTrafficPolicy set to Local. This intentionally marks other nodes as unhealthy to optimize network traffic. This value can be changed to Cluster, but may generate unnecessary network hops.

by Hanif Jetha
In this tutorial, learn how to set up and secure an Nginx Ingress Controller with Cert-Manager on DigitalOcean Kubernetes.

If it’s the Nginx Ingress controller by Nginx (as in you followed these steps: then I had a similar issue. I fixed it by changing the installation type to a DaemonSet.

This can be done by setting controller.kind=daemonset in the Helm chart.