Go implementation of DNS Load Balancing at CERN

CERN is using an increasing number of DNS based load balanced aliases (currently over 600).


CERN is using an increasing number of DNS based load balanced aliases (currently over 600). We will explain the Go based concurrent implementation of the Load Balancing Daemon (LBD), how it is being progressively deployed using Puppet and how concurrency greatly improves scalability, ultimately allowing a single master-slave couple of Openstack VMs to server all LB aliases. The LBD server acts as an arbiter getting feedback on load and health from the backend nodes using SNMP to decide which IP addresses the LB alias will present. This talk will explain the Lbclient that has been extended to use Collectd metrics to determine the status of the node. The Lbclient rewrite reduces the real time needed for the whole procedure thanks to the concurrency features of Golang. This is particular useful when a node belongs to multiple LB aliases.


Stay connected

You can subscribe to our newsletter to stay updated on the latest news and announcements. Follow us on social media to join our community and engage with other attendees, speakers, and staff. We're on Twitter, Mastodon, Youtube and Facebook. Don't forget to use our official hashtag #GoLab2023 to share your experience and connect with other attendees on social media.

Subscribe to our newsletter

We hate spam just as much as you do, which is why we promise to only send you relevant communications. We respect your privacy and will never share your information with third parties.
©2023 GoLab | The international conference on Go in Florence-Design & devCantiere Creativo-Made withDatoCMS