0% found this document useful (0 votes)
63 views36 pages

Cloud Computing Infrastructure Overview

The document outlines the fundamental components of cloud computing infrastructure, including servers, storage, and networking elements, as well as the architecture of data centers. It discusses existing cloud infrastructures, particularly public and private clouds, with a focus on Amazon Web Services (AWS) and its various services such as EC2, S3, and EBS. Additionally, it explains the AWS Nitro System and the functionalities of services like CloudWatch, VPC, and SQS to enhance resource management and application deployment.

Uploaded by

yousaf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views36 pages

Cloud Computing Infrastructure Overview

The document outlines the fundamental components of cloud computing infrastructure, including servers, storage, and networking elements, as well as the architecture of data centers. It discusses existing cloud infrastructures, particularly public and private clouds, with a focus on Amazon Web Services (AWS) and its various services such as EC2, S3, and EBS. Additionally, it explains the AWS Nitro System and the functionalities of services like CloudWatch, VPC, and SQS to enhance resource management and application deployment.

Uploaded by

yousaf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

CS6065

Cloud Computing and Applications


Cloud Infrastructure
Cloud Building Blocks

• Basic Building Blocks:


 servers, storage, and network

• Racks and Rows:


 servers, storage, network, power, and racks

2
Cloud Building Blocks

• Data center:
 Servers, storage, network, power, racks
 Cooling and supply chain

3
Microsoft Data Centers (around the globe)

• Distributed data centers:


 Servers, storage, network, power, racks
 Cooling, supply chain, leased lines, and
regulations

Source: [Link] 4
[Link]
Existing Cloud Infrastructures

• Public Clouds
 Cloud computing infrastructure at Amazon,
Google, and Microsoft (as of mid 2012).
o Amazon is a pioneer in Infrastructure-as-a-Service (IaaS).
o Google's efforts are focused on Software-as-a-Service (SaaS)
and Platform-as-a-Service (PaaS).
o Microsoft is involved in PaaS.

• Private clouds
 An alternative to public clouds
 Open-source cloud computing platforms, used
for setting up private clouds, include:
o Eucalyptus
o OpenNebula
o Nimbus
o OpenStack
5
Amazon Web Services (AWS)

• IaaS services of AWS were launched in 2006


• Businesses in 200 countries were using AWS
in 2012
• Infrastructure consists of
 compute servers
 Storage servers
 High speed interconnect
 A set of services

• An application developer:
 Installs applications on a platform of the choice
 Manages resources allocated by Amazon

6
Amazon Web Services (AWS)
• AWS released:
• 24 services in 2008.
• 48 services in 2009.
• 61 services in 2010.
• 82 services in 2011.
• 159 services in 2012.
• 280 services in 2013.
• 449 new services and major features were released in 2014.

• AWS services reflect leading-edge technological


developments, e.g.
• Machine Learning Services
• Quantum simulation services
• IoT Services
• …
7
AWS regions and availability zones
• Amazon offers cloud services through a network of
data centers on several continents.
• In each region there are several availability zones
interconnected by high-speed networks.
• An availability zone is a data center consisting of
a large number of servers.

• Regions do not share resources and communicate


through the Internet.
8
AWS regions and availability zones

9
Amazon Services

Elastic Compute Cloud (EC2 )


A virtual computing environment that enables customers to use AWS
interfaces to launch instances with a variety of OS, user’s custom
applications, network's access permission management, and run
user’s image using as many systems as needed

Simple Storage Service (S3)


Amazon S3 provides object storage through web services interfaces
(REST, SOAP, and BitTorrent). S3 uses include web hosting, image
hosting, and storage for backup systems.

AWS CloudFormation
Simplifies provisioning and management on AWS. User can create
templates for the service or application architectures of the need.

Amazon ElastiCache
A web service used to deploy, operate, and scale an in-memory data
store or cache in the cloud, just like Redis (a fast, open source, in-
memory data store and cache).
10
Amazon Services

Amazon CloudFront
A web service that speeds up distribution of user’s static and dynamic web
content, e.g., .html, .css, .js, and image files. CloudFront delivers the
content through a worldwide network of data centers called edge
locations.
Amazon CloudWatch
CloudWatch is designed to monitor AWS cloud resources and hosted
applications. Used for performance monitoring.
Amazon Simple Queue Service (Amazon SQS)
SQS is a pay-per-use web service for storing messages in transit between
computers. Developers use SQS to build distributed applications with
decoupled components without having to deal with the overhead of
creating and maintaining message queues.
AWS Elastic Beanstalk
An orchestration service for deploying infrastructure which orchestrates
various AWS services, including EC2, S3, Simple Notification Service,
CloudWatch, autoscaling, and Elastic Load Balancers.

11
Amazon Services
Elastic Load Balancing (ELB)
A load-balancing service for AWS deployments. ELB automatically
distributes incoming traffic and scales resources to meet traffic demands.
AWS Management Console
A browser-based GUI for AWS. Customers use it to manage their cloud
computing, cloud storage and other resources running on Amazon Web
Services infrastructure.
Amazon Elastic Block Store (Amazon EBS)
EBS provides persistent block storage volumes for use with EC2 instances
in the AWS Cloud. Each EBS volume is automatically replicated within its
Availability Zone to protect you from component failure, offering high
availability and durability.
Auto Scaling
Supports elastic resource management.
Virtual Private Cloud
Allows direct migration of parallel applications.

12
AWS instances
 An instance is a virtual server with a well specified
set of resources, including:
 CPU cycles, main memory, secondary storage,
communication and I/O bandwidth.
• The user chooses:
 Region & availability zone where the virtual server be
hosted.
 An instance type from a limited menu of instance types.
• When launched, an instance is provided with a DNS
name; this name maps to a
 private IP address
o For internal communication within the internal EC2
communication network.
 public IP address
o For communication outside the internal Amazon
network, e.g., for communication with the user that
launched the instance. 13
AWS instances
• Network Address Translation (NAT) maps external IP
addresses to internal ones.

• Public IP address is assigned for the lifetime of an


instance.

• An instance can request an elastic IP address,


rather than a public IP address.

 The elastic IP address is a static public IP address allocated


to an instance from the available pool of the availability
zone.

 An elastic IP address is not released when the instance is


stopped or terminated and must be released when no
longer needed. 14
AWS instances

EC2
instance
Compute server
EC2 instance
Instance
EC2
Compute server instance
SQS

Cloud watch Compute server

Cloud front
NAT
Cloud interconnect
Elastic cache
Internet
Cloud formation

Elastic beanstalk

Elastic load balancer

AWS management
console S3 EBS SDB
S3 EBS SDB
Servers running AWS
services S3 SDB
S3
Simple DB

15
AWS storage servers
Steps to run an application

• Retrieve the user input from the front-end.

• Retrieve the disk image of a VM (Virtual


Machine) from a repository.

• Locate a system and requests the VMM


(Virtual Machine Monitor) running on that
system to setup a VM.

• Invoke the Dynamic Host Configuration


Protocol (DHCP) and the IP bridging software
to set up MAC and IP addresses for the VM.
16
User interactions with AWS

• Through the AWS Management Console


 An easiest way to access all services
 However, not all options may be available.

• AWS SDK libraries and toolkits are provided


for several programming languages
including Java, PHP, C#, and Objective-C.

• Raw REST requests.

17
A Typical Example Configuration
CloudWatch

EC2

Linux, Debian,
Fedora,OpenSolaris,
Open Suse, Red Hat, S3
Ubuntu, Windows, Suse
Linux

EBS
SQS -Simple Queue Service

EC2

Linux, Debian, Simple DB


Fedora,OpenSolaris,
Open Suse, Red Hat,
Ubuntu, Windows, Suse
Linux

Virtual Private Cloud

Autoscaling

AWS Management Console 18


EC2 – Elastic Cloud Computing
• EC2
 Web service for launching instances of an application
under several operating systems, such as:
o Several Linux distributions.
o Microsoft Windows Server 2003 and 2008, 2008 R2,
2012, 2012 R2, 2016, and 2019.
o OpenSolaris.
o FreeBSD.
o NetBSD.
 EC2 is based on the virtualization
o For more than 10 years AWS used the Xen hypervisor.
o In 2017, AWS replaced Xen with KVM.
• A user can
o Load an EC2 instance with a custom application environment.
o Manage network’s access permissions.
o Run the image using as many or as few systems as desired.
19
EC2 – Elastic Cloud Computing
• Import virtual machine (VM) images from the user
environment to an instance through VM import.
• EC2 instances boot from an AMI (Amazon Machine
Image) digitally signed and stored in S3.
• Users can access:
o Images provided by Amazon.
o Customize an image and store it in S3.

• An EC2 instance is characterized by the resources it


provides:
o VC (Virtual Computers) – virtual systems running the instance.
o CU (Compute Units) – measure computing power of each
system.
o Memory.
o I/O capabilities.

20
AWS Nitro System

• A platform for next generation EC2


instances.

• A combination of dedicated hardware and a


lightweight supervisor.

• Traditional hypervisors virtualize all system


resources including, CPU, storage, and
networking.

• Nitro System break apart these subsystems


and offload them to dedicated hardware and
software to reduce the provisioning costs 21
AWS Nitro System – EC2 Instances

• Offers several classes of EC2 instances:


1. General purpose—A balance of computing,
memory, and networking resource.
• A1—AWS Graviton with 64-bit ARM Neoverse cores and custom
silicon.
• T3, T3a—AWS Nitro System; burstable general-purpose
instance type.
• M6g—ARM-based AWS Graviton2.
2. Compute optimized—for CPU-bound applications; high-
performance processors.
• C6g—ARM-based AWS Graviton2.
• C5n—3.0-GHz Intel Xeon Platinum with AVX-512 instruction set.
3. Memory optimized—for large memory footprint
workloads.
• R6g—Arm-based AWS Graviton2.
• X1e—Intel Xeon E7-8880 v3; up to 3 904 GiB of DRAM memory.
• R5a—AMD EPYC 7000; all core turbo clock speed of 2.5-GHz
AWS Nitro System.
22
AWS Nitro System – EC2 Instances
4. Accelerated computing—uses accelerators, or co-
processors, to perform functions, such as floating-point
number calculations, graphics processing, or data pattern
matching, efficiently.
• P3—Intel Xeon E5-2686 v4 (Broadwell) or 2.5 GHz (base) Intel Xeon P-
8175M and up to 8 NVIDIA Tesla V100 GPUs, each pairing 5 120 CUDA
Cores and 640 Tensor Cores.
• P2—Intel Xeon E5-2686 v4 (Broadwell); NVIDIA K80 GPUs, each with 2
496 cores and 12 GB GPU memory.
• G4—Intel Xeon Scalable (Cascade Lake); NVIDIA T4 Tensor Core GPUs.
• G3—Intel Xeon E5-2686 v4 (Broadwell); NVIDIA Tesla M60 GPUs, each
with 2 048 cores and 8 GB video memory.
5. Storage optimized—for workloads that require high,
sequential read-and-write access to very large data sets
on local storage.
• I3—Intel Xeon E5-2686 v4 (Broadwell); non-volatile memory express
(NVMe) SSD-backed instance storage.
• I3en—3.1 GHz Intel Xeon Scalable (Skylake) processors with AVX-512
instruction set; up to 60 TB of NVMe SSD.
23
• H1—2.3 GHz Intel Xeon E5 2686 v4; up to 16 TB of HDD storage.
S3 – Simple Storage System
• Service designed to store large objects
 an application can handle an unlimited number of objects
ranging in size from 1 byte to 5 TB.
• An object is stored in a bucket
 Retrieved via a unique, developer-assigned key
 A bucket can be stored in a Region selected by the user.
• Supports a minimal set of functions:
 Write, read, and delete
 Does not support primitives to rename, copy, or move an object
from one bucket to another.
• The object names are global.
• S3 maintains for each object:
 the name,
 modification time,
 an access control list, and
 up to 4 KB of user-defined metadata.
24
S3 – Simple Storage System

• Authentication mechanisms is used to keep the


data secure.

• Objects can be made public, and rights can be


granted to other users.

• S3 computes the MD5 of every object written


and returns it in a field called ETag.

• A user is expected to compute the MD5 of an


object stored or written and compare this with
the ETag;
 if the two values do not match, then the object
was corrupted during transmission or storage. 25
Elastic Block Store (EBS)
• Provides persistent block level storage volumes for
use with EC2 instances;
 Suitable for database applications, file systems, and applications
using raw data devices.
• A volume appears to an application as a raw,
unformatted and reliable physical disk;
 In the range 1 GB -1 TB.
• An EC2 instance may mount multiple volumes, but
a volume cannot be shared among multiple
instances.
• EBS supports the creation of snapshots of the
volumes attached to an instance and then uses
them to restart the instance.
• The volumes are grouped together in Availability
Zones and are automatically replicated in each
zone. 26
SimpleDB
• Non-relational data store. Supports store and query
functions traditionally provided only by relational
databases.
• Supports high performance Web applications; users
can store and query data items via Web services
requests.
• Creates multiple geographically distributed copies
of each data item.

• It manages automatically:
 The infrastructure provisioning.
 Hardware and software maintenance.
 Replication and indexing of data items.
 Performance tuning.

27
SQS - Simple Queue Service
• Hosted message queues are accessed through
standard SOAP and Query interfaces.

• Supports automated workflows


 EC2 instances can coordinate by sending and receiving SQS
messages.

• Applications using SQS can run independently and


asynchronously, and do not need to be developed
with the same technologies.
• A received message is “locked'' during processing;
if processing fails, the lock expires and the message
is available again.
• Queue sharing can be restricted by IP address and
time-of-day.
28
CloudWatch
• Used to collect and track metrics important for
 Performance optimization
 Efficient resource utilization
• Without installing any software a user can monitor
~12 pre-selected metrics by viewing graphs and
statistics of these metrics.
• When launching an Amazon Machine Image (AMI) the
user can start the CloudWatch and specify the type
of monitoring:
 Basic Monitoring - free of charge; collects data at five-
minute intervals for up to 10 metrics.
 Detailed Monitoring - subject to charge; collects data at
one minute interval.

Also used to monitor access latency to EBS volumes,


available storage space for RDS DB instances, No. of
messages in SQS, and other parameters of interest. 29
Virtual Private Cloud (VPC)

• VPC provides a bridge between the existing IT


infrastructure of an organization and the AWS cloud

• Existing infrastructure is connected via a Virtual


Private Network (VPN) to a set of isolated AWS
computing resources.

• VPC allows existing management capabilities, such


as security services, firewalls, and intrusion-
detection systems, to operate seamlessly within the
cloud.

30
AWS services introduced in 2012
• Route 53
 low-latency DNS service used to manage user's DNS public
records.
• Elastic MapReduce (EMR)
 supports processing of large amounts of data using a hosted
Hadoop running on EC2.
• Simple Workflow Service (SWF)
 supports workflow management; allows scheduling, management
of dependencies, and coordination of multiple EC2 instances.
• ElastiCache
 enables web applications to retrieve data from a managed in-
memory caching system rather than a much slower disk-based
database.
• DynamoDB
 scalable and low-latency fully managed NoSQL database service.

31
AWS services introduced in 2012
• CloudFront
 web service for content delivery.
• Elastic Load Balancer
 automatically distributes the incoming requests across
multiple instances of the application.
• Elastic Beanstalk
 handles automatically deployment, capacity provisioning,
load balancing, auto-scaling, and application monitoring
functions.
• CloudFormation
 allows the creation of a stack describing the infrastructure
for an application.

32
CloudFormation

• CloudFormation service allows the creation of a stack


describing the infrastructure for an application.

• The user creates a template, a text file formatted as


in Javascript Object Notation (JSON), describing:
• The resources
• The configuration values, and
• The interconnection among the resources.

• The template can be parameterized to allow


customization at run time
• e.g., to specify the types of instances, database port
numbers, or RDS size.

33
Elastic Beanstalk
• Handles automatically the
 deployment, capacity provisioning, load balancing, auto-scaling,
and monitoring functions.
• Interacts with other services, including
 EC2, S3, SNS, Elastic Load Balance and AutoScaling.
• Management functions provided by the service are:
 Deploy a new application version (or rollback to a previous
one).
 Access to the results reported by CloudWatch monitoring
service.
 Email notifications when application status changes or
application servers are added or removed.
 Access to server log files without needing to login to the
application servers.
• The service is available using:
 Java, PHP, .NET framework.

34
Lambda service
• This service introduced in November, 2014.
• AWS Lambda is an event-driven, serverless
computing platform (aka Function as a Service):
• It runs code in response to events and automatically
manages the computing resources required by that code.
• Good for big data applications.
• Applications are triggered by conditions and/or events
specified by the end user. For example,
• An application runs for a brief period of time at midnight to
check the daily energy consumption of an enterprise.
• An application may be activated weekly to check the sales of
a chain.
• An application may turn on the alarm system of a home
triggered by an event generated by the smartphone of the
owner.
35
Lambda service
• In EC2, when customers are billed on an hourly basis.
• e.g., if a C4 instance is used for one hour and ten
minutes the billing is for two hours
• Lambda service is billed for the actual time with a
resolution of milliseconds.
• The service could be easily used with following steps:
1. Create your function by uploading your code (or building
it right in the Lambda console).
2. Choose the memory, timeout period, and AWS Identity &
Access Management (IAM) role.
3. Specify the AWS resource to trigger the function,
• E.g. an S3 bucket, a DynamoDB table, or Amazon
Kinesis stream.
4. When the resource changes, Lambda will run a function,
launch and manage the compute resources as needed in
order to keep up with incoming requests.
36

You might also like