Introduction To
Amazon
Web Services
Mohamed Atef
2025
Agenda
Traditional IT Cloud
Problems Computing 101
3 AWS Global
Infrastructure
AWS
Services
Traditional
IT Problems
Traditional IT Problems
Pay for power supply, cooling,
3 Scaling is limited
Hire 24/7 team to monitor the
5 infrastructure 6
Cloud
Computing
101
What’s Cloud Computing ?
● Cloud computing is the on-demand delivery of compute power,
database storage, applications, and other IT resources through a
cloud services platform via the internet with
pay-as-you-go pricing.
● You can access as many resources as you need, almost instantly.
● Simple way to access servers, storage, databases and a set of
application services.
Trade fixed expense
for variable expense
Six Advantages of Cloud
Computing
Go global in minutes money for running
1. Trade fixed expense for
variable expense
Instead of having to invest heavily in data centers
and servers before you know how you’re going to
use them, you can pay only when you consume
computing resources, and pay only for how much
you consume.
fi. Benefit from massive
economies of scale
By using cloud computing, you can achieve a
lower variable cost than you can get on your
own. Because usage from hundreds of
thousands of customers is aggregated in the
cloud, providers such as AWS can achieve higher
economies of scale, which translates into lower
pay as-you-go price.
3. Stop guessing capacity
● Eliminate guessing on your infrastructure capacity needs.
● When you make a capacity decision prior to deploying an
application, you often end up either sitting on expensive
idle resources or dealing with limited capacity.
● With cloud computing, you can access as much or as little
capacity as you need, and scale up and down as required
with only a few minutes’ notice.
4. Increase speed & agility
● Reduce the time to make IT resources available
to your developers from weeks to just minutes.
● This results in a dramatic increase in agility for
the organization, since the cost and time it takes
to experiment and develop is significantly lower.
5. Stop spending money for
running data centers
Focus on projects that differentiate your business,
not the infrastructure. Cloud computing lets you
focus on your own customers, rather than on the
heavy lifting of racking, stacking, and powering
servers.
6. Go global in minutes
● Easily deploy your application in multiple
regions around the world with just a few clicks.
● This means you can provide lower latency and
a better experience for your customers at
minimal cost.
Problems Solved by
the Cloud
1 Cost-Effectiveness
Scalability
Elasticity
The 3 Deployment
Models of the Cloud
Cloud Cloud Hybrid Cloud
Cloud resources owned
single organization, not
third-party cloud service
provider over the internet.
Control over sensitive
Six advantages of cloud assets in your private
Security for sensitive computing. infrastructure.
applications.
and
Cloud Computing
Models
1. IaaS - Infrastructure as a Service
2. PaaS - Platform as a Service
3. SaaS - Software as a Service
The differences between them consist of:
● Functionality.
● Tasks’ ownership and flexibility.
You Own the Car = On-Prem
Example
Of Cloud
Computing
Models
1. Infrastructure as a Service
(IaaS)
● Contains the basic building blocks for cloud IT
and typically provides access to networking
features, computers and data storage space.
● IaaS provides the highest level of flexibility and
management control over the infrastructure Amazon EC2
fi. Platform as a Service
(PaaS)
● Removes the need for your organization to manage
the underlying infrastructure (HW and OSs).
● This helps you to be more efficient as you don’t need
to worry about resource procurement, capacity
planning, software maintenance or patching. Amazon
Lambda
fi. Software as a Service
(SaaS)
● A complete product that is run and managed by the
service provider.
● With SaaS you do not have to think about how the
Gmail
service is maintained or how the underlying
infrastructure is managed; you only need to think
about how you will use the App.
Infrastructure Platform as a Software as a
On-premises as a Service Service Service
(IaaS) (Paas) (SaaS)
Cloud
Computing
Models
Virtualization Virtualization Virtualization Virtualization
Managed By You
Managed By Others Networking Networking Networking Networking
AWS Global
Infrastructure
AWS Global
Infrastructure Overview
AWS Regions
AWS Edge Locations
1. AWS Regions
● An AWS Region is a physical location in the
world that consists of multiple Availability Zones.
● All AWS Regions are completely isolated one
from each other Highest Standards fault
tolerance and stability.
● Names can be us-east-1, eu-west-3, ..etc
Region
fi. AWS Availability
Zones (AZs) AZ-a AZ-b AZ-c
● Each availability zone (AZ) is one or more
discrete data centers with redundant power,
networking, and connectivity. ● Each region has many availability
zones (usually 3, min is 2, max is 6).
● Separate from each other, so that Isolated ● Example:
from disasters. • ap-southeast-2a
Connected with high bandwidth, ultra-low • ap-southeast-2b
latency networking. • ap-southeast-2c
3. AWS Edge
Locations
● Amazon has 413 Points of Presence (400 Edge
Locations & 13 Regional Caches) across 245
countries and territories Served.
● Content is delivered to end users with lower
latency.
3. AWS Edge
Locations - CONT'D
● Amazon CloudFront is a fast content delivery
network (CDN) service that securely delivers data,
videos, apps to customers globally with low latency
and high transfer speeds.
● More information available at the following URL:
https://aws.amazon.com/cloudfront/features/
Request
Request
File
File
S3
Edge Location
AWS Services
AWS
Management
Interfaces
AWS Management
Interfaces Overview
● AWS provides three distinct options in order to interact with
the AWS Cloud Platform:
AWS
AWS
Command
Management Development
Console Kits (SDKs)
(CLI)
AWS Management
Console
● A graphical user interface for accessing a wide range of AWS
Cloud services and managing compute, storage, and other cloud
resources.
● A web application that comprises and refers to a broad collection
of service consoles for managing Amazon Web Services.
● https://console.aws.amazon.com
AWS Command Line
Interface (CLI)
● A unified tool to manage your AWS services.
● With just one tool to download and configure, you can control
multiple AWS services from the command line and automate
them through scripts.
● After AWS CLI tool installation, you can begin making calls to your
AWS services from the command line.
Software Development
Kits (SDKs)
● A software development kit, or SDK, is really nothing more than a
set of tools that allow developers to create software or apps for a
specific platform, operating system, computer system or device.
● Using SDKs, you can access and manage AWS services with your
preferred development language or platform.
● https://aws.amazon.com/tools
Identity and
Access
Management
IAM
Identity and Access
Management (IAM)
● Is a global service that helps you securely control access
to AWS resources.
● You use IAM to control who is authenticated (signed in)
and authorized (has permissions) to use what resources.
● The key in understanding IAM is represented by these two
concepts: authentication and authorization.
IAM: Users & Groups
● Root account created by default, shouldn’t be used or
shared.
● Users are people within your organization, and can be
grouped.
● Groups only contains users, not other groups.
● Users don’t have to belong to a group, and user can
belong to multiple groups.
IAM: Users & Groups
Example
Developers Operations
Audit
Ahmed Mostafa Khaled Ebrahim Tarek
IAM: Permissions
● Users or Groups can be assigned
JSON documents called policies.
● These policies define the permissions
of the users.
● In AWS you apply the Least Privilege
Principle : don’t give more
permissions than a user needs.
IAM: Role
● Some AWS service will need to
perform actions on your behalf.
● To do so, we will assign permissions
to AWS services with IAM Roles.
● Common roles:
• EC2 Instance Roles.
• Lambda Function Roles.
• Roles for CloudFormation.
Elastic
Compute
Cloud
EC2
EC2: Basic
Terminology
● Amazon Elastic Compute Cloud (EC2) provides scalable
computing capacity in the Amazon Web Services (AWS) cloud.
● AWS virtual compute environments are called instances.
● Amazon Machine Images (AMIs) are available to choose
from – preconfigured templates for EC2 instances.
EC2: Basic
Terminology - CONT'D
● Instance types – different configurations of CPU, memory,
storage and networking capacity.
● Secure login to EC2 instances with key pairs (you store
private key, AWS stores the public key).
● Persistent storage volumes for your data are available
through Elastic Block Store (EBS) – Amazon EBS Volumes.
EC2: Instance Types
● Each instance type offers different compute, memory,
and storage capabilities and grouped in instance
families based on these capabilities.
● https://aws.amazon.com/ec2/instance-types
EC2: Pricing models
On-Demand Dedicated Host
Instance Instance
Best for Applications
server-bound
software licenses,
incl. Windows Server,
SQL Server, etc.
Elastic
Load
Balancing
ELB
What’s
Scalability ?!
● Scalability means that an
application or system can handle
greater loads by adapting.
There are two kinds of scalability:
Vertical Scalability.
Horizontal Scaling Vertical Scaling
Horizontal Scalability.
What’s High
Availability ?!
York
● High Availability usually goes hand in
hand with horizontal scaling.
● Running your application/system in at
least 2 Availability Zones. Sydney
● The goal of high availability is to
survive a data center loss (disaster).
What’s Load
Balancing ?!
Users
● Serves as the single point of contact for clients.
● Distributes incoming application traffic across
multiple targets, such as EC2 instances, in Load Balancer
multiple Availability Zones.
● This increases the availability of your
application. You add one or more listeners to
EC2 EC2 EC2
your load balancer.
What’s the Auto
Scaling Group ?!
Users
● In real-life, the load on your websites can change.
● The goal of an Auto Scaling Group (ASG) is to:
• Scale out (add EC2 instances).
Load Balancer
• Scale in (remove EC2 instances).
• Have a minimum & maximum number of EC2s.
• Replace unhealthy instances.
EC2 EC2 EC2 EC2
Virtual
Private
Cloud
VPC
What’s Amazon
VPC ?
● Enables you to launch AWS resources into a virtual network that
you define.
● This virtual network is similar to a traditional network that you
would operate in your own data center, with the benefits of
using the scalable infrastructure of AWS.
● You can launch your AWS resources, such as Amazon EC2
instances, into your VPC.
Region
10.0.0.0/16
AZ-2 AZ-1
10.0.2.0/24 10.0.1.0/24
10.0.2.100/24 10.0.1.100/24
EC2 EC2
Private Subnet Public Subnet
Amazon
Lambda
Function
What’s AWS
Lambda Function ?
● AWS Lambda is a serverless, event-driven compute service
that lets you run code for virtually any type of application or
backend service without provisioning or managing servers.
● You can trigger Lambda from over 200 AWS services and
software as a service (SaaS) applications, and only pay for
what you use.
● https://aws.amazon.com/lambda
● Pay per request and compute time.
● Free tier of 1,000,000 AWS Lambda requests per month.
● Integrated with the whole AWS suite of services.
● Event-Driven: functions get invoked by AWS when needed.
Lambda ● Integrated with many programming languages.
Function ● Easy monitoring through AWS CloudWatch.
Benefits ● Easy to get more resources per functions (up to 10GB RAM).
Simple
Storage
Service
S3
Simple Storage
Service S3
● Allows people to store objects (files) in buckets (directories).
● It’s advertised as infinitely scaling storage.
● Many websites use Amazon S3 as a backbone.
● S3 Use cases :
• Backup and storage.
• Disaster Recovery.
• Static website.