Cloud Deployment
Environment
syllabus
a = Mi
Google App Engine - Amazon AWS - Microsoft Azure; Cloud Software Environments - Eucalyptus -
penstack:
Contents
44 Google App Engine
42. Amazon AWS
| 43. Microsoft Azure
44 Cloud Software Environments : Eucalyptus
MpmapenstackK vette en Dec.-21, -~ +» Marks 13
Two Marks Questions with Answers
. Dec.-21, Marks 13
46
(4-1)ay
cloud computing pia
a Service
in Google-managed data centers,
‘aie own web applications and have
> App Engi en PENG datcpin to build their web applicags”
Pi ‘a a system that power Google applications. 5
:. Fire which can run on the computer, internet, Phone »
: An app is a piece of soft le refers to their online services as Apps, They
: "any other electronic device. Goog! agit Appe
also sell a specific suite of services known as Goog .
Google's providing both SaaS and PaaS solutions in cloud computing. Some tad
cic ter SaaS solutions including Google Apps which including Gmajj, Doc,
etc. and PaaS includes Google App engine.
* Services provided by App engine includes : ss
a) Platform as a Service (PaaS) to build and deploy scalable applications,
b) Hosting facility in fully-managed data centers.
©) A fully-managed, flexible environment platform for mana;
server and infrastructure.
4) Support in the form of popular development languages and developer tools.
Major feature of Google App Engine :
1. Automatic scaling and load balancing,
2. Authentication using Google Accounts APL.
3. Provides dynamic web services based on common standards.
4
5.
ging application
Integration with other Google Cloud Services and API.
Support persistent storage, with query access sorting and transaction
management features,
* Google App engine offers users the ability to build and host web applications on
Google's infrastructure,
Google app
engine
| Caching [astreiaton Mail
Datastore
Big tabie/ |
Mapreduce || Memcache = ows] Gmail
Fig. 4. —
TECHNICAL PUBLICA TIONS® . an Up-thrust for knowledge
aa...can send email
by providing high retrieval g users the benef i
me application at the same ea ‘ime “hen Multiple users access
application. With the use of this en ae to manipulate images of
ges in JPEG and PNG formats, size, crop, rotate and flip
the PaaS space Google is a key
jad run applications on Google's
player. eo Engine is a platform to create, store
Servers using development languages as java and
x App Engine Seer tools for managing the data store, monitoring the site and its
ecurce consumption and debugging and logging. A user can ervelthe app from
his own domain name using Google Apps,
+ Key features of GAE programming mode using java and python.
+ The Google App engine Software Development Kit (SDK) provides Java and
python programming languages.
+ The languages have their own web server application that contains all Google App
Engine services on a local computer. The web server also simulates a secure
sandbox environment.
+ The Google App engine SDK has APIs and libraries including the tools to upload
applications. The architecture defines the structure of applications that run on the
Google App engine.
1, Python :
* The Google App engine allows implementation of applications using python
programming language and running them on its interpreter.
* The Google App engine provides rich APIs and tools for designing web
applications, data modeling, managing, accessing apps data, support for mature
libraries and frameworks like Django.
* The main characteristics of Google App engine are its DataStore, configuration file
’pp-yaml and how it serves an application.
Blava :
* The Google App engine provides tools and APIs required for the development of
Web applications that run on the Google App engine Java run time
TECHNICAL PUBLICATIONS® - an up-thrust for knowledgeThe application interacts with the Ree ea be a ta any
technologies like Java Server Pages 05P6) which can De developed ying 4 %
* The GAE environment uses Java SE Runtime JRE platform 6 ang lbrarieg
the applications can access using APIs. .
* Java SDK has implementations for Java Data Objects (DO) and Jay, Penis
GPA) interface. :
* To exchange email messages with Google App engine, it provides the Geog
Engine mail service through the Java Mail API. aa a
+ Su like JavaScript, Ruby or Scalar is-also p,
Googe App eine mh ef VM compat mpi an ind
* When Google App engine gets a web request that corresponds ¢, the &
mentioned in the applications deployment descriptor it invokes , wy
corresponding to the request and uses Java Servlets APT to provide request
and accepts response data day,
* Google App engine makes it easy to build an applications that runs relia;
under heavy load and with large amounts of data.
* App engine includes the below features :
a) Dynamic web serving, with full support for common web technologies,
b) Persistent storage with queries, sorting and transactions
©) Automatic scaling and load balancing.
4) APIs for authenticating users and sending email using Google accounts
©) Scheduled tasks for triggering events at specified times and regular intervals
oe ar)
1. Write detailed steps to set the google app engine environment f uting any
your choice. Ea
| 4.2 | Amazon AWS
* Amazon Web Services (AWS) is a cloud computing platf
Provides customers with a wide array of cloud services
from Amazon tha
* Amazon first debuted its Amazon Web Services in 2006 as a way to enable the &
of online services by client-side applications or other web sites via HTTP, RES
SOAP protocols.
io
° Amazon bills customers for Amazon AWS based on their usage of the ¥#4
Amazon Web Services.
TECHNICAL PUBLICATIONs®ine AWS Marketplace is an online store fo
+ TH, compare and begin using AWS softwa,,
yn Web Services is a secure clo)
database storage, cont i
wer content del; offerir
Fasinesses scale and grow. very and other functionality to help
t Amazon Web Services custorners to
e and technical services,
: ud services platform, offering compute
jn 2017, AWS comprised more than 90 services
* computing, storage, networking, database,
deployment, Management, mobile,
Things:
, Today, Amazon Web Services provides a highly reliable, scalable, low-cost
infrastructure platform in the cloud that powers hundreds of thousands of
pusinesses in 190 countries around the world,
spanning a wide range including
analytics, application services,
developer tools and tools for the Internet of
» In 2016 AWS peered with Digital Currency Group to create a laboratory
environment allowing companies to experiment with block chain technologies.
+ In January 2018, Amazon launched an autoscaling service on AWS.
vinat is Amazon Web Services ?
+ Amazon Web Services (AWS) is a collection of remote computing services (web
services) that together make up a cloud computing platform, offered over the
Internet by Amazon.com.
«+ The AWS Cloud infrastructure is built around Regions and Availability Zones
(AZs). A Region is a physical location in the world where we have multiple AZs.
AZs consist of one or more discrete data centers, each with redundant power,
networking, and connectivity, housed in separate facilities.
These AZs offer you the ability to operate production applications and databases
that are more highly available, fault tolerant, and scalable than would be possible
from a single data center.
The AWS cloud operates 42 AZs within 16 geographic regions around the world,
with five more availability zones and two more regions coming online in 2017.
Each availability zone is designed as an independent failure zone. This means that
availability zones are physically separated within a typical metropolitan region
and are located in lower risk flood plains
——————
hrust for kno
TECHNICAL PUBLICATIONS” - an uo-thrust for knowledge|
will be sent to Amazon AP} g,.
-* Your request which includes all information
"© API Gateway will transfer the collected user information to an AWS
. ae any function will generate an e-mail and forward it to the 3nq
mail server using Amazon SES.
* Components of Amazon Web Service architec!
Lambda, Amazon Simple Email Service. A
* API Gateway is a front-door to access data, business logic and functionality AP
Gateway will provide a restful API endpoint for our AWS Lambda function,
* API works at small as well as large-scale and helps developers to manage
spectator, create and provide security to the API's.
a
PRoutess
ture are Amazon API Gateway, ays
me
et HTTPPpost
Contact US form ESUPSt Api gateway
‘Submit request
AWS
Lambda
Amazon SES
Fig. 4.2.1 AWS
¢ AWS Lambda is a compute service that runs your back-end code and responds fo
events such as object uploads to Amazon $3 bucket, Dynamo DB ot inapp
activity. The Lambda function will get all the information from a user through APL
Gateway.
* Amazon Simple email service helps us to send e-mail with minimal setup ald
maximum deliverability. It is integrated with AWS management console s°
you can monitor your sending activity. Amazon Simple Email Service helps 6
monitoring insecurity. q
TECHNICAL PUBLICATIONS® . an updthnist for knowiodoe i—, No capacity limits : Organizati
2 Peescty Asie vee ions launch different projects and the guess what
4, Provides speed and agility.
secure and reliable : AWS provides security and also helps to protect the privacy
as it is stored in AWS data centers, ity and also helps to pr pri
pisadvantages :
1 Limitations of Amazon EC2 : AWS sets default limits on resources which vary
from region to region. These resources consist of images, volumes and snapshots.
2, Technical support fee : AWS charges you for immediate support.
3, Security limitations.
pal Compute Service
« Compute services contains the fundamental element of cloud computing systems.
Example of compute service is Amazon EC2.
« Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides
resizable compute capacity in the cloud. It is designed to make web-scale
computing easier for developers and system administrators.
Amazon EC2 reduces the time required to obtain and boot new server instances
(called Amazon EC2 instances) to minutes, allowing user to quickly scale capacity,
both up and down, as your computing requirements change.
EC2 allows creating Virtual Machines (VM) on-demand. Pre-configured template
‘Amazon Machine Image (AMI can be used get running immediately. Creating
and sharing your own AMI is also possible via the AWS Marketplace.
Amazon Machine Image
Amazon Machine Image (AMI) is a template for software configuration
(Operating System, Application Server and Applications)
Machine imaging is a process that is used to provide system portability and
deploy systems in the cloud through capturing the state of systems
Provision and
using a system image.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledaee entire computer system ing 5
m called system imaging Prog con
makes @ usi Pay
A system image MKS Cade by (anaee c é
Single fie, The meee # Ag aystem ITT ate, permission 0 launch, vg me
and can be vs is a
lication server
«An AM! typi the instances (AT 4PP an Og 3c
reat Ww
1, Template : For # this AMI to launch instance, -
and applications) Pepeeeuntrcan Oe F
pee tenner the volumes t0 attach 10 the ing rs
Permissi am
: ; k device mapping * ‘That specific i
eae .d to launch a .
fe a. te meme es \s, an “plana s
ms, mn
« AMIs provide a isa eae the operating Syste! ervey re
instance. This will typically
and applications. issions that restrict the ability ,,
yunch perm 0
@ It also includes in the as ued AWS accounts. salty a block devig
cl espromy that once it is launched, .
ae Peeters (ie clurien tojetiacn fo the mstance
mapping specifies the volumes
ery -—Launch—=
* Once an AMI has been
Lt instance .
created and registered, it can
be used to launch new |
instances. An AMI can be Template for the Le copy
copied to different regions, footyoume &
and it can also be
deregistered. Fig. 42.2 shows Fig. 4.2.2 AMI lifecycle
an AMI lifecycle.
© Once an AMI is created, it is stored in an S3 bucket and the user can de
whether to make it available to other users or keep it for personal use
* Instance is AMI running on virtual servers in the cloud. Each instance type offers
different compute and memory facilities. Create an Amazon Machine Image
containing your applications, libraries, data and associated configuration settines
Or use pre-configured, templated images to get up and running immediately
* Auto scaling allows automatically scale of apacit durin
" acity up seamlessly during
demand spikes to maintain performance and aa
minimize costs. “ : demand
. aa load balancing automatically distribu
multiple Ama E ei ; no
oe ama EC2 instances. {t a
applications by launcl ¥ lure: reall
PP Y launching application ir : :
ate availability zones.ing. on
For the root volume for the instances (An application server, an Og,
and applications)
2. Permissions to launch : Which account can use this AMI to launch instances,
3. Block device mapping : That specifies the volumes to attach to the instance
during its launch time.
AMIs provide a template for the root volume required to launch a particular
instance. This will typically include the operating systems, an application server
and applications.
It also includes in the AMI are launch permissions that restrict the ability to
launch instances from that AMI to defined AWS accounts. Finally, a block device
mapping specifies the volumes to attach to the instance once it is launched.
Once an AMI has been "ergbcn =
created and registered, it can i
be used to launch new Create—' nec
instances. An AMI can be Template for the amit Loopy ole
copied to different regions, root volume PY ee
i AML #2
and i it cary also be Denegeten
deregistered. Fig. 4.2.2 shows eee NARS
an AMI lifecycle.
Once an AMI is created, it is stored in an S3 bucket and the user can decide
whether to make it available to other users or keep it for personal use.
Instance is AMI running on virtual servers in the cloud. Each instance type offers
different compute and memory facilities. Create an Amazon Machine Image
containing your applications, libraries, data and associated configuration settings.
Or use pre-configured, templated images to get up and running immediately.
Auto scaling allows automatically scale of the capacity up seamlessly during
demand spikes to maintain performance and scales down during demand lulls to
minimize costs.
Elastic load balancing automatically distributes incoming application traffic across
multiple Amazon EC2 instances. It provides tools to build failure resilient
applications by launching application instances in separate availability zones.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledge4-9 Cloud Deployment Environment
Mis can be attained directly from AWS, can be created and shared through
wunities or can be purchased from vendors via the AWS Marketplace.
y only for resources actually consume, instance-hours. VM_ Import/Export
enables user t0 easily import virtual machine images from existing environment to
amazon EC2 instances and export them back
oto is a Python package that
web Services.
at any time.
Provides programmatic connectivity to Amazon
the AMI files are encrypted and compressed for security purpose and stored in
Amazon $3 (Simple Storage System) buckets as a set of 10 MB chunks.
Machine imaging is mostly run on virtualization platform due to this it is also
called as virtual appliances and running virtual machines are called instances.
+ The AMI file system is not a standard bit-for-bit image of a system that is
common to many disk imaging programs. AMI omits the kernel image and stores
a pointer to a particular kernel that is part of the AWS kernel library.
Among the choices are Red Hat Linux, Ubuntu, Microsoft Windows, Solaris and
others. Files in AMI are compressed and encrypted and an XML file is written that
describes the AMI archive.
Machine images are sometimes referred to as "virtual appliances’, systems that are
meant to run on virtualization platforms.
[FED Ec2 Instances
« Amazon Elastic Compute Cloud (Amazon EC2) instances represent virtual
machines. EC2 instances are launched by created by an Amazon Machine Image
(AMI. An AWS template that describes and defines the OS and operating
environment for one or more EC2 instances of one or more EC2 instance types.
Each instance type delivers a mix of CPU, memory, storage and networking
capacity, across one or more size options and should be carefully matched to your
workload's unique demands.
EC2 functions
1, Load variety of operating system,
2. Install custom applications.
3. Manage network access permission.
4. Run image using as many/few systems as customer desire.
* Currently available configurations for EC2 instances are as follows
1, Standard instances : Among the most popular and widely used EC2 instance
types. Standard instances have memory to CPU ratios suitable for most
———__
TECHNICAL PUBLICATIONS® - an up-thrust for knowledae
_Peietard tee + rpc 2 odie
5 1 EC2 high memory instances offer 6, 9, 12, 18, ang
y in an instance. These instances are purpose-built to run larg,
r y databases.
_ 4. High-CPU instances : This types of instances are used in compute-intensive
applications.
5. Cluster compute instances : Cluster compute instances provide
high-performance network interconnect along with a high-performance CPU.
6. Cluster GPU instances : This class provides instances featuring graphic
Processing units (GPUs) and high compute power, large memory and
extremely high I/O and network performance.
EC2 instances can be run either by using the command-line tools provided by
Amazon, which connects the Amazon Web Service that provides remote access to
the EC2 infrastructure.
* EC2 advantages :
1. Amazon EC2 enables you to increase or decrease capacity within minutes.
-
2. User have complete control of your Amazon EC2 instances.
3. Support flexible cloud hosting services.
4.
Secure : Amazon EC2 works in conjunction with Amazon VPC to provide
security and robust networking functionality.
5.
. Reliable : Amazon EC2 offers a highly reliable environment where replacement
instances can be rapidly and predictably commissioned.
Configuring Amazon EC2 Linux instances
* Let's get started with Amazon Elastic Compute Cloud (Amazon EC2) by
launching, connecting to and using a Linux instance. An instance is a virtual
server in the AWS cloud. With Amazon EC2, you can setup and configure the
operating system and applications that run on your instance.
* When you sign up for AWS, you can get started with Amazon EC2 using the
AWS Free Tier.
+ The instance is an Amazon EBS-backed instance (meaning that the root volume is
an EBS volume). You can either specify the availability zone in which your
instance runs or let Amazon EC2 select an availability zone for you. When you
launch your instance, you secure it by specifying a key pair and security group:
TECHNICAL PUBLICATIONS® - an up-thrust for knowledgeyou connect to your instance,
- that You specified when laun
you must specify the private key of the key
ching your instance.
Step 1
Signup for
‘AWS
Step 8 ae
Be Step 6 ‘St
Clesnup onnecto (aunchén |= Feraatata
instance instance security group
Fig. 4.2.3 Steps to signup for EC2
4; SignUp for AWS
+ When you signup for Amazon Web Services (AWS), your AWS account is
automatically signed up for all services in AWS, including Amazon EC2. You are
charged only for the services that you use.
+ With Amazon EC2, you pay only for what you use. If you are a new AWS
customer, you can get started with Amazon EC2 for free.
sep 2: Create an IAM user
« Services in AWS, such as Amazon EC2, require that you provide credentials when
you access them, so that the service can determine whether you have permission
to access its resources. The console requires your password.
* You can create access keys for your AWS account to access the command line
interface or API. However, we don't recommend that you access AWS using the
credentials for your AWS account; we recommend that you use AWS Identity
‘Access Management (IAM) instead.
and
* Create an IAM user and then add the user to an IAM group
permissions or grant this user administrative permissions. You can then access
‘AWS using a special URL and the credentials for the IAM e
for AWS but have not created an IAM user for yourself, you can create one usi
the IAM console.
ser. If you
Step 3: Create a key pair
* AWS uses public-key cryptography to secure the login information for yor
instance. A Linux instance has no password; you use a key pair to log ir
instance securely. You specify the name of the key pair when you launch your
instance, then provide the private key when you log in usin;
ys®
TECHNICAL PUBLICATIONS® - an up-thrust for knowledge* If you haven't created a key pair already, you can create one using the
EC2 console, Note that if you plan to launch instances in multiple Fegiong
Need to create a key pair in each region. You
4: Create a Virtual Private Cloud (VPC) . ;
it cae enables you to launch AWS revert virtual Networ
You've defined, known as a Virtual Private Cloud (V1 : 5 eee Eca ine
types require that you launch your instances in a VPC. i ave a defaule Vee |
You can skip this section and move to the next task, oS e a security Btoup. 7
determine whether you have a default VPC, open the Amazon EC2 Console sy
look for default VPC under account attributes on the dashboard,
Step 5 : Create a security group
* Security groups act as a firewall for associated instances, controlling both inby
and outbound traffic at the instance level. You must add rules to a Security
that enable you to connect to your instance from your IP address using SSH. You
can also add rules that allow inbound and outbound HTTP and HTTpg acces,
from anywhere. Note that if you plan to launch instances in multiple Tegions
You'll need to create a security group in each region.
Step 6: Launch an instance
© You can launch a Linux instance using the AWS management console as describeg
in the following procedure.
1. Open the Amazon EC2 console at https://console.aws.amazon.com/ect/,
2. From the console dashboard, choose Launch Instance.
3
; The Choose an Amazon Machine Image (AMD page displays a list of basic
configurations, called Amazon Machine Images (AMIs), that serve as templates
for your instance. Select an HVM version of Amazon Linux 2. Notice that these
AMIs are marked "Free tier eligible."
4 On the Choose an Instance Type page, you can select the hardwan
configuration of your instance. Select the t2.micro type, which is selected by
default. Notice that this instance type is eligible for the free tier.
wo
Choose Review and Launch to let the wiz
‘ard complete the other configuration
settings for you.
6 On the Review Instance Launch page,
the wizard created and selected a secui
security group or alternatively you cai
created when getting setup using the fol
see tht
under security groups, you'll see th!
y re
rity group for you. You can use #
y you
n select the security group that f
lowing steps.
a) Choose Edit security groups,
TECHNICAL PUBLICATIONS’
@n up-thrust for knowledgeby On the Configure g,
security group is sel
¢) Select your securi
then choose er Lee the list of existing security groups and
7, On the Review Instance Launch page, choose Launch.
8. ee ae a key pair, select Choose an existing key pair, then select
the acknowledpenent crent°d When getting setup. When you are ready, select
gement check box and then choose launch instances.
curity Group page, ensure that Select an existing
onfirmati
Ac on page lets you know that your instance is launching. Choose
iew Insti
ae nstances to close the confirmation page and return to the console.
the Inst.
10. On the Instances screen, you can view the status of the launch. It takes a short
time for an ins!
aie Ate ae to launch. When you launch an instance, its initial state is
pending. After the instance starts, its state changes to running and it receives a
public DNS name.
11. It can take a few minutes for the instance to be ready so that you can connect
to it Check that your instance has passed its status checks; you can view this
information in the status checks column
step 7 : Connect to your Instance
Your computer OS
Several ways to connect to your Linux instance is shown in Table 4.2.1.
Topic
Tux Connecting to your Linux instance using SSH.
Windows Connecting to your Linux instance from Windows using PuTTY.
Connecting to your Linux instance from Windows using Windows
Subsystem for Linux
Other Connecting to your Linux instance using MindTerm.
Table 4.2.1 Ways to connect to Linux instance
Step 8 : Cleanup your instance
After you've finished with the instance, you should cleanup by terminating the
instance.
Terminating an instance effectively deletes it; you can't reconnect to an instance
after you've terminated it.
If you launched an instance that is not within the AWS free tier, you'll stop
incurring charges for that instance as soon as the instance status changes to
shutting down or terminated. If you'd like to keep your instance for later, but not
incur charges, you can stop the instance now and then start it again later.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledgedata storage and informs
Storage Service (S3).
ices for
+ AWS provides a collection of re
management. It is represented by
arma imple web services interface that you Ae = 3 ee
oe aes = ar fata, at any time, from ae oes sana
ieve an} ‘ , sud
as a raw data store for IoT systems for storing raw data a
data, audio and video data.
ang
AWS
Response Queue
tt)
os Request Queue
Fig. 4.2.4 Amazon $3 working
C2 Instances
processing
server
Features :
1. Unlimited storage.
- Highly scalable : In terms of storage, request rate and concurrent users.
. Reliable : Store redundant data in multiple facilities and on multiple devices.
easiest Eexbility tolcontrol who / how / when / where to access the dati
aR won
. Performance : Choose region to optimize for latency / minimize costs.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledgewt back in the queue.
aie San ee distributed system containing multiple servers within
ations. Amazon doesn't offer you a GUI based tool to
oe your data. You can use one of the several tools online or build one through
s.
Amazon EC2 provides three type of storage option : Amazon EBS, Amazon S3 and
Instance Storage. Amazon EBS (Elastic Block Store) provides with persistent,
block-level storage. Basically additional hard disk that you can attach to instance.
It suitable for apps which require database, filesystem, block level storage.
A bucket is a container for objects stored in Amazon $3. Every object is contained
in a bucket. For example, if the object named "photos/puppy.jpg" is stored in the
rakshita bucket, then itis. addressable using the «= URL
http:/ /rakshita.s3.amazonaws.com/photos/puppy jpg
Buckets serve several purposes : They organize the Amazon $3 namespace at the
highest level, they identify the account responsible for storage and data transfer
charges, they play a role in access control and they serve as the unit of
aggregation for usage reporting.
Objects are the fundamental entities stored in Amazon $3. Objects consist of object
data and metadata. The data portion is opaque to Amazon $3. The metadata is a
set of name-value pairs that describe the object. These include some default
metadata, such as the date last modified and standard HTTP metadata, such as
content-type. You can also specify custom metadata at the time the object is
stored.
A key is the unique identifier for an object within a bucket, Every object in a
bucket has exactly one key. Because the combination of a bucket, key and version
ID uniquely identify each object, Amazon $3 can be thought of as a basic data
map between "bucket + key + version” and the object itself. Every object in
Amazon $3 can be uniquely addressed through the combination of the web service
endpoint, bucket name, key and optionally, a version,
TECHNICAL PUBLICATIONS® - an up-thrust for knowledge‘ephemeral0 ephemeralt
Instance store
Host computer Amazon EBS Amazon S3
Fig. 4.2.5 Amazon EBS and S3
Bucket
° Amazon S3 defines a bucket name as a series of one or more labels, separated by
periods, that adhere to the following rules : The bucket name can be between 3
and 63 characters long, and can contain only lower-case characters, numbers,
periods and dashes
Amazon $3 defines a bucket name as a series of one or more labels, separated by
periods, that adhere to the following rules :
1. The bucket name can be between 3 and 63 characters long and can contain
only lower-case characters, numbers, periods and dashes.
2. Each label in the bucket name must start with a lowercase letter or number.
3. The bucket name cannot contain underscores, end with a dash, have
consecutive periods or use dashes adjacent to periods.
4. The bucket name cannot be formatted as an IP address (198.51.100.24).
A bucket is owned by the AWS account that created it, By default, you can create
up to 100 buckets in each of your AWS accounts. If you need additional buckets,
you can increase your bucket limit by submitting a service limit increase
The following are the rules for naming $3 buckets in all AWS Regions :
1. Bucket names must be unique across all existing bucket names in Amazon $3.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledge~ 6, Bucket names must be a
he ia
MUBt not contin uppercase characters
Bucket names must start with a lowercase | ae 4
letter or number. — ;
eries of
Cain . OS ‘Ss of one or more labels. Adjacent labels are
lod (.). Bucket names can contain letters,
pce and hyphens. Each label must start and end with a lowercase letter
or
7, Bucket names must not be fi
192.168.5.4). formatted as an IP address (for example,
8, When you use Virtual hosted-style buckets with Secure Sockets Layer (SSL), the
SSL wildcard certificate only matches buckets that don't contain periods. To
work around this, use HTTP or write your own certificate verification logic.
We recommend that you do not use periods (".") in bucket names when using
virtual hosted-style buckets,
oo Amazon Elastic Block Store
Amazon Elastic Block Store (Amazon EBS) provides persistent block storage
volumes for use with Amazon EC2 instances in the AWS Cloud.
Each Amazon EBS volume is automatically replicated within its Availability Zone
to protect you from component failure, offering high availability and durability.
EBS volumes are highly available and reliable storage volumes that can be
attached to any running instance that is in the same Availability Zone.
EBS volumes are particularly well-suited for use as the primary storage for file
systems, databases, or for any applications that require fine granular updates and
access to raw, unformatted, block-level storage.
The size of an EBS volume can be configured by the user and can range from
1GB to 1 TB.
The network-based EBS storage service is delivered in volumes, which can be
attached to an EC2 instance and used just like a disk drive. Because a volume can
become unformatted, it must have a file system installed (formatted) on it before it
can be used.
Amazon EBS is well suited to both database-style applications that rely on random
reads and writes, and to throughput-intensive applications that perform long,
continuous reads and writes.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledge~ F ‘uses AWS Key Management Service (AWS KMS) master
creating encrypted volumes and any snapshots created from your
EBS can make your applications more reliable, because the storage is separate
from any specific instance.
A large repository of public data set snapshots can be restored to EBS volumes
and seamlessly integrated into AWS cloud-based applications.
Performance metrics, such as bandwidth, throughput, latency and average queue
length, are available through the AWS Management Console.
These metrics, provided by Amazon CloudWatch, allow you to monitor the
performance of your volumes to make sure that you are providing enough
performance for your applications without paying for resources you don't need.
Amazon EBS storage costs depend on how much EBS storage, in terms of
gigabyte-per-month, is provisioned in a particular account.
While EC2 instances only accrue charges while they're running, the EBS volumes
attached to instances continue to retain information and hence accrue charges,
even when the instance is stopped.
An EBS snapshot is a point-in-time backup of an EBS volume. It is a "copy" of the
data on in EBS volume. EBS snapshots are billed at a lower rate than active EBS
volumes.
If an EBS block has low access volume, the active volume of this EBS block can be
deleted after the information stored in EBS is copied to an EBS Snapshot.
EBS Snapshots
Amazon EBS provides the ability to create snapshots (backups) of any EBS volume
and write a copy of the data in the volume to Amazon $3, where it is stored
redundantly in multiple Availability Zones.
The volume does not need to be attached to a running instance in order to take @
snapshot.
As you continue to write data to a volume, you can periodically create a snapshot
of the volume to use as a baseline for new volumes.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledgestored from encrypted snapshots are automat!
| The snapshots can be shared with specific AWS accounts or n
en you create snapshots,
olume's total size. For a succe.
for any additional data beyond
Snapshots are incremental ba
that have changed after your
you incur charges in Amazon $3 based on the
ssive snapshot of the volume, you are only charged
the volume's original size.
ckups, meaning that only the blocks on the volume
Most recent snapshot are saved.
Amazon ElastiCache
« Itis a fully managed caching service,
« ElastiCache is Protocol-compliant with Memcached, an open source,
high-performance, distributed memory object caching system for speeding up
dynamic web applications by alleviating database load.
According to the Amazon website, ElastiCache makes it easy to deploy, operate,
and scale an in-memory cache in the cloud.
The service improves the performance of web applications by enabling information
retrieval from a fast, managed, in-memory caching system, instead of relying
entirely on slower disk-based databases.
ElastiCache is a managed, in-memory data store service. It has two engines AWS
Redis and Memcached which is used to power real-time applications.
Memcached is a general-purpose distributed memory caching system. It is often
used to speed up dynamic database-driven websites by caching data and objects in
RAM to reduce the number of times an external data source must be read.
Memcached is free and open-source software, licensed under the Revised BSD
license.
ElastiCache offloads the administrative overhead of running a caching service by :
1. Creating the server pool based on commands issued via the AWS Management
Console or API.
2. Managing the pool to ensure caching server availability.
TECHNICAL PUBLICATIONS® - an uo-thrust for knowledgepea ear cd
8 } i
che runs in the Amazon Vir our cache cluster.
: “complete control over network access t y' er eet 2
_® Amazon ElastiCache eer sd infrastTUctue® cai ede ar
associat mana} ene
Paes iti ane a of overloaded databases, w! ebsite ang
sys mitigat
application load times.
* Node is the smallest building block
chunk of secure, network-attached
either Memcached or Redis.
* Memeached cluster can have up to 20 nodes.
Amazon SimpleDB weae..
‘* SimpleDB provides a simplified data model based on the re ears a a8e date
model. SimpleDB provides support for semi poe data, the model for which
is based on the concept of domains, items, and attributes.
of an ElastiCache enon Misa ce
RAM. Each cache node runs Fc :
This service works in close conjunction with Amazon Simple Storage Service
(Amazon $3) and Amazon Elastic Compute Cloud, collectively providing the
ability to store, process and query data sets in the cloud. These services are
designed to make web-scale computing easier and more cost-effective for
developers.
SimpleDB differs from relational databases where user must define a schema for
each database table before user can use it and where user must explicitly change
that schema before user can store data differently.
In SimpleDB, there is no schema requirement. Although user still have to consider
the format of data, this approach has the benefit of freeing from the time it takes
to manage schema modifications.
The lack of schema means that there are no data types; all data values are treated
as variable length character data. As a result, there is literally nothing extra to do
if user want to add a new field to an existing database. Just add the new field to
whichever data items require it. There is no rule that forces every data item to
have the same fields. 7
The drawbacks of a schema-less database include the lack of automatic integrity
checking in the database and an
é mereased burden on the application to handle
formatting and type conversions,
So! =... ee——s—C—C or
CHNICAL PUBLICATIONS® . 4, Up-theust for knowled
r knowledae22 Cloud Deployment Environment
‘amazon CloudFront
«sag 's @ content delivery web service (CDN). It integrates with
ier A Services to give developers and businesses an easy way to
jstribute content to users across the world with low latency, high data transfer
js and no minimum usage commitments,
jon CloudFront uses RTMP protocol for video streaming and HTTP or
for web content. Content delivery networks are suited for delivery of
pulky data, like video streaming, downloading larger files and software and to
make website access faster.
‘Amazon CloudFront is a pay-as.
-you-go model that can easily be integrated with
ail Amazon Web Services.
« Amazon CloudFront operates by caching the instance of each object on its
different CDN locations, therefore reducing the time it takes to deliver content.
+ Amazon CloudFront accesses the data from Amazon $3 through supported
application programming interfaces and places it in regional data buckets.
advantages :
1, No server hardware infrastructure to set up or maintain
No up-front investment in software licenses.
No long -term commitment.
Global delivery using CloudFront.
Pay for what you use.
Easy to get started with self service management console.
EE Microsoft Azure
* Windows Azure is a cloud computing platform and infrastructure, created by
Microsoft, for building, deploying and managing applications and services through
a global network of Microsoft - managed data centers.
Azure queue storage is a service for storing large numbers of messages that can be
accessed from anywhere in the world via authenticated calls using HTTP or
HITPS. A single queue message can be up to 64 KB in size and a queue can
contain millions of messages, up to the total capacity limit of a storage account
Azure is a virtualized infrastructure to which a set of additional enterprise serv
has been layered on top, including, a virtualization service called Azure AppFabric
that creates an application hosting environment. AppFabric is a cloud-enabled
Version of the .NET framework.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledge5. Offer a wide range of services. 5
Azure has three components : compute, storage and fabric.
1. Compute : Windows Azure provides a hosting environment for managed cog,
It provides a computation service through roles. Windows Azure supsoa.
three types of roles :
@) Web roles used for web application programming and supported by IIs7_
b) Worker roles are also used for background processing of web roles.
©) Virtual Machine (VM) roles are generally used for migrating window.
server applications to Windows Azure in an easy way.
2. Storage : Windows Azure provides storage in the cloud. It provides four
different types of storage services :
a) Queues for messaging between web roles and worker roles.
b) Tables for storing structural data.
©) BLOBs (Binary Large Objects) to store text, files or large data.
d) Windows Azure Drives (VHD) to mount a page blob. They can easily be
downloaded and uploaded via biobs.
3. AppFabric provides infrastructure services for developing, deploying and
managing Windows Azure application. It provides five services : Service bus
Access, Caching, Integration and Composite.
Fig. 4.3.1 shows Windows Azure platform architecture.
Microsoft Azure is a cloud computing service created by Microsoft for building
testing, deploying and managing applications and services through a glo
network of Microsoft-managed data centers
It provides software as a service (SaaS), platform as a service and infrastructure ®
a service and supports many different Programming languages, tools
TECHNICAL PUAL ICaTIONs® 7 AM UNsthiiet fae lnnwladneae
4-23
Cloud Deployment Environment
~neworks, including b ; ;
ic a 1B both Microsoft-specific and third-party software and
Cloud applications
‘SQL Azure Be
services
Cloud platform services
Application
development SDK
Windows Azure
‘Management services.
Security services
crm Storage Network
resources resources resources
Fabric
Hosting platform
Windows Azure platform
Fig. 4.3.1 Windows Azure platform architecture
Windows Azure provides resources and services for consumers. For example,
hardware is abstracted and exposed as compute resources
Physical storage is abstracted as storage resources and exposed through very
well-defined interfaces.
A common windows fabric abstracts the hardware and the software and exposes
ge resources.
virtual compute and stora
nis automatically managed and mor
Each instance of an applicatio mnitored for
availability and scalability.
If an application goes down, the Fabric is notified and a new instance of the
Because virtualization is a key element in cloud computing,
application is created
be made on the state of the underlying hardware hosting the
no assumption must
application
of Microsoft Azure
Advantages
offers high availability.
1. Microsoft Azure
a strong security profile.
2. It offers you
3. It is a cost-effective solution for an IT budget.
use any framework, language OF tool
5. Azure allows businesses to build a hybrid infrast
4. Azure allows you to
ructure
~ an up-thrust for knowledne
TECHNICAL PUBLICATIONSEucalyptu: e > ding AWS-compatible private
source software for buil aig
uae ae Infrastructure as a Service (IaaS) product, Eucalyptus aj},
your users to provision your compute and storage resources on-demand,
Eucalyptus has the following key features :
a) Support for multiple users with the help of a single cloud.
‘b) Support for linux and windows virtual machines.
¢) Accounting reports.
“d) Use of WS-security to ensure secure communication between internal resources
and processes.
©) The option to configure policies and service level agreements based on users
and the environment.
f) Provisions for group, user management and security groups.
Challenges
a) Extensibility : Simple architecture and open internal APIs.
b) Client-side interface : Amazon's EC2 interface and functionality (familiar and
testable).
©) Networking : Virtual private network per cloud and must function as an
overlay.
d) Security : Must be compatible with local security policies.
e) Packaging, installation, maintenance
important constituency for uptake.
Fig. 4.4.1 shows Eucalyptus architecture.
: system administration staff is an
TECHNICAL PUBLICATIONS® - an up-thrust for knowledgeNode
controller
Fig. 4.4.1 Eucalyptus architecture
+ Components of eucalyptus in cloud computing :
4. Node controller : The Node Controller (NC) is the component that executes on
the physical resources that host VM instances and is responsible for instance
start up, inspection, shutdown and clean-up.
2, Cluster controller : A collection of NCs that logically belong together report to
a single Cluster Controller (CC) that typically executes on a cluster head node
or server that has access to both private and public networks. The CC is
responsible for gathering state information from its collection of NCs,
scheduling incoming VM instance execution requests to individual NCs and
managing the configuration of public and private instance networks.
3, Cloud controller : Each Eucalyptus installation includes a single Cloud
Controller (CLC) that is the user-visible entry point and global decision-making
component of a Eucalyptus installation. The CLC is responsible for processing
incoming user-initiated or administrative requests, making high-level. VM
instance scheduling decisions, processing Service-Level Agreements (SLAs) and
maintaining persistent system and user metadata
+ The CLC itself is composed of a collection of services that handle user requests
and authentication, persistent system and user metadata, and the management and
monitoring of VM instances:
4. Client interface : The CLC's client interface service
translator between the internal Eucalyptus system interfaces and some defined
external client interface
ntially acts as a
— .____.eSeeeee
TECHNICAL PUBLICATIONS - an up-thrist for knowledge4-26
Cloud Computing
that describes a Ww,
document that observe
ides a WSDL document descri
* For example, Amazon ee ‘their service as well ne: a pps ah oa =
aan SiH ee both of which can PE ‘
' jects. :
interface service into Eucalyptus internal 0P) supporting primary tasks, su,
5. Administrative interface : In addition fo
id infrastructure must ,,
starting and stopping instances,
Sciministrative tasks, such oe oct ap based interface, implemented by
Eucalyptus supports such tasks though a Web Past’ tn howene
cloud controller and command line toe ae tl er, the
i interface is unique to Eucalyptus.
Pager aot of virtual machine ae ae. ele
is managed by a component of the CLC named the Vm‘ ice,
7. SLA implementation and management : Service-level serra (SLAs) ate
implemented as extensions to the message handling ary ve eh can inspec,
modify, and reject the message, as well as the oo stored by VmControl.
* Eucalyptus does not assume that all worker nodes will have publicly routable |p
addresses. Each cloud allocation will have one or more public IP addresses, ay
cloud images have access to a private network interface. Two types of networks
internal to a cloud allocation.
as
a low
d removing users and disk images
(ZEEH Eucalyptus installation
* To install Eucalyptus, perform the following tasks :
1, Plan your installation : In order to get the most out of a Eucalyptus
deployment.
2. Configure dependencies : Before you install Eucalyptus, ensure you have the
appropriate dependencies installed and configured
. Install repositories : Downloads RPM packages
ae}
. Configure eucalyptus.
. Start eucalyptus.
. Register eucalyptus services.
Naw
. Configure the runtime environment
* Features of eucalyptus in cloud computing are
a) Supports both Windows and Linux virtual machines
») API is viable with the Amazon EC2 platform
eee tmble Sioraze Service (53) and Amazon Web Services (AWS).
a
ee ae SUBLICATIONS © gt ian knowledgeg in a matter of minutes,
ling the node controller is a very simple process. Once your machine boots
the Eucalyptus Faststart D’ Beta 9 all
VD, select the option ‘Install CentOS
lyptus Node Controller’ from the boot screen, ee
the cloud controller :
tallation of the cloud controller is very similar to the nodes, with a few
- exceptions. Once your machine boots from the Eucalyptus Faststart DVD, select
the option ‘Install CentOS 6 with Eucalyptus Frontend’ from the boot screen.
'. Again, select the appropriate ‘Language’ and ‘Keyboard settings’ according to your
needs.
_« Provide a ‘Static IP' and a suitable 'Host Name’ to your cloud controller in the
‘Network Configuration’ wizard.
* Once done, you will be provided with an interface to supply a ‘Public IP Range/
List’ for your Eucalyptus cloud. You need to enter a valid IP address range here.
These public IPs will be mapped to individual Eucalyptus instances (virtual
machines) once they are launched in the cloud.
Advantages of Eucalyptus
+ Eucalyptus can be utilised to benefit both the eucalyptus private cloud and the
eucalyptus public cloud.
Clients can run Amazon or Eucalyptus machine pictures as examples on both
clouds.
It isn't extremely mainstream on the lookout yet is a solid contender to CloudStack
and OpenStack.
It support application programming interface similarity with all the Amazon Web
Services
* Eucalyptus can be utilised with DevOps apparatuses like chef and puppet:
Ls OpenStack
* Openstack is a recently oper-sourced, IaaS cloud-computing platform founded by
Rackspace Hosting and NASA and is used widely in industry.
TECHNICAL PUBLICATIONS® - an up-thrust for knowledgeCloud Computing 4-28
OpenStack is an open-source cloud p wurces throughout a data
Pools of compute, storage, and networking reso al)
managed by a dashboard that gives aiminsttors contol While empowering
‘users to provision resources through a web interface, intfornt that oo
To produce the ubiquitous Open-Source cloud ctlenee Be dis es mel Be
theresa public and private cloud providers regar by being Simple
to implement and massively scalable.
. follows :
the OpenStack services. With this web GUI, user can perform most OP EFations
Perera aca Une auch ce ,TE/acdresees and seam
access controls,
Keystone is a framework for authentication and authorization for all i,
OpenStack services. It handles API requests as well as providing configura,
catalog, policy, token and identity services. Keystone is a framework fg,
authentication and authorization for all the OpenStack services.
- Nova : It provides virtual servers upon demand. Nova is the most complicate
and distributed component of OpenStack. A large number of Processes