I’m using DigitalOcean’s Kubernetes and installed 1-click apps Nginx ingress controller. I changed the algorithm of the load balancer to Least Connections. It works but every time the auto scale adds or removes nodes, the load balancer will set the algorithm back to Round Robin. How can I change the load balancer’s algorithm permanently?


Submit an answer

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

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.

Hello @trungld ,

I believe you are setting the LoadBalancer(LB) algorithm from the cloud panel.

All LoadBalancers(LB) provisioned by Kubernetes are managed by the Cloud Controller Manager(CCM) running on the master. Any manual modifications to the LB through the cloud panel will be overwritten by the CCM during its reconciliation process to ensure the LB is configured properly with the state defined by the Kubernetes service.

In order to configure your LB you need to use Kubernetes service annotations. For information on how to apply annotations, you can use the command:

kubectl annotate --help

Docs for DO service annotations can be found here:

https://www.digitalocean.com/docs/kubernetes/how-to/configure-load-balancers/

Service annotations can also be found on our public GitHub repository:

https://github.com/digitalocean/digitalocean-cloud-controller-manager/blob/master/docs/controllers/services/annotations.md

To set the LB algorithm can you please try adding the below annotation to your LB.

service.beta.kubernetes.io/do-loadbalancer-algorithm: "least_connections"

Please find the below link for your reference:

https://docs.digitalocean.com/products/kubernetes/how-to/configure-load-balancers/#algorithm-annotation

Hope that this helps!

Best Regards, Chandan Sagar Pradhan

Want to learn more? Join the DigitalOcean Community!

Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in Q&A, subscribe to topics of interest, and get courses and tools that will help you grow as a developer and scale your project or business.