The AWS Cloud
AWS entered the cloud computing arena in 2006. It was the first public cloud provider. It was initially created to support the growing Amazon.com business, but it was quickly realized that AWS could provide services for other businesses, too. In its early days, it offered Simple Storage Solution (S3) for storage and Elastic Compute Cloud (EC2) for computing power. As the years went by, AWS expanded its portfolio to include cutting-edge technologies such as artificial intelligence, machine learning, and the Internet of Things (IoT). This growth trajectory was not just about diversifying services; it fundamentally reshaped how businesses approach scalability and adaptability, offering unprecedented efficiency and flexibility.
In today’s cloud computing landscape, AWS stands as a dominant force, consistently ranking as a top provider globally. Its comprehensive suite of services, known for reliability and scalability, has made it the preferred choice for a diverse spectrum of clients, ranging from emerging start-ups to established enterprises. AWS’s impact on the cloud computing sector is significant. It has not only captured a substantial market share but also played a pivotal role in driving cloud adoption across various industries, thus spearheading a wave of digital transformation and fostering a culture of continuous technological innovation.
We will now look at some of the key AWS services that you will need to know for the exam. All of them will be covered in much greater depth in later chapters.
The Core AWS Services
AWS offers a wide range of services that form the backbone of its cloud computing platform, letting businesses choose from multiple robust and versatile tools. At the time of writing, AWS offers over 200 different services. A service may include a combination of hardware, software, storage, and tooling to support a business in its goals. Key services include Virtual Private Cloud (VPC) for secure and isolated network configuration, EC2 for scalable computing capacity, S3 for reliable data storage solutions, Lambda to run code in response to events without managing servers, and Relational Database Service (RDS) for the easy setup, operation, and scaling of databases. These services collectively provide a comprehensive, integrated cloud environment that supports a wide range of business applications and workflows, demonstrating AWS’s commitment to offering scalable, efficient, and flexible cloud solutions.
VPC
AWS VPC enables you to create a logically isolated area of the AWS cloud where you can deploy your workloads:
- Custom network configuration: Set up an IP address range, subnets, and gateways for secure and custom network environments
- Enhanced security controls: Control network access to instances and subnets for improved security
- Seamless AWS integration: Easily connect with other AWS services, maintaining a secure and efficient cloud ecosystem
EC2
EC2 provides resizable servers or compute in the AWS cloud, allowing you to rapidly deploy and scale your compute needs:
- Flexible compute options: A wide range of instance types for different computational needs
- Scalable resources: Easily scale capacity up or down as needed
RDS
RDS simplifies the setup, operation, and scaling of relational databases in the cloud:
- Automated management: Handles routine database tasks like provisioning, patching, backup, and recovery
- Multiple database engine support: Compatible with engines such as MySQL and PostgreSQL
- Scalability: Adjust compute and storage resources with minimal downtime
S3
S3 provides scalable object storage, ideal for a wide range of storage applications:
- High durability and availability: Ensures data is stored reliably across multiple facilities
- Simple and scalable: A user-friendly interface to store and retrieve vast amounts of data
- Cost-effective: Store large volumes of data at a low cost, scaling as per requirement
Lambda
AWS Lambda enables you to run code without server management, with billing for the compute time used:
- Serverless execution: Automatically manages computing resources
- Event-driven: Triggers execution in response to various events
- Scalable: Adjusts automatically to handle the workload
Now that you know of some key services that AWS offers, you can start to imagine how you would use them to support the different applications that your organization runs. You should also be able to see that Lambda is a PaaS service, whereas EC2 is an IaaS, as you have more control with EC2 than with Lambda.
AWS Global Infrastructure
AWS has established a vast and robust global infrastructure to support its cloud services, ensuring high availability, low latency, and strong data sovereignty compliance for its users worldwide. This infrastructure is meticulously designed and strategically distributed across various geographical locations. It includes multiple components, such as Regions, Availability Zones (AZs), Edge Locations, and Outposts, each serving a specific purpose to enhance the performance, reliability, and scalability of AWS services. Figure 1.5 displays the AWS global infrastructure:
Figure 1.5: AWS global infrastructure
Regions
AWS Regions are geographical areas that host multiple AWS data centers. Each Region is a separate geographic area, isolated and independent from the other Regions to prevent service failures from affecting multiple Regions. This design enhances fault tolerance and stability, ensuring that even if there is a disaster, data integrity and service continuity are maintained. Regions also help you to adhere to data residency requirements, as customers can choose where their data is stored.
Availability Zones
Within each AWS Region, there are AZs. An AZ is a cluster of data centers, each with its own off-grid power, networking capabilities, and connectivity, located in separate buildings that are far enough apart to be protected from a local event (for example, a flood) that could cause an outage. These AZs offer protection against failures of individual servers or entire data centers. By distributing resources across multiple AZs within a Region, AWS provides high availability and fault tolerance to applications and databases.
Edge Locations
Edge Locations are endpoints for AWS that are used to cache content. This aspect of AWS’s global infrastructure is primarily used by Amazon CloudFront (AWS’s content delivery network) to distribute content to end users with lower latency. These locations are positioned in major cities and highly populated areas around the world, and they bring AWS services closer to the end users, reducing latency and improving the speed of data delivery.
Outposts
AWS Outposts brings multiple AWS services, including its infrastructure, operating methods, and APIs, to your own data center or on-premises facility. It is part of AWS’s hybrid cloud solutions, allowing businesses with low latency or high-security requirements to integrate between on-premises data centers and AWS’s cloud services. This allows them to run local workloads as if they were on AWS.
We will now take a look at the best practices to deploy and build on AWS. These best practices are known as the Well-Architected Framework.