Bring Resilience to Your Business Applications with a Cross-Zone Deployment
By Anthony Merrington, Technical Support Engineer at Alibaba Cloud
If you’ve used any major cloud provider, you’ll have come across the concept of availability zones. To recap, a zone is a set of independent cloud infrastructure — everything a data center needs to function, from the network to the power supply and air-conditioning. Each zone belongs to a specific cloud region, and each region can contain multiple zones. (As an example, the Singapore region of Alibaba Cloud contains three availability zones.)
So far so good, but what if for any reason there is a power cut or major fault in a zone? Customers that happen to be using applications deployed in that zone could be affected, bringing potential losses for businesses in addition to damage to hard-won company reputations due to a poor user experience. For this reason, businesses require an architecture that greatly increases the resilience of their applications without causing a major hike in cost.
The solution? Step forward cross-zone deployments. Since infrastructure faults in one zone do not affect other zones, you can run your application over a cross-zone deployment to achieve failover capabilities within a cloud region. That way, if failures occur in one zone, your application can continue to run as normal by using the infrastructure deployed in the other zones.
Let’s take a closer look at some use cases and possible architectures that ensure your all-important applications stay up and running when disaster strikes.
A cross-zone deployment is particularly helpful for the following use cases:
- Enabling high availability for a stateless application.
- Implementing zonal redundancy without significant cost increase.
- Enabling high availability for an entire application, rather than at the database system or storage system level only.
When architecting for resilience, each service that forms part of a solution should be considered in order to achieve high levels of reliability. A typical Alibaba Cloud architecture for a cross-zone deployment of an application is shown below.
- A Server Load Balancer (SLB) instance is deployed across two zones. If Zone 1 becomes unavailable, SLB rapidly switches traffic to Zone 2 to restore application capabilities within 30 seconds. When Zone 1 becomes available, SLB automatically switches traffic back to Zone 1.
- The application runs on several ECS instances, deployed behind the SLB instance.
- The backend database is hosted on an ApsaraDB RDS for MySQL instance in a multi-zone deployment.
Multi-zone deployment provides the following benefits to your business:
- Provides high availability based on zonal redundancy with only minor cost increase.
- Makes your application more resilient against single-zone failures.
Learn step-by-step how to deploy the highly available architecture above by accessing the best practice Setting up Zonal Redundancy on Alibaba Cloud. In this tutorial, you are shown how to set up a Magento website, connect it to a multi-zone RDS database, enable load balancing for it across the zones, and test the redundancy by simulating a failure.
For more information about setting up a high availability solution by using a cross-zone deployment, I recommend the following FREE resources:
- Related Alibaba Cloud Academy course: How to Configure SLB to Realize Web Service HA — Live Demo.
- To learn about SLB’s high availability capabilities: High availability of SLB topic in SLB documentation.
- To view a full list of regions and zones: Regions and zones general reference.