CC Module 1 Notes
CC Module 1 Notes
By Prof. M. Shivakumar
www.cambridge.edu.in
CLOUD means:
▪ The term cloud has historically been used in the telecommunications industry as an
abstraction of the network in system diagrams.
▪ It then became the symbol of the most popular computer network- the Internet. This
meaning also applies to cloud computing, which refers to an Internet centric way of
computing.
CLOUD COMPUTING Definition:
“Cloud computing refers to both the applications delivered as services over the Internet
and the hardware and system software in the datacenters that provide those services.”
❑ Private clouds –
▪ Large organizations that own massive computing infrastructures can still benefit
from cloud computing by replicating the cloud IT service delivery model
in-house.
▪ Institutions such as governments and banks that need high security, privacy, and
regulatory concerns prefer to build and use their own private or enterprise
clouds.
❑ Hybrid clouds–
❑These are used for as long as needed, with no up-front commitments required.
❑The long-term vision of cloud computing is that IT services are traded as utilities
in an open market, without technological and legal barriers.
THE VISION OF CLOUD COMPUTING
❑To provide a scalable runtime for applications for application and system
developers that do not have infrastructure or cannot afford any further expansion
of existing infrastructure.
❑Provide automation of the discovery of various services and its integration into
existing software system– No human intervention
❑To provide opportunities for optimizing datacenter facilities and fully utilizing
their capabilities to serve multiple users
❑To reduce the waste of energy and carbon emissions, thus contributing to a
greener IT on one end and increasing revenue
The Cloud Computing Reference Model
The Cloud Computing Reference Model
✓ Cloud computing services are organized in a layered view that walks the
computing stack from bottom to top.
✓ Virtual storage is delivered in the form of raw disk space or object store.
SaaS
✓ At the top of the stack, Software-as-a-Service solutions provide
applications and services on demand.
Most of the common functionalities of desktop applications are replicated on the
provider’s infrastructure and made more scalable and accessible through a browser
on demand.
✓ IaaS solutions are sought by users who want to build dynamically scalable
computing systems requiring a specific software stack.
✓ SaaS solutions target mostly end users who want to benefit from the
elastic scalability of the cloud without doing any software development,
installation, configuration, and maintenance.
Characteristics and Benefits – Cloud Computing
The characteristics that bring benefits to both cloud service consumers
(CSCs) and cloud service providers (CSPs) are:
✓ No up-front commitments
✓ On-demand access
✓ Nice pricing
✓ Simplified application acceleration and scalability
✓ Efficient resource allocation
✓ Energy efficiency
✓ Seamless creation and use of third-party services
✓ Increased economical return due to the reduced
maintenance costs and operational costs related to IT
software and infrastructure.
✓ End users can benefit from cloud computing by having their data and the capability of
operating on it always available, from anywhere, at any time, and through multiple
devices.
✓ Finally, service orientation and on-demand access create new opportunities for
composing systems and applications with a flexibility not possible before cloud
computing.
Challenges ahead in Cloud computing
✓ Dynamic provisioning of cloud computing services and resources
arises. For example, in the Infrastructure-as-a-Service domain, how
many resources need to be provisioned, and for how long should
they be used, in order to maximize the benefit?
1. Distributed systems
✓ Mainframes were powerful, highly reliable computers specialized for large data
movement and massive input/output (I/O) operations.
✓ Cluster computing started as a low-cost alternative to the use of mainframes and
supercomputers.
One of the attractive features of clusters was that the computational power
of commodity machines could be leveraged to solve problems that were
previously manageable only on expensive supercomputers.
✓ Virtualization confers that degree of customization and control that makes cloud
computing appealing for users and, at the same time, sustainable for cloud
services providers.
✓ High-performance servers can host several virtual machine instances, thus creating
the opportunity to have a customized software stack on demand.
3. Web 2.0
✓ The Web is the primary interface through which cloud computing delivers its services.
✓ Web 2.0 brings interactivity and flexibility into Web pages. These capabilities are
obtained by integrating a collection of standards and technologies such as XML,
Asynchronous JavaScript and XML (AJAX), Web Services, and others.
✓ Web 2.0 applications are extremely dynamic: they improve continuously, and new
updates and features are integrated at a constant rate by following the usage trend
of the community.
4. Service-oriented computing
✓ Service orientation is the core reference model for cloud computing systems.
This approach adopts the concept of services as the main building blocks of
application and system development.
✓ AWS offers comprehensive cloud IaaS services ranging from virtual compute,
storage, and networking to complete computing stacks. AWS is mostly known for
its compute & storage -on demand services, namely Elastic Compute Cloud (EC2)
and Simple Storage Service (S3).
✓ EC2 provides users with customizable virtual hardware that can be used as the
base infrastructure for deploying computing systems on the cloud.
✓ EC2 also provides the capability to save a specific running instance as an image,
thus allowing users to create their own templates for deploying systems. These
templates are stored into S3 that delivers persistent storage on demand.
✓ S3 is organized into buckets; these are containers of objects that are stored in
binary form and can be enriched with attributes. Users can store objects of any
size, from simple files to entire disk images, and have them accessible from
everywhere.
✓ Besides EC2 and S3, a wide range of services can be leveraged to build virtual
computing systems. including networking support, caching systems, DNS, database
(relational and not) support, and others.
2. Google AppEngine
✓ Google AppEngine is a scalable runtime environment mostly devoted to executing
Web applications.
3. Microsoft Azure
✓ Applications in Azure are organized around the concept of roles, which identify a
distribution unit for applications and embody the application’s logic.
✓ Currently, there are three types of role: Web role, worker role, and virtual machine role.
✓ Azure also provides a set of additional services such as support for storage (relational
data and blobs), networking, caching, content delivery, and others.
4. Hadoop
✓ The former transforms and synthesizes the input data provided by the user; the
latter aggregates the output obtained by the map operations.
✓ Hadoop provides the runtime environment, and developers need only provide the
input data and specify the map and reduce functions that need to be executed.
✓ Hadoop is an integral part of the Yahoo! cloud infrastructure and supports several
business processes of the company. Currently, Yahoo! manages the largest Hadoop
cluster in the world
5. Force.com and Salesforce.com
✓ The platform provides complete support for developing applications, from the
design of the data layout to the definition of business rules and workflows and
the definition of the user interface.
✓ The Force.com platform is completely hosted on the cloud and provides complete
access to its functionalities and those implemented in the hosted applications
through Web services technologies.
6. Manjrasoft Aneka