Module 2
Module 2
Implementations
Module II
A Classification of Cloud Implementations-
• Amazon Web Services - IaaS,
• The Elastic Compute Cloud (EC2),
• The Simple Storage Service (S3),
• The Simple Queuing Services (SQS),
• VMware vCloud - IaaS, vCloud Express,
• Google AppEngine - PaaS, The Java Runtime Environment
What is AWS?
• AWS stands for Amazon Web Services.
• The AWS service is provided by the Amazon that uses
distributed IT infrastructure to provide different IT resources
available on demand.
• It provides different services such as infrastructure as a
service (IaaS), platform as a service (PaaS) and
packaged software as a service (SaaS).
• Amazon launched AWS, a cloud computing platform to allow
the different organizations to take advantage of reliable IT
infrastructure.
Amazon Cloud Computing models
Uses of AWS
• A small manufacturing organization uses their expertise to
expand their business by leaving their IT management to the
AWS.
• A large enterprise spread across the globe can utilize the
AWS to deliver the training to the distributed workforce.
• An architecture consulting company can use AWS to get the
high-compute rendering of construction prototype.
• A media company can use the AWS to provide different types
of content such as ebox or audio files to the worldwide files.
AWS
Pay-As-You-Go
• Based on the concept of Pay-As-You-Go, AWS provides the
services to the customers.
• AWS provides services to customers when required without
any prior commitment or upfront investment. Pay-As-You-Go
enables the customers to procure services from AWS.
• Computing
• Programming models
• Database storage
• Networking
Pay-As-You-Go
Amazon current status
Amazon - IaaS
• Infrastructure as a service is one of Amazon Web Services that
focuses on providing infrastructure services based on cloud
computing technology.
• It’s not difficult to name an organization that provides IaaS but
among the top providers worldwide, AWS stands out as the front
runner for IaaS cloud services.
• It has clients in 190 countries and 66 available Zones within
21 geographic regions.
• IaaS Amazon Service is used to replace physical resources, such
as servers, with virtual resources hosted and managed by
Amazon.
Amazon - IaaS
• System users can run any operating system or
application on these leased servers, without incurring any
extra fees for maintenance and operation.
• AWS IaaS helps businesses to digitize more quickly while
allowing them to integrate all their data on a single
platform.
• Additionally, it enables businesses to scale up and down at
any given time to suit their needs.
• All these features make AWS IaaS a widely-used platform by
companies nowadays. Magento can be considered a typical
example of IaaS in AWS.
AWS IaaS Benefits
• Availability of separate development environment
• Hardware and operating system specifications for the service can
be selected and used directly from the network
• Allow expanding the resources of the server in terms of quantity
and functionality
• No errors or extra costs arise while upgrading the system
AWS IaaS Characteristics:
Characteristics that define IaaS include:
• Resources are available as a service
• Cost depends on the consumption
• Highly scalable
• Allow multiple users to access a single piece of hardware
• The organization has complete control of the infrastructure
• Dynamic and flexible
Advantages of AWS
1) Flexibility
• We can get more time for core business tasks due to the
instant availability of new features and services in AWS.
• It provides effortless hosting of legacy applications. AWS does not
require learning new technologies and migration of applications to
the AWS provides the advanced computing and efficient storage.
• AWS also offers a choice that whether we want to run the
applications and services together or not. We can also choose to
run a part of the IT infrastructure in AWS and the remaining part in
data centres.
2) Cost-effectiveness
• AWS requires no upfront investment, long-term commitment,
and minimum expense when compared to traditional IT
infrastructure that requires a huge investment.
3) Scalability/Elasticity
• Auto-scaling and elastic load balancing techniques are automatically
scaled up or down, when demand increases or decreases respectively. AWS
techniques are ideal for handling unpredictable or very high loads.
Due to this reason, organizations enjoy the benefits of reduced cost and
increased user satisfaction.
4) Security
• AWS provides end-to-end security and privacy to customers.
• AWS has a virtual infrastructure that offers optimum availability while
managing full privacy and isolation of their operations.
• Customers can expect high-level of physical security because of Amazon's
several years of experience in designing, developing and maintaining large-
scale IT operation centers.
• AWS ensures the three aspects of security, i.e., Confidentiality, integrity,
and availability of user's data.
AWS Global Infrastructure
• AWS is a cloud computing platform which is globally available.
• The things which interact with the cloud sits inside the data centers.
• Edge locations are more than regions. Currently, there are over 150
edge locations.
• Edge location is not a region but a small location that AWS have. It is
used for caching the content.
• Edge locations are mainly located in most of the major cities
to distribute the content to end users with reduced latency.
• For example, some user accesses your website from Singapore; then
this request would be redirected to the edge location closest to
Singapore where cached data can be read.
Regional Edge Cache
• AWS announced a new type of edge location in November 2016,
known as a Regional Edge Cache.
• Regional Edge cache lies between CloudFront Origin servers and the
edge locations.
• Data is removed from the cache at the edge location while the data
is retained at the Regional Edge Caches.
• When the user requests the data, then data is no longer
available at the edge location. Therefore, the edge location
retrieves the cached data from the Regional edge cache
instead of the Origin servers that have high latency.
AWS Free Tier
• How to SignUp to the AWS platform
• Firstly visit the website https://aws.amazon.com.
• Click on the Complete Sign Up to create an account and fill the
required details.
• For example, if you pay all your upfronts and you do 3 years
contract, then only you can get a maximum discount,
• if you do not pay all upfronts and do one year contract then you
will not be able to get as much discount as you can get If you do
3 year contract and pay all the upfronts.
Types of Reserved Instances:
• Standard Reserved Instances
• It provides a discount of up to 75% off on demand. For example, you
are paying all up-fronts for 3 year contract.
• It is useful when your Application is at the steady-state.
• Convertible Reserved Instances
• It provides a discount of up to 54% off on demand.
• Like Standard Reserved Instances, it is also useful for the steady
state applications.
• Scheduled Reserved Instances
• Scheduled Reserved Instances are available to launch within the
specified time window you reserve.
• It allows you to match your capacity reservation to a predictable
recurring schedule that only requires a fraction of a day, a week,
or a month.
Spot Instances
• It allows you to bid for a price whatever price that you want
for instance capacity, and providing better savings if your
applications have flexible start and end times.
• Spot Instances are useful for those applications that have flexible
start and end times.
• It is useful for those users who have an urgent need for large
amounts of additional computing capacity.
Spot Instances
• EC2 Spot Instances provide less discounts as compared
to On Demand prices.
• Amazon EBS allows you to create storage volumes and attach them to
the EC2 instances.
• Once the storage volume is created, you can create a file system on the
top of these volumes, and then you can run a database, store the files,
applications or you can even use them as a block device in some other
way.
What is EBS?
• Amazon EBS volumes are placed in a specific availability zone,
and they are automatically replicated to protect you from the failure of
a single component.
• EBS volume does not exist on one disk, it spreads across the
Availability Zone. EBS volume is a disk which is attached to an EC2
instance.
• You can also create multiple instances using single AMI when you need
instances with the same configuration.
• You can also create multiple instances using different AMI when you
need instances with a different configuration.
• It also provides a template for the root volume of an instance.
AMI Lifecycle
• First, you need to create and register an AMI.
• When AMI is no longer required, then you can also deregister it.
The Simple Storage Service (S3)
• Amazon Simple Storage Service (Amazon S3) is an object storage service that
offers industry-leading scalability, data availability, security, and
performance.
• Objects will not leave the region unless you explicitly transfer
the objects to another region.
Data Consistency Model
• Amazon S3 replicates the data to multiple servers to achieve
high availability.
Two types of model :
• Read-after-write consistency for PUTS of new objects.
• For a PUT request, S3 stores the data across multiple servers to
achieve high availability.
• A process stores an object to S3 and will be immediately available
to read the object.
• A process stores a new object to S3, it will immediately list the keys
within the bucket.
• It does not take time for propagation, the changes are reflected
immediately.
Data Consistency Model
• Eventual consistency for overwrite PUTS and DELETES
• For PUTS and DELETES to objects, the changes are reflected
eventually, and they are not available immediately.
• If the process replaces an existing object with the new
object, you try to read it immediately. Until the change is
fully propagated, the S3 might return prior data.
• If the process deletes an existing object, immediately
try to read it. Until the change is fully propagated, the S3
might return the deleted data.
• If the process deletes an existing object, immediately
list all the keys within the bucket. Until the change is fully
propagated, the S3 might return the list of the deleted key.
Creating an S3 Bucket
• Sign in to the AWS Management console.
• Move to the S3 services.
• To create an S3 bucket, click on the "Create bucket".
• Enter the bucket name which should look like DNS address, and it should
be resolvable. A bucket name should start with the lowercase letter, must
not contain any invalid characters. It should be 3 to 63 characters long.
• The physical EC2 server is the dedicated host that can help you to reduce costs by
allowing you to use your existing server-bound software licenses. For example,
Vmware, Oracle, SQL Server depending on the licenses that you can bring over to
AWS and then they can use the Dedicated host.
• Dedicated hosts are used to address compliance requirements and reduces host by
allowing to use your existing server-bound server licenses.
VMware vCloud Request Optional component that provides provisioning request and
Manager approval workflows, software license tracking, and policy-
based cloud partitioning
Optional component to facilitate transfer of a powered-off
VMware vCloud Connector vApp in OVF format from a local vCloud or vSphere to a
remote vCloud
How vCloud works ?
• To setup the vCloud, you need to install VMware ESXi
hypervisor on servers and configure VMware vCenter Server.
This layer will be your typical VMware vSphere setup.
• Once you made this setup ready , then you need to deploy
VMware vCloud director (Will be replaced by vCloud
Automation soon) and VMware vShield for network
security.
• The vCloud director directly talks to VMware vCenter
for any new VM provisioning and creating the virtual
datacenter.
• These virtual datacenters and VM access will be given to the
cloud end user based on the requirement.
vCloud can provide different level of service
• In vCloud , we can create a number of virtual data center
based on service level.
• Example:
• Provider virtual DC GOLD – Gold SAN storage and high availability
computing nodes.(vMotion + DRS + HA)
• Provider virtual DC SILVER- Silver SAN storage and high availability
computing nodes.(vMotion + HA)
• Provider virtual DC Bronze – Bronze SAN storage and without high
availability for computing.
• Provider = Cloud service offering company
• organization = An association of related end consumers.
• Access given to the Organization’s virtual datacenters to the
end consumers.
• Cloud offering company will allot some set of resources to
the organization based on the requirement.
• For an example, one organization may need different
level of service resources and it is possible to provide
using VMware vCloud.
1.GOLD – 1TB Storage 200oGHZ CPU 100GB Memory
2.SILVER – 512GB Storage 100oGHZ CPU 50GB Memory
vCloud Express
• VMware (VMW) has announced vCloud Express, which
allows VMware's service provider partners to create a
cloud computing offering with pricing and
functionality similar to Amazon Web Services.
• Five hosting companies rolled out vCloud Express,
including Terremark, Hosting.com, Logica, Melbourne
IT and Bluelock. WMware said it is working with
additional partners on deploying vCloud Express.
• The IaaS offering is being positioned as a cheap and easy on-
ramp to the cloud for customers who may later migrate to
VMware-based enterprise cloud offerings.
• A key feature of vCloud is its portability, including an
API that allows "cloud brokers" like RightScale to migrate
applications between vCloud Express partners or an in-house
data center.
• An API is a set of guidelines that provide developers with the
information needed to write applications atop an os or
service. A number of CC providers have published APIs in
hopes of advancing a standard for migrating data and
applications between different platforms.
• That group includes Amazon, as well as Rackspace, GoGrid
and others.
Platform as a Service (PaaS)
Scope:
1. Platform as a Service (PaaS)
Google App Engine lets you run web applications on Google's infrastructure.
Easy to build.
Easy to maintain.
Easy to scale as the traffic and storage needs
grow. Yes, free for upto 1 GB of storage and
enough CPU and bandwidth to support 5
million page views a month. 10
Applications per Google account.
2. What is Google App Engine.
• Programming languages support
Java:
• App Engine runs JAVA apps on a JAVA 7 virtual machine (currently
supports JAVA 6 as well).
• Uses JAVA Servlet standard for web applications:
• WAR (Web Applications ARchive) directory structure.
• Servlet classes
• Java Server Pages (JSP)
• Static and data files
• Deployment descriptor (web.xml)
• Other configuration files
• Getting started :
https://developers.google.com/appengine/docs/java/gettingstarted/
2. What is Google App Engine.
• Programming languages support
Python:
• Uses WSGI (Web Server Gateway Interface) standard.
• Python applications can be written using:
• Webapp2 framework
• Django framework
• Any python code that uses the CGI (Common Gateway Interface)
standard.
•Getting started :
https://developers.google.com/appengine/docs/python/gettingstartedp
ython27/
2. What is Google App Engine.
• Programming languages support
PHP (Experimental support):
• Local development servers are available to anyone for developing
and testing local applications.
• Only whitelisted applications can be deployed on Google App Engine.
(https://gaeforphp.appspot.com/).
• Getting started: https://developers.google.com/appengine/docs/php/
Google’s Go:
• Go is an Google’s open source programming environment.
• Tightly coupled with Google App Engine.
• Applications can be written using App Engine’s Go SDK.
• Getting started:
https://developers.google.com/appengine/docs/go/overview
2. What is Google App Engine.
• Programming languages support
• URL Fetch:
• Facilitates the application’s access to resources on the internet, such as web services
or data.
• Mail:
• Facilitates the application to send e-mail messages using Google infrastructure.
• Memcache:
• High performance in-memory key-value storage.
• Can be used to store temporary data which doesn’t need to be persisted.
2. What is Google App Engine.
• Security
The sandbox:
• All hosted applications run in a secure environment that provides limited access to
the underlying operating system.
• Sandbox isolates the application in its own secure, reliable environment that is
independent of hardware, operating system and physical location of a web server.
• Limitations imposed by sandbox (for security):
• An application can only access other computers over internet using the provided URL
fetch and email services. Other computers can only connect to the application through
HTTP/ HTTPS requests on the standard ports (80/ 443).
• Applications cannot write to local file system in any of the runtime environments.
• Application code runs only in response to a web request, a queued task or a
scheduled task and must return the response data within 60 seconds. A request
handler cannot spawn a sub-process or execute code after the response has been
sent.
3. When to use Google App Engine.
• http://www.lowes.com/
• Uses App Engine to host their MyLowes service used by customers to customize and
personalize their home improvement projects.
• http://www.getaround.com/
• Peer-to-peer car sharing and local car rental service.
•http://kissflow.com/
• Workflow service based on Google applications.
•JAVA:
http://www.mkyong.com/google-app-engine/google-app-engine-hello-world-example-using-eclipse
/
• Python:
http://www.mkyong.com/google-app-engine/google-app-engine-python-hello-world-example-
using-eclipse/ More
information:
https://developers.google.com/appengine/
Google App Engine. Autoscaling
Architecture of Google App
Engine
Google Data Store Architecture
Google App Engine Amazon Web
Services
Cloud Services PaaS PaaS, IaaS
Platforms Supported Linux,Windows Server 2008 Linux,Open Solaris,
Windows Server 2003
Virtualization Application Container OS level running on a Xen
Platform Hypervisor
Storage bigTable and megaStore Amazon Simple Storage and
SimpleDB
Control Interface API API Command Line
Languages Supported Java Python Java,PHP,PythonRuby
Load balancing Auto Round Robin
Data after Google will not take any Amazon will not take any action
termination action for 90 days after the for a period of 30 days after the
effective date of termination effective date of termination
Advantages of Google App
Engine