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 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 by 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 came in handy in several different situations. Just to cite some of the most common use case, 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 lot of people getting lost about: endpoints. Long story short: there are several ways to access a service, a region and/or an availability zones, and they are called endpoints. In other words, they are URLs acting as 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 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.

转自:http://cloudacademy.com/blog/aws-regions-and-availability-zones-the-simplest-explanation-you-will-ever-find-around/

[REP]AWS Regions and Availability Zones: the simplest explanation you will ever find around的更多相关文章

  1. Openstack关于Regions和Availability Zones

    在AWS中有Region和Availability Zones的概念,并且在openstack中也实现了两者,只是不太容易看出来. 此文主要介绍他们的概念和关系,以及在openstack中的实现. 如 ...

  2. openstack的Host Aggregates和Availability Zones

    1.关系 Availability Zones 通常是对 computes 节点上的资源在小的区域内进行逻辑上的分组和隔离.例如在同一个数据中心,我们可以将 Availability Zones 规划 ...

  3. 【原创】导出aws ec2为csv

    1.安装 pip  install boto3 csv 2.使用脚本更新秘钥和地区 # 导出aws ec2列表为cvs import boto3 import csv   ec2 = boto3.cl ...

  4. nova availability zone

    find a bug: at first there is only one zone. create aggregate host1 in zone1 create aggregate host1 ...

  5. AWS--EC2基本概念

    原文:http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html EC2:Elastic Compute Cloud 特性包括: ...

  6. aws 试题

    /* Domain 1 Design Resilient Architectures 1. Which of the following statements regarding S3 storage ...

  7. AWS Cloud Practioner 官方课程笔记 - Part 1

    课程笔记: 1. 3种访问AWS服务的方式: GUI, CLI, SDK 前两种是用户用来访问的,SDK可以让程序调用去访问服务. 2. core services 以及通用的use cases Am ...

  8. ansible+packer+terraform在aws上布署web服务器

    各工具所扮演的角色 ansible: 配合packer生成安装有apache的基础镜像 packer: 生成amazon AMI terraform: 以packer生成的镜像为基础,布署web服务器 ...

  9. AWS 错误标记3

    1. What is the average queue length recommended by AWS to achieve a lower latency for the 200 PIOPS ...

随机推荐

  1. GWAS Simulation

    comvert hmp to ped1, ped2, map fileSB1.ped, SB2.ped, SB.map 1, choose 20 markers for 30 times(WD: /s ...

  2. js实现图片实时预览

    注: 此博客转自 http://www.cnblogs.com/goody9807/p/6064582.html  转载请注明出处 <body> 上传图片: <input type= ...

  3. iOS 按钮点击变色

    之前一直以为是要在selected状态下增加一个背景图片,效果是颜色变深,明明我的图片是变浅: 之后试了用hightlighted 成功. [_loginBtn setBackgroundImage: ...

  4. Map练习错误

    private Student findStuByNumber(String number) {              Student student=null ;       for(Stude ...

  5. visual studio 2013 已停止运行 解决办法

    情况是这样,WINDOWS 8.1,双显卡笔记本,打开VS.NET 没几秒就提示 已停止运行,然后就关闭程序了,找了无数资料都没有解决 -------------------------------- ...

  6. 补交作业——Beta发布评论

    1.飞天小女警: 礼物挑选这一项目是很好的点子,比较能够吸引客户,更加方便快捷的挑选也满足现代人在送礼物方面的需求.这一次的发布界面效果好了很多,并且成功的发布到了云服务器上. 2.nice! : 这 ...

  7. eclipse中的窗口切换快捷键

    Ctrl+Shift+F6 很简单,如果以后改用IDEA的话就没用了,但这个窗口切换确实很复杂,看起来也操作比较快.

  8. 在不安装mysql-connector-net的情况下使用FluentData框架

    最近在开发项目中使用了FluentData框架,通过使用这个框架减少了很多开发的工作量,FluentData是一个轻量级的框架操作起来的自由度很大也少了很多负责的配置.但是在开发的时候发现一个问题就是 ...

  9. 欢迎你,phpWeChat 开发者

    感谢您使用 phpWeChat 来作为自己网站或者微信公共号的开发工具.phpWeChat 是一款高效.稳定的网站+微信公共号内容管理系统(CMS),也可称之为一个PHP开发框架. phpWeChat ...

  10. LeetCode----Tree

    Path Sum II 思路:回溯 public List<List<Integer>> pathSum(TreeNode root, int sum) { List<L ...