Autoscaling with HAProxy, Consul & Nomad for High Uptime & Low-Cost Infrastructure

Urjit Singh Bhatia
Senior Software Engineer, ClassDojo

Autoscaling is a great tool for any team that is looking for a high uptime system while keeping costs in control. At ClassDojo, we maintain up-to-date server membership in HAProxy using HashiCorp Consul as our service discovery component. Hot reloads in HAProxy allow us to stitch together a seamless mechanism for updating server membership while keeping the connections to clients or other API gateways alive. This talk will walk through setting up HAProxy to dynamically proxy requests for an autoscaling pool of servers managed by HashiCorp Nomad. As a bonus, we will also see a demo for organizing HAProxy configuration files in more manageable chunks with a templating tool.

Slide Deck

Here you can view the slides used in this presentation if you’d like a quick overview of what was shown during the talk.

Urjit Singh Bhatia

Senior Software Engineer, ClassDojo

I am a software engineer with a background in systems & machine learning. Having spent 12+ years writing high-performance backend services, queueing systems and infrastructure, I am employed by ClassDojo Inc, focused on improving education across the world. In my free time, I enjoy powerlifting, hiking, science-fiction, and cooking for friends & family.

Organizations rapidly deploy HAProxy products to deliver websites and applications with the utmost performance, observability and security at any scale and in any environment. Looking for more stories?