What is AWS Global Infrastructure and why it’s important to understand when building on AWS? In this 2 part video series, I’ll explain the components of AWS Global Infrastructure like Availability Zones, Regions and Partition. Then in Part 2, I’ll discuss 5 things to consider when deciding on which components is right for you.
AWS Global Infrastructure - Part 1
AWS Global Infrastructure - Part 2
Data Centers
Data Centers are large buildings that contain lots of computer equipment. It needs things like electric power, cooling systems, and high speed internet connection to operate. They also need to be physically secured and make sure only authorized people are allowed in. You can see how building such a data center would take a long time and be very expensive. This is why you may choose to use AWS rather than build your own data center.
Availability Zones
Over the years, AWS built many data centers around the world but they are not randomly located. Instead, each data center is purposely located within a cluster called Availability Zones. So one Availability Zone consists of one or more data centers. Each AZ is designed to be self-sufficient with its own power supply and redundant internet connections.
Regions and Partitions
Similar to data centers, the Availability Zones are not randomly located around the world. Instead, each Availability Zone is located within a cluster called a Region. So, one region contains typically 3 or more Availability Zones. So the idea here is that each AZ is far enough apart that in the event of a natural disaster like earthquake, it won’t wipe out all of the AZs within a Region. However, the AZ’s are close enough so any computer to computer communication across AZ is really fast, typically within a single-digit millisecond. This lag between computers is known as Latency. These regions are built to be isolated from each other such that even if an entire region goes down, all other regions will still operate normally. Finally, the Regions are grouped into a cluster known as Partition that provide different levels of service. Examples of partition include commercial, GovCloud and China. So AWS data centers are grouped into Availability Zones and Availability Zones are grouped into a Region and Regions are grouped into Partitions.
Edge Locations
AWS computers are sometimes placed in data centers that are not wholly owned and operated by AWS. For example, some AWS computers are housed inside a telecommunications data center like Verizon. This is called Wavelength Zones. You may want to use this for mobile games that need fast connection via a 5G network. Another example is Local Zone where AWS computers are placed inside a data center near a populated place like a large city. AWS also places computers in data centers known as Point of Presence or PoP. These computers store things like images and videos that are viewed frequently. For example, let’s say you created a cat video that’s gone viral around the world. If you store this video in one data center, it may be quick to download for people nearby but would be slow for the rest of the world. If instead, you use PoP around the world, your video will be available for quick download closer to your audience. This concept of distributing copies of your content is also known as Content Distribution Network or CDN. Lastly, you can have AWS computers inside your own data center or even out in the field. These are known as AWS Outpost and AWS Snow.
Global Network
Another important component of AWS Global Infrastructure is its network. AWS has built high speed connections between regions and availability zones that allows low latency and private communications. AWS also has locations where you can establish high speed connections between your data center and AWS known as Direct Connect.
Services
So, all of these components make up the AWS Global Infrastructure. On top of this physical infrastructure, AWS provides software like databases and GenAI. This combination of physical infrastructure and software as a service has many names like Cloud Computing, Cloud Service Provider (CSP), Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Hyperscaler. The good news is that AWS is open to the public and you can access it through the internet.
5 Things to Consider
Now that we understand what are the components of AWS Global Infrastructure, there are 5 things to consider when deciding on which components are right for you. They are
- Compliance
- Latency
- High availability
- Service availability
- Cost
Compliance
The first thing to consider is your compliance requirements. Depending on the country and industry, your application needs to comply with certain laws and regulations. Based on this, you can select which AWS partition is right for you. Note that just because you build on these partitions does not mean your application is automatically compliant. You still have to do your part to be fully compliant. This is called the Shared Responsibility model.
Latency
Once you select a partition, the next step is to select a region. Some partitions like GovCloud only has few regions, but the Commercial partition has many regions around the world. So how do you choose which region to use? This is where you should consider latency. In other words, you want to select a region that is closest to your users to provide the best experience. If you are considering using Local Zones or Wavelength zones to further reduce the latency, just keep in mind that these are not available in every region. Another important consideration when selecting a region is your compliance requirements such as data residency requirements.
High Availability
Next consideration is High Availability. In other words, what happens if something fails in AWS? In the words of Werner Vogels, the CTO of AWS, “Everything fails, all the time”. One of the key concepts when building on AWS is to distribute parts of your application across multiple Availability Zones or even copies across multiple Regions. So, if one AZ goes down or a Region has a problem, your application can still function.
Keep in mind that certain regions have a special purpose when it comes to global services like Identity and Access Management (IAM). For example, in the commercial partition, the US-EAST-1 region is responsible for administrative functions like creating a user or editing permissions. This means that if the US-EAST-1 region goes down, your application in other regions will continue to function in terms of IAM but you won’t be able to create new users or edit permissions in the IAM service. This concept is called control plane versus data plane and should be considered when designing a high availability architecture.
When deciding on High Availability, a good place to start is to understand your RTO and RPO requirements as well as your business continuity and disaster recovery plan. This can help you decide if your application should operate in a single availability zone, multiple availability zones or even multiple regions.
Service Availability
AWS has over 200 services such as compute, storage and database. However, not all services are available uniformly. For example, a GovCloud region does not have all the services that are available in the commercial regions. Even within a partition, not all regions have parity. For example, a commercial region of US-EAST-1 usually has all of the services including the latest releases while other regions lag. Even within a region, Wavelength zones, Local zones and Outpost don’t have all the services that are in the availability zones. Depending on your use case, you may also need to consider the scarcity of services. For example, let’s say you need the latest GPU based computers for your AI application. Even though that specific instance type is available in your region, you may not be able to get one due to the scarcity across different regions.
Cost
The last but not least consideration when building on AWS Global Infrastructure is cost. Simply, AWS cost is not the same across partitions and regions. For the same service, some regions cost more than others. Another factor is the data transfer cost. Examples include data going out to the Internet, across regions or even across availability zones. The data transfer rate depends on the region and service. So if you decide on multi-AZ or multi-region to achieve high availability, then consider the cost implications of not only the services but also the data transfer.
Helpful References
- AWS Regions and Availability Zones – List of all Regions and AZ
- AWS Partitions
- AWS Services by Region – list of all services available in each region
- AWS Local Zones locations – list of local zones and parent Regions
- Zonal, Regional and Global Services – Service types in AWS
- Control planes and data planes – AWS service architecture
- AWS Compliance Programs – List of all compliances by global and country
- AWS Services in Scope by Compliance Program – List of compliance programs and what services are compliant
- AWS Shared Responsibility Model – Explains what AWS and customers are responsible for
- AWS Pricing Calculator
- Amazon CloudFront – AWS Content Distribution Network service
- Data Transfer cost for common architecture – AWS Architecture Blog explaining where data transfer cost comes from