DigitalOcean Release Managed Load Balancers for High Availability
While the major cloud providers are in a rush to add ever more features to their PaaS platforms, DigitalOcean has been quietly growing market share for its IaaS-only public cloud. DigitalOcean has a focused product suite - Linux-based VMs which are all SSD-backed, with virtual networking and cloud storage. The VMs are in high demand. NetCraft ranks DigitalOcean as the 2nd largest hosting provider in the world and Web Technology Surveys as the 4th largest provider for high-traffic websites. DigitalOcean have now released a load-balancer product to complement the existing IaaS package.
Load balancers are a key feature for high-availability and scale. They let the platform distribute traffic among many hosts, and when the load-balancer is aware of the host status, it can direct traffic to healthy nodes and avoid unhealthy nodes. Azure has two load balancers: for Internet-accessible public services, and for internal, private services. AWS has a classic load balancer which distributes traffic based on the address for the request, and an application load balancer which can route traffic based on the content of the request.
A load balancer is not a hard requirement for a highly-available solution. You can configure failover and request routing at the DNS level, running health checks from your DNS provider rather than your host provider. DigitalOcean have provided an alternative approach, with floating IP addresses, since 2015. This feature quickly repoints IP addresses to different servers, and it can be scripted to provide automated failover protection.
InfoQ spoke with Mitch Wainer, a co-founder at DigitalOcean, and asked about the thinking behind building the load balancer.
InfoQ: Why did you introduce the load balancer product at this stage, when you already have a large customer base who are presumably happy with floating IPs and DNS?
Mitch Wainer: Our business customers' needs are becoming more complex, and they're asking for features that will let them handle larger loads, more critical applications and more advanced use cases. Many of our customers have been deploying their own custom load balancer setup using our current features, but the configuration process has been time consuming. Load Balancers solves this issue by providing a seamless solution that's simple to use and easy to deploy and maintain.
InfoQ: The load balancer has a good feature set, with SSL termination and sticky sessions available. Are you planning to integrate load balancers with your own DNS, so you could support failover from one region to another?
Wainer: This is the first iteration of our Load Balancers product. There are several improvements planned, including CLI tool support, integration with Let's Encrypt, and more. Failover across regions is a common request that you'll see us address.
InfoQ: Pricing for the load balancer is fixed at $20 per load balancer, per month. Are there usage limits, or can you configure a single load balancer across hundreds of droplets, serving hundreds of terabytes of data?
Wainer: We'll continue to expand the capabilities of Load Balancers. Right now, it can handle the load of common applications on our infrastructure. We're working closely with large customers who handle extremely high loads so Load Balancers fits their needs as well.
InfoQ: Your product roadmap for 2017 is all about simplifying infrastructure in the cloud. Do you think IaaS is enough, or will you need to look at PaaS or serverless products in the future?
Wainer: We're always looking to simplify the complexities of infrastructure and that means that we'll continue to invest in products that will abstract away the infrastructure so developers can spend more time coding and less time on their ops.