What We’ve Shipped: Simple Load Balancing

In this ‘What We’ve Shipped’, we’re proud to announce that we’ve added load balancers to Bytemark Cloud, enabling you to build scalable websites and applications easily, increase the performance of your existing infrastructure and add redundancy to critical services.

Our new load balancers are configured within the Bytemark Panel, with no code or complicated configuration required. Simply select your target instances, point your web traffic at the load balancer and we handle the rest. They are also available via the Bytemark Cloud API, enabling dynamic on-demand scaling for our advanced users.

Benefits:

  • Instant Scalability: To scale your application, simply add new target instances to your load balancer within Panel.
  • Health Checked: We’ll intelligently distribute traffic between the target instances, automatically health-checking a path of your choice on each instance before routing traffic to it.
  • Simple to Configure: Create, delete and modify load balancers within the Bytemark Panel. No code or configuration files required.

When to use load balancers:

  • High Traffic Spikes: If your website suffers from spikes in traffic, adding a load balancer will enable you to distribute traffic across instances, improving availability and responsiveness. If you can anticipate these spikes, you could add and remove target instances as required – a significant cost saving versus continually running a single large instance.
  • Critical Services: If your infrastructure needs to be fault tolerant, we recommend adding a load balancer. Should one of your instances fail our automated health checking, traffic will be redistributed amongst the other instances.
  • Rolling Updates: Updating a server can be risky and require downtime. By adding a load balancer, the target instance requiring updates will not receive traffic until it is available again. Should an update have unintended effects, it can be removed from load balancing and your website or application will continue to be available.
  • Easier Production Deployment: By modifying the load balancing configuration, you can run several versions of your application or website simultaneously, incrementally swapping them until all target instances are updated.

How to use load balancers:

Before you use our load balancers, you should evaluate your existing application’s configuration or develop with load balancers in mind.

  • Separate Database: If your application or website has a database, we recommend you separate the database from the target instances. This ensures the user accessing your application or website has a consistent experience, irrespective of which target instance they hit, as the target instance accesses and stores information in the same central database.
  • Separate Storage: If your application or website needs to access content (such as images), storing them all in a centralized place is more efficient than storing separate copies on each target instance. For example, if you edit an image all the users will see the same edited image, regardless of which instance they hit.
  • Containerise:  We recommend Docker to make deployment as predictable as possible. Docker enables you to build new instances from a simple configuration file in a predictable way, making it effortless to add an additional target instance when required.
  • WordPress? Magento? Other CMS? Most CMS and open source packages (such as GitLab) have extensive documentation on how to best configure them for scaling via load balancing. We recommend reviewing their documentation and best practice before configuring load balancing in Bytemark Cloud.

To create a new load balancer:

  1. Go to our new ‘Networking’ tab in the Bytemark Panel
  2. Click ‘Add Load Balancer’
  3. Complete the fields, setting a name and selecting which instances or IP addresses should be targetted by the load balancer
  4. To modify a load balancer, click ‘Edit Settings’. More options (including additional ports and advanced configuration) are available over our API – please contact product@bytemark.co.uk for additional details.

Pricing:

Load Balancers start from £10 p/month. We can’t wait to see how you use this feature to build better websites and applications.

Thanks for reading!

As ever, we plan to continue to develop load balancers over time with more features that are useful to you. If you have feedback or feature suggestions we’d love to hear them – please send me an email [peter.white[at]bytemark.co.uk] – I’d love to talk to you.