AWS Global Infrastructure

What makes AWS Global Infrastructure ?

Let us dive into the fundamental components that make up a distributed network of data centers, regions, availability zones, and edge locations.

AWS global infrastructure is a big network of interconnected data centers and resources distributed across the world.

This network enables to provide services to users with low latency, high availability and fault tolerance.

HA vs FA ?

High Availability (HA):

  • HA refers to the ability of a system or service to remain operational and accessible for users, typically measured as a percentage of uptime within a given period.
  • The primary goal of HA is to minimize downtime and ensure that services are continuously available to users, even in the event of planned maintenance, hardware failures, or other disruptions.
  • HA is achieved through redundancy and failover mechanisms. For example, having multiple servers in a cluster with load balancing ensures that if one server fails, traffic can be redirected to other servers to maintain service availability.
  • Common technologies used for achieving high availability include clustering, load balancing, automatic failover, and redundant hardware or network components.

Fault Tolerance:

  • Fault tolerance refers to the ability of a system to continue functioning properly in the presence of hardware or software faults, errors, or failures.
  • Unlike high availability, which focuses on minimizing downtime and ensuring service continuity, fault tolerance emphasizes the system’s ability to withstand failures without affecting its overall operation.
  • Fault-tolerant systems are designed with redundant components and mechanisms that can detect and recover from faults automatically, often without causing service disruptions or data loss.
  • Examples of fault-tolerant techniques include RAID (Redundant Array of Independent Disks) for data storage redundancy, ECC (Error-Correcting Code) memory for error detection and correction, and redundant power supplies for uninterrupted power delivery.

    In summary, high availability aims to keep services running and accessible to users with minimal downtime, while fault tolerance focuses on maintaining system functionality and resilience in the face of failures or errors. Both concepts are essential in ensuring the reliability, continuity, and performance of critical IT systems and services.

    Example :

    1. High Availability (HA):
      • Imagine you have a favorite website. High availability means that the website is always up and running smoothly, so whenever you want to visit it, you can access it without any issues. It’s like your favorite store always being open for business whenever you need something.
    2. Fault Tolerance:
      • Now, think about a computer or a server. Fault tolerance is like giving that computer or server a safety net. If something goes wrong, like a component breaks or there’s a glitch in the software, the system is designed to keep working without crashing. It’s like having a backup plan that kicks in automatically to prevent problems from causing a total shutdown.

    In simpler terms, high availability is about making sure your services are always available when you need them, while fault tolerance is about ensuring your systems can handle problems or failures without breaking down completely. Both are important for keeping things running smoothly in the world of technology.


    Regions and Availability Zones

    AWS regions refer to physical locations around the world where Amazon Web Services (AWS) has data centers and infrastructure to host cloud services and resources.

    AWS divides the world into geographic regions, such as North America, Europe, Asia, etc.

    AWS regions are spread across different continents, such as North America, South America, Europe, Asia Pacific, and others. Examples of specific regions include US East (N. Virginia), EU (Ireland), Asia Pacific (Singapore), and so on.

    Each AWS region is a separate geographic area with multiple availability zones (AZs), which are isolated data centers within the region.

    Each region is made up of multiple availability zones. So, Availability zones are multiple isolated data centers within a region, with its own power, networking, and connectivity. These AZs are designed to be physically separate from each other, yet interconnected through high-speed links.

    AWS uses the concept of regions and availability zones to enhance fault tolerance and high availability for services and applications. By deploying resources across multiple availability zones within a region, users can design resilient architectures that continue to operate even if one AZ experiences issues.

    Edge Locations

    Edge locations are typically used for Content Delivery.

    Edge locations are strategically distributed in major cities around the world, closer to end users. They are used for content delivery, including CloudFront and route 53 DNS services.

    CloudFront leverages edge locations to distribute content globally with low latency, reducing the time it takes for users to access their resources.

    For example, When a user requests content (like web pages, videos, or images) that is cached at an edge location, the content is delivered from the nearest edge location instead of the origin server. This reduces latency and improves the overall user experience by speeding up content delivery.


    Benefits

    • High Availability – the distributed infrastructure minimizes the impact of hard ware failures and data center outages.
    • Low Latency – Users can access resources from the nearest region or edge locations, and it reduces the delays.
    • Scalability –
    • Data Residency and Compliance – Users can choose regions to comply with data residency requirements.