Selecting a region for cloud computing
In cloud systems, you can select the region and zone of availability to serve application software.
There are several parameters that you need to consider when selecting a region in cloud systems. For example, communication speed with real users of the application software in the cloud. This crucial parameter is about meeting the speed of clients with application software in the cloud.
It is also necessary to select a low-cost and high-quality region in the cloud for budget reasons. While it seems challenging to find the right balance that will satisfy customer requests with minimal cloud costs, it is possible to find this type of solution.
What is a region in the cloud?
A region is a collection of data centers deployed within a perimeter at a given latency and connected through a dedicated low latency regional network.
Each region is a separate geographic area and is divided into several isolated Availability Zones.
Each region is completely independent. Each available zone is independent but has network connectivity to other available zones in the same region.
Regions are isolated from each other, thereby achieving the highest possible stability in the event of a malfunction.
Data transfer between regions is the speed of data transfer over the Internet.
In the same region, it is possible to combine local networks of virtual machines located in different availability zones. For example, you can configure data and application redundancy to exchange data at high speed and create a fault-tolerant system that is protected from Internet disruptions or equipment breakdowns.
Availability zones are a unique physical location within a region. Each zone consists of one or more data centers equipped with independent power, cooling, and networking systems.
An Availability Zone is an isolated segment of a region that is located in separate racks on separate equipment. As a rule, all network resources within the region are shared.
Regions and zones improve cloud availability and resiliency. The region is a separate infrastructure installation located in a separate data center. Each region has its own computing resources, networks, and API endpoints. Usually, a common authorization client and a web interface are used to manage regions.
The virtualization and storage hosts in the region are combined into zones. Zones can be divided according to different criteria. For example, by capacity.
Most often, the computational resources of a zone and data storage resources are located on separate hosts and do not overlap with the resources of other zones.
For instance, Amazon Web Services (AWS) has regional capabilities in the US, South America, Europe, and Asia Pacific.
Moreover, each region can have from two to five availability zones. These availability zones are geographically separated from each other to ensure reliability and resource allocation.
The regions are connected to each other through high-speed Internet communication channels.
Accordingly, each availability zone can have one or more data centers, which in turn increases resiliency and improves resource allocation.
Microsoft Azure has an availability group at its disposal. Availability groups are a collection of virtual machines that are linked together to run continuously. Further, availability groups are collected into regions. And the regions, in turn, are grouped into six geographic locations: USA, Europe, Asia-Pacific, Japan, Brazil, and Australia.
Azure allows you to choose between locally redundant storage, where data is stored locally in the end user's primary region, or geo-redundant storage.
In geo-redundant storage, data is stored more than 400 km from the main region, but in the same geographic region, which meets the requirements for the resilience of distributed systems.
Google Cloud Platform has a similar approach when compared to other cloud systems. Google Cloud aggregates data centers into regions, and regions, in turn, are made up of zones. Google has data center regions in the Central US, Western Europe, and East Asia and is constantly expanding its resources.
Defining key parameter from customers for cloud system
As described above, each region has Availability Zones, and each Availability Zone has one or more data centers.
In turn, each data center has its own equipment, consisting of hardware, high-speed Internet connections, and uninterruptible power systems.
Some regions may have slightly higher downtime rates than other regions. You also choose the location of resources for your project, taking into account the best location relative to the users of your information system in the cloud.
These are the key features of Availability Zones:
- Parameter number of users compared to how many resources are in the given service area
- Available hardware in a zone, for example, what kinds of IaaS instances are available in that zone
Considering these characteristics, a system administrator can accumulate statistics on the operation of his system in a specific region of the selected cloud system:
- Zone downtime, taking into account the amount and duration of downtime
- Delay of responses to Internet requests from this zone
- Data throughput to selected instances in a given Availability Zone
- Availability of necessary resources, for example, an instance must have access to an SSD or GPU or have a certain amount of RAM.
Each of these parameters is valuable for information systems in the cloud and some of them can be critical for specific projects.
Finding an optimal placement in the region for instances
Before deciding on a cloud provider, you must determine where your target audience is located and what are the requirements for the operation of the cloud system. When choosing the region and zone of availability of a cloud provider, the following questions should be taken into account:
- In which part of the world does your company do business?
- Is it possible to store data for remote offices in one place or should the data be shared by offices located in different regions?
- How often will it be necessary to transfer data from one zone to another?
- How much data to transfer from one zone to the rest?
- How important is retrieval time or computation speed?
Finally, when choosing the zone that suits you best, consider the following criteria:
1. Delay and proximity
As a general rule, when choosing an availability zone or region, select the geo-closest zone to reduce latency and provide bandwidth. Visit a variety of forums to get information from real users and gain the necessary knowledge about these parameters.
2. Resource cost
This is the task of economists. The difference between the two is tenths of a cent, but at hundreds of instances per year, this can be significant to save budget without sacrificing quality. It is necessary to make comparisons not only between regions of the same cloud system but also between different cloud providers
3. Compliance and safety
Each zone is located in a different country, and each country has different laws regarding security and data protection. Some countries may prohibit the transfer of data between regions. This can affect the infrastructure design plan of the project. Failure to comply with these laws can result in significant fines. Always check with the Legal Department when considering this matter.
4. Service level agreements
You will need the correct parameters for the best service. Checking every service level agreement (SLA) for every cloud provider and every region can have a big impact on your project architecture.
You can find Amazon AWS Service Level Agreement and see the services Amazon includes:
- Amazon Elastic Compute Cloud (Amazon EC2)
- Amazon Elastic Block Store (Amazon EBS)
- Amazon Elastic Container Service (Amazon ECS)
- AWS Fargate for Amazon ECS and Amazon EKS
For the Microsoft Azure Service Level Agreement, it is already described separately for a larger number of services (at the time of this writing, there are about 22 separate SLA).
As for Google, they also have their own SLA for each service, so when you design a cloud system, pay attention to possible differences in these documents, then you can choose the right service and properly organize your application in the cloud system.
Luneba has vast experience in choosing regions and availability zones for cloud systems.
We support numerous client projects in the cloud and always rely on the quality and budgetary criteria to select the best cloud environment.
Contact Luneba for cloud development and to design complex tasks in all known public cloud systems. We provide support through our network of qualified engineers, DevOps, and QA who deliver a range of services to support your project and provide you with solutions in cloud systems.
Choosing a region and planning a service area in cloud systems is a monumental task that requires specific knowledge and experience. We always help our customers determine the unique parameters for their unique system needs.