AWS cloud practitioner notes - Infrastructure and reliability

Last updated Apr 6, 2024 Published Jan 5, 2021

The content here is under the Attribution 4.0 International (CC BY 4.0) license

Previously we saw the EC2 computing services that AWS offers and the difference between them. This section focuses on the infrastructure and reliability, how AWS offers such service for its customers and how it enables the capacity that AWS has. AWS provides high availability for customers through multiple regions in a global landscape.

Previous: AWS cloud practitioner notes - EC2

Module 3 - Global Infrastructure

AWS provides a range of regions to support high availability.

  1. Compliance (does the data have restrictions to any country? Usually compliance states restrictions to where the software should operate.)
  2. Proximity (Close to the customer, usually the right call as the content will be provided faster compared to farther regions)
  3. Future availability
  4. Pricing (some locations are more expensive to operate)

Each region is made up of multiple data centers. AWS calls a single data center or a group of data centers an availability** zone** or AZ. AWS data centers have redundant power, networking and connectivity. Services that have the check “Regionally scoped service” are already high available.

Module 3 - Edge locations

AWS provides a CDN (Content Delivery Network [1] - Amazon cloud front) uses edge locations to accelerate communications with customers around the world.

  • Regions are geographically isolated areas
  • Regions contain availability zones
  • Edge locations run Amazon CloudFront

Best practice tip: deploy infrastructure across at least 2 availability zones

Module 3 - How to provision AWS resources

In AWS everything is an API call, there are pre-determined ways to interact with AWS services. There are a few options to interact with those services, for example:

  • AWS management console (web-based, visually)
  • AWS Command line interface (CLI - API calls via terminal)
  • AWS Software Development Kits (SDKs - interface for different programming languages)

Elastic beanstalk (EB)

Elastic Beanstalk is AWS managed service that manages EC2 instances. You provide a configuration such as networking, storage, scaling and the application to run. The application can be shipped in a container image or in a specific programming language that EB supports.

Besides, EB provides a way of making the process repeatable and preventing possible human error during deployment.

CloudFormation

Cloud formation is a service that AWS provides to provision services through scripts (code tool). Through XML or JSON declarative scripts called CloudFormation templates. This kind of approach of serving infrastructure on a coded basis is known as Infrastructure as Code (IaC). CloudFormation is specifically for AWS, but, other tools such as such as [terraform]/certification/2021/08/07/terraform-hashicorp-certification.html support other cloud providers.

                                    calls to AWS apis
                                     _______________________
                                    |                       |
CloudFormation template  ---------> |  AWS Cloud Formation  | -----------> AWS services
                                    |_______________________|

The CloudFormation approach decouples what you want to build from how to build it. The CloudFormation takes care of the how, and you, the what.

Up next

Networking

References

  1. [1]Wikipedia, “Content delivery network,” 2021 [Online]. Available at: . [Accessed: 17-Jul-2021]