(Update) If you are deploying services on AWS, you’ll want to have a clear understanding of each of these components, how they are linked, and how you can use them within your solution to YOUR maximum benefit. We take a closer look at them in this post AWS Global Infrastructure: Availability Zones, Regions, Edge Locations, Regional Edge Caches
When it comes to Amazon Web Services, there are two concepts that are extremely important and spanning across all the services, and that you simply can’t help but be aware of: Regions and Availability Zones. Both of them associate with most of the AWS stuff, and mastering them is crucial to get the best out of them. Nevertheless, many users underrate their importance or even completely ignore the concepts at the base of it. In this post, I’ll try to give you the simplest explanation ever of what are Regions and Availability Zones, and everything you should know to use them at your advantage.
First things first: Regions
Amazon EC2 is hosted in multiple locations all over the world.
It’s quite straightforward that resources geographically close to the client are served faster, so you can immediately get the rationale of creating so many regions all over the world: getting resources closer to who asks them. Right now, AWS has about 10 regions available, three of them in the US and the others spread over Europe, Asia, Pacific, and South America, but stay assured that more of them will be opened in the future.
For many of the AWS services, you will be asked in which region you want to deploy your resources. For example, if you launch an EC2 instance, you will be asked in which region to host it. Each region is totally isolated from the others, and they can talk only via the Internet. Actually, Regions are so isolated that when you view your resources, you’ll only see the resources tied to the region you’ve specified: AWS doesn’t replicate resources across regions automatically.
Splitting Regions in parts: Availability Zones
An Availability Zone is an isolated location inside a region. Each region is made up of several Availability Zones. Each Availability Zones belong to a single region. Also, each AZ (as AWS expert commonly call Availability Zones) is isolated, but the AZs in a region are connected through low-latency links. This picture from the AWS documentation probably explains the whole concept better than a thousand words:
So, we have 3 different scopes here: the whole AWS, Regions, and AZ. According to the AWS service, and specifically for EC2, each resource can belong to one of them. For example, IAM is global, AMIs are regional, instances belong to AZs, and so on.
Taking advantage of the Availability Zones
There are several reasons why a good strategy with regard to AZs might come in handy in several different situations. Just to cite some of the most common use cases, if you distribute your instances across multiple Availability Zones and one instance fails, you can design your application so that an instance in another Availability Zone can handle requests. A sort of emergency load balancer without using an actual load balancer.
Also, you can mix it with Elastic IP addresses to mask the failure of an instance in one Availability Zone: enough you remap the address to an instance in another Availability Zone. Not the best strategy in the long term, but enough quick-and-dirty to make your day in certain situations. Beware though: Amazon maps AZs independently for each account, so your us-east-1a might not be the same location as someone else’s us-east-1a, and you will never know what the actual mapping is.
One last bit of complexity: endpoints
There is one more concept around, and one that I have seen a lot of people getting lost about: endpoints. Long story short: there are several ways to access a service, a region and/or availability zones, and they are called endpoints. In other words, they are URLs acting as an entry point for a web service. Again, they aim to reduce even further the latency of your applications. Not all the AWS services support endpoints though. As I told you already, IAM is a typical example of a global service, and it’s the only endpoint is https://iam.amazonaws.com.
On the other end, stuff like DynamoDB might be accessed through URLs like https://dynamodb.eu-west-1.amazonaws.com. Not a totally new concept, then, neither yet another partition of the AWS resources: endpoints are just the door entrance to global, regional and AZ-related resources in the AWS world. Just as simple as that.
How to Unlock Complimentary Access to Cloud Academy
Are you looking to get trained or certified on AWS, Azure, Google Cloud Platform, DevOps, Cloud Security, Python, Java, or another technical skill? Then you'll want to mark your calendars for August 23, 2019. Starting Friday at 12:00 a.m. PDT (3:00 a.m. EDT), Cloud Academy is offering c...
What Exactly Is a Cloud Architect and How Do You Become One?
One of the buzzwords surrounding the cloud that I'm sure you've heard is "Cloud Architect." In this article, I will outline my understanding of what a cloud architect does and I'll analyze the skills and certifications necessary to become one. I will also list some of the types of jobs ...
Boto: Using Python to Automate AWS Services
Boto allows you to write scripts to automate things like starting AWS EC2 instances Boto is a Python package that provides programmatic connectivity to Amazon Web Services (AWS). AWS offers a range of services for dynamically scaling servers including the core compute service, Elastic...
Content Roadmap: AZ-500, ITIL 4, MS-100, Google Cloud Associate Engineer, and More
Last month, Cloud Academy joined forces with QA, the UK’s largest B2B skills provider, and it put us in an excellent position to solve a massive skills gap problem. As a result of this collaboration, you will see our training library grow with additions from QA’s massive catalog of 500+...
DevSecOps: How to Secure DevOps Environments
Security has been a friction point when discussing DevOps. This stems from the assumption that DevOps teams move too fast to handle security concerns. This makes sense if Information Security (InfoSec) is separate from the DevOps value stream, or if development velocity exceeds the band...
Test Your Cloud Knowledge on AWS, Azure, or Google Cloud Platform
Cloud skills are in demand | In today's digital era, employers are constantly seeking skilled professionals with working knowledge of AWS, Azure, and Google Cloud Platform. According to the 2019 Trends in Cloud Transformation report by 451 Research: Business and IT transformations re...
Disadvantages of Cloud Computing
If you want to deliver digital services of any kind, you’ll need to estimate all types of resources, not the least of which are CPU, memory, storage, and network connectivity. Which resources you choose for your delivery — cloud-based or local — is up to you. But you’ll definitely want...
Google Cloud vs AWS: A Comparison (or can they be compared?)
The "Google Cloud vs AWS" argument used to be a common discussion among our members, but is this still really a thing? You may already know that there are three major players in the public cloud platforms arena: Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP)...
Deployment Orchestration with AWS Elastic Beanstalk
If you're responsible for the development and deployment of web applications within your AWS environment for your organization, then it's likely you've heard of AWS Elastic Beanstalk. If you are new to this service, or simply need to know a bit more about the service and the benefits th...
How to Use & Install the AWS CLI
What is the AWS CLI? | The AWS Command Line Interface (CLI) is for managing your AWS services from a terminal session on your own client, allowing you to control and configure multiple AWS services and implement a level of automation. If you’ve been using AWS for some time and feel...
Cloud Academy’s Blog Digest: July 2019
July has been a very exciting month for us at Cloud Academy. On July 10, we officially joined forces with QA, the UK’s largest B2B skills provider (read the announcement). Over the coming weeks, you will see additions from QA’s massive catalog of 500+ certification courses and 1500+ ins...
AWS Fundamentals: Understanding Compute, Storage, Database, Networking & Security
If you are just starting out on your journey toward mastering AWS cloud computing, then your first stop should be to understand the AWS fundamentals. This will enable you to get a solid foundation to then expand your knowledge across the entire AWS service catalog. It can be both d...