<p><strong>First a primer on <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-regions-availability-zones" rel="nofollow noreferrer">regions and availability zones</a></strong> </p>

<p>Regions are physical places where the AWS resources are located.  As such different regions may offer different resources.  This is also important for latency-sensitive operations and data sovereignty laws.  Having an EC2 instance in the us-east-1 region means all of my instance resources are in that region of the United States.</p>

<p>Availability Zones, while in the same geographic area, may be backed by one or multiple data centers.  However, if you have an EC2 instance running in two availability zones, they will run in separate data centers.  So an EC2 instance in us-east-1a and us-east-1b will be in two separate data centers.</p>

<p>Imagine you have a mission critical application that needs high availability.  By setting up a load balancer (controlled by the region and not the availability zone) you can help scale your application across multiple availability zones and redirect traffic if something happens to an availability zone.  This helps create a highly available infrastructure.</p>

<p>To answer your three examples:</p>

<ul>
<li>Computational availability is not really a factor.  You could always throw a larger instance (or multiple instances in the same availability zone) to decrease load.</li>
<li>While you could use multiple zones for rolling out upgrades, this can also be done within the same availability zone.</li>
<li>Your third point here is the main draw to the availability zones.  If a data center catches on fire, floods, gets hit by a meteor and all your EC2 instances are tied to that center then you would be unable to access whatever application you had running.</li>
</ul>

CC BY-SA 4.0
2019-09-25T02:51:08.143Z
Your labels are a little bit off.  There is no `us-east` region, and  `us-east-1` and `us-east-2` are regions, not availability zones.  Availability Zones are designated with the region name and a letter, such as `us-east-1f` and `us-east-2c`.
Michael - sqlbot
CC BY-SA 4.0
2019-09-25T02:56:01.653Z
@Michael-sqlbot: Good catch!  Answer has been edited with the proper labels.
Wesley Rolnick
CC BY-SA 4.0
2019-09-24T02:40:37.017Z
2019-09-25T02:54:02.870Z
2019-09-25T02:54:02.870Z
Wesley Rolnick
<p>I'm taking my first course For AWS cloud practitioner and I am curious:</p>

<p><strong>The case</strong>: I have a single, client-facing application hosted on an EC2 instance. Let's keep it simple and say it's brochureware, the database is in a volume attached to the instance. It's using us-west-2a as its availability zone.</p>

<p><strong>The conundrum</strong>:
I understand the use of CDNs as they essentially store a copy of the application in the edge locations so clients can be delivered a static copy quickly without using up EC2 compute time.</p>

<p>I also understand regions but only to the extent that it is an initial starting point for building out your application.</p>

<p><strong>What would be the nature of cases that would require me to duplicate my EC2 instance to a new availability zone and run the two exact same applications simultaneously?</strong></p>

<p>A few things pop-up for me initially:</p>

<ul>
<li>Computational availability (ex: the application client needs to request specific data, like a user defined request)</li>
<li>Zone based version control (ex: an incremental rollout of a feature)</li>
<li>And if I'm using this term right, fault tolerance (graceful degradation?). If one zone is down we can fall back to another.</li>
</ul>

<p>Are these assumptions correct? </p>

<amazon-web-services><amazon-ec2><high-availability>
When should an application be copied to a new region?
ExcellentSP
# When should an application be copied to a new region?

(Asked by: username_0 on 2019-09-24)

I'm taking my first course For AWS cloud practitioner and I am curious:

**The case**: I have a single, client-facing application hosted on an EC2 instance. Let's keep it simple and say it's brochureware, the database is in a volume attached to the instance. It's using us-west-2a as its availability zone.

**The conundrum**:
I understand the use of CDNs as they essentially store a copy of the application in the edge locations so clients can be delivered a static copy quickly without using up EC2 compute time.

I also understand regions but only to the extent that it is an initial starting point for building out your application.

**What would be the nature of cases that would require me to duplicate my EC2 instance to a new availability zone and run the two exact same applications simultaneously?**

A few things pop-up for me initially:

* Computational availability (ex: the application client needs to request specific data, like a user defined request)
* Zone based version control (ex: an incremental rollout of a feature)
* And if I'm using this term right, fault tolerance (graceful degradation?). If one zone is down we can fall back to another.

Are these assumptions correct?

**Tags:** amazon-web-services, amazon-ec2, high-availability


---

## 1 answers

### Answer by username_1 on 2019-09-24. Score: 1 | Accepted answer

**First a primer on [regions and availability zones](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-regions-availability-zones)**

Regions are physical places where the AWS resources are located. As such different regions may offer different resources. This is also important for latency-sensitive operations and data sovereignty laws. Having an EC2 instance in the us-east-1 region means all of my instance resources are in that region of the United States.

Availability Zones, while in the same geographic area, may be backed by one or multiple data centers. However, if you have an EC2 instance running in two availability zones, they will run in separate data centers. So an EC2 instance in us-east-1a and us-east-1b will be in two separate data centers.

Imagine you have a mission critical application that needs high availability. By setting up a load balancer (controlled by the region and not the availability zone) you can help scale your application across multiple availability zones and redirect traffic if something happens to an availability zone. This helps create a highly available infrastructure.

To answer your three examples:

* Computational availability is not really a factor. You could always throw a larger instance (or multiple instances in the same availability zone) to decrease load.
* While you could use multiple zones for rolling out upgrades, this can also be done within the same availability zone.
* Your third point here is the main draw to the availability zones. If a data center catches on fire, floods, gets hit by a meteor and all your EC2 instances are tied to that center then you would be unable to access whatever application you had running.

> **Comments:**
> **username_2**: Your labels are a little bit off.  There is no `us-east` region, and  `us-east-1` and `us-east-2` are regions, not availability zones.  Availability Zones are designated with the region name and a letter, such as `us-east-1f` and `us-east-2c`.  
> **username_1**: @Michael-sqlbot: Good catch!  Answer has been edited with the proper labels.  

---

