Cloud Computing An Introduction - (Chapter 2 Cloud Computing Architectures)
Cloud Computing An Introduction - (Chapter 2 Cloud Computing Architectures)
CHAPTER
2
CLOUD COMPUTING ARCHITECTURES
2.1 INTRODUCTION
he elements and sub-elements needed for cloud computing represent the cloud computing
T architecture. These elements are the front-end platform, back-end platform, cloud-based
delivery, and a network. They consist of cloud services, middleware, software components,
resources, their geo-location, and their attributes. Organizations deploying the cloud must take all of
these issues into account. The cloud architecture consists of a front end (client-side) and a back end
(cloud section). Front end refers to the client devices that the user employs to access the cloud
computing system. Different interfaces exist for different applications. For instance, email is a web
service that uses existing web browsers like Google Chrome, Firefox, Mozilla, and so on. On the
other hand, the back end involves the cloud itself. It consists of servers, computers, and data storage
systems that are used by the users. Every application has its own server for services. A central server
is established. The server follows some rules called protocols. It uses a special type of software,
called middleware, to communicate with the users who are connected to the cloud server.
The cloud computing reference model establishes a standardized process for modeling clouds. The
Cloud Computing Reference Model (CCRM) consists of four supporting models as follows:
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 2 of 48
(a) Cloud Enablement Model: This is the core model of the CCRM. It explains the fundamental
technology tiers of cloud computing capabilities provided by the cloud platform and cloud
service providers to potential consumers of cloud-enabled technology.
(b) Cloud Deployment Model: This model describes the range of cloud deployment scenarios
available to your enterprise—internal/private cloud, external/public cloud, hybrid/integrated
cloud, and community or vertical cloud. These deployment scenarios may be mixed and
matched.
(c) Cloud Governance and Operations Model: This model describes the governance, security
operations, support, management, and monitoring requirements for cloud computing to ensure
that you have considered all of the potential operational risks for adopting the cloud for your
organization.
(d) Cloud Ecosystem Model: This model considers the requirements of developing and sustaining
a cloud ecosystem comprised of cloud providers, cloud consumers, and cloud intermediaries, as
well as the cloud network and cloud dial tone necessary to ensure that the cloud is always there
for you. The cloud ecosystem also includes the various cloud enablement technologies and
cloud providers and consumers of those cloud-enabled technologies that comprise the cloud
ecosystem.
Internal/private cloud
External/public cloud
Hybrid/integrated cloud
The logical architecture of the cloud first requires that we separate the layers of the cloud
architecture. NIST provides us with a cloud reference architecture. According to NIST, it is a high-
level model consisting of three tiers of cloud capabilities “as-a-service.” NIST specifies that there are
three categories of the cloud: infrastructure, platform, and software—all as a “service” architecture.
Figure 2.2 shows the NIST architecture.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 4 of 48
From Figures 2.1 and 2.2, it is easier to see the different tiers of the cloud.
1. Cloud Physical Tier: This tier provides the physical computing, storage, network, and security
resources that are virtualized and cloud enabled to support cloud requirements. It is important
to understand that this physical tier provides the substrate on which cloud virtualization
technologies and cloud operating system platforms are built to enable higher-order cloud
patterns to be realized.
2. Cloud Virtualization Tier: This tier provides core physical hardware virtualization and
provides a potentially useful foundation for cloud computing.
3. Cloud Operating System Tier: This tier provides the cloud computing “fabric” as well as
application virtualization, core cloud provisioning, metering, billing, load balancing, workflow,
and related functionality typical of cloud platforms. This tier is represented by a wide variety of
new cloud platforms and cloud enablement technologies.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 5 of 48
4. Cloud Platform Tier: This tier provides technical solutions, application and messaging
middleware, application servers, and so on, that comprise cloud and/or application platforms as
well as pre-integrated cloud and application platforms themselves, offered via PaaS delivery
models.
5. Cloud Business Tier: This tier comprises the business or mission exploitation of cloud-
enabled business applications, software, data, content, knowledge, and the associated analysis
frameworks and other cloud consumption models that facilitate and enable end user business
value from the cloud consumer’s ability to access, bind, and consume cloud capabilities.
2. Each cloud tier, working from the bottom up in the CCRM enables the cloud tier above it.
3. These tiers build upon one another but yet they are independent.
5. Cloud consumers can access and consume cloud-enabled resources directly from any of these
tiers, independent of the others via cloud Application Programming Interfaces (APIs) and a
portal or a self-service user interface of some fashion.
6. The cloud enablement tiers help to organize various classes of cloud-enabled resources into the
CCRM.
7. Note that cloud consumers do not access these tiers directly but rather use cloud-enabled
resources.
8. Each cloud tier must have the necessary cloud network/dial tone and cloud ecosystem
enablement capabilities in order to be discoverable, provisionable, and consumable as a service
via the cloud.
9. Cloud providers and consumers must be able to find one another, communicate and negotiate,
and then engage by establishing business and technical relationships via a service contract and
better technical interfaces to cloud capabilities, with clear SLAs and QoS.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 6 of 48
Users control cloud computing using networked client devices, such as PCs, laptops, tablets, and
smartphones. Three types of clouds are defined in the literature and they are described below.
1. Private Cloud: This type is a cloud infrastructure operated solely for a single organization,
which is either managed internally or by a third-party, or hosted internally or externally. Self-
run data centers are generally capital intensive. They have a significant footprint, requiring
allocations of space, hardware, and environmental controls. These assets have to be refreshed
periodically, resulting in additional capital expenditures.
2. Public Clouds: A cloud is said to be public when the services are rendered over a network that
is open for public use. Technically speaking, there may be no or little difference between
public and private cloud architectures, but security may be different for services that are made
available by a service provider for a public audience and when communication is effected over
a non-trusted network. In general, public cloud service providers like Amazon AWS,
Microsoft, and Google own and operate the infrastructure and offer access only via the
Internet, that is, no direct connectivity is offered.
3. Hybrid Cloud: This type is a combination of two or more clouds (private, public, or
community) that remain distinct entities, but are bound together, offering the benefits of
multiple deployment models. Note that hybrid can also mean the ability to connect collocation,
managed, and/or dedicated services with cloud resources. Different use cases for hybrid cloud
combinations exist.
Example 1: An organization may store sensitive client data in-house on a private cloud
application but interconnect that application to a billing application provided on a public cloud
as a service. Thus, here the hybrid cloud extends the capabilities of the enterprise to deliver a
specific business service through the addition of externally available public cloud services.
Example 2: In this case, an organization uses public cloud computing resources to meet
temporary capacity needs that cannot be met by the private cloud. This capability enables
hybrid clouds to employ cloud bursting for scaling across clouds. Cloud bursting is an
application deployment model in which an application runs in a private cloud or data center
and “bursts” to a public cloud when demand for computing capacity increases. In addition, the
primary advantage of cloud bursting and a hybrid cloud model is that an organization only
pays for extra compute resources when they are needed.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 7 of 48
Cloud Database Management Systems (CDBMSs) are defined as distributed databases that provide
computing as a service but not a product. The challenge is to manage persistent data. The challenge
is bigger now because database servers existing in the cloud are less reliable (can fail easily). When
this happens then files related to DBMS may also become corrupted. However, it is easier to recover
a server from a failure in a virtualized environment than in a physical environment. This is because
the database administrator can simply replace the corrupt image with a new instance from the
database machine image. Two techniques may be used here:
(a) Clustering
(b) Replication
Clustering: This is a technique where multiple (many) database servers will work together as a
single logical database server in a clustered database environment. It is very complex and also more
costly. It requires an expert database administrator (DBA). The advantage here is that the database
clients do not know when a node fails and they can continue operating. It depends on the clusters. It
is important to note that the more complex the clustering is, the more potential points of failure there
will be. Even if there is dynamic assignment of IP addresses within the cloud, new issues will arise.
Replication: This technique is where the database is replicated and it contains a main server
known as a database master. It is an alternative to the clustering technique. A single database server,
the database master, replicates the data to one or more database slaves. The client applications
performs write transactions to the database master. The transactions that become successful are then
reflected to the database servers. The advantage here is that it is easy to implement replication
without also requiring a large numbers of servers. However, clustering is more reliable than the
replication method. This is because with the replication method, if the master-database fails then the
slave-database cannot work until the master recovers from the failure. This is not the case for
clustering.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 8 of 48
Three types of cloud computing services exist in the industry. The term services means reusing
components (every resource) across a provider’s network. In SaaS, the software is available for a
service. This implies that you can use the software but do not own it. In PaaS, the developer is the
owner of the application and the data. In IaaS, the administrator chooses and manages the activities
from the operating system onward, but has no control over the machines. In summary:
Software is available for the service (in SaaS)—you use the software but do not own it.
Platform is available for the service (in PaaS)—you use the platform to develop web
applications.
Hardware and software is available for the service (in IaaS)—you use the hardware and
software as a VM.
We would even consider Microsoft Business Productivity Online Suite (BPOS) and Dynamics
CRM Online to be some examples of SaaS.
SaaS is a software delivery business model where a provider or third party hosts an application
and makes it available to customers on a subscription basis. SaaS customers use the software running
on the provider’s infrastructure on a pay-as-you-go basis. Customers do not have to commit to any
long-term contracts. Depending on the contract, customers can quit using the software at any time. It
is important to understand that in SaaS, the underlying infrastructure and the software configuration
are invisible to the users. Thus, the users have to settle for the functionality that is provided. In
addition, SaaS uses a highly multi-tenant architecture and the user contexts are separated from one
another logically at both runtime and rest. Collaboration applications that solve the same problem
across many enterprises have been very successful in the SaaS arena. Remember that because the
hardware and software configuration is transparent to the end users, there is minimal if any need for
professional IT involvement. Some SaaS applications can even be customized by the end users. The
point is that SaaS empowers business units to bypass IT procurement processes. Enterprise
architecture teams need to realize this aspect and teach these business units about the importance of
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 9 of 48
governance. In addition, the teams should design new governance processes or modify the existing
ones to accommodate SaaS.
1. The customers rent software that is hosted by the vendor such as Microsoft or Amazon, and so
on.
3. This model is analogous to ASPs (Application Service Providers), wherein a provider hosts
available applications/software for the users and delivers those over the web. Yet, there are
some differences between these two models (Table 2.1). These differences are enumerated in
the table.
ASP SaaS
1. ASP applications are usually single-tenant with 1. It is a multi-tenant application hosted by the
client–server architecture hosted by a third party application developer, with regular updates
with HTML as a front end. directly from the developer.
3. It is not build to be web-based or on the Internet. 3. It is built to be web-based and used over the public
Internet.
6. Tasks like software deployment, software maintenance (changes), cloud software testing,
patching, and so on, are all managed by the provider.
7. In a nutshell, SaaS is what a provider hosts as software (service) that is centrally located and
that can be made easily available to customers via the Internet on a pay-per-use basis.
10. Security is a serious issue here because all the data is available in the cloud.
12. Time critical applications, that is, applications that demand response time in milliseconds, are
not benefited by SaaS.
13. Multi-tenancy means sharing of the resources by many users. SaaS has two modes—simple
multi-tenancy and fine-grained multi-tenancy. In the simple multi-tenancy case, every user has
their own resources, which are different from other users. On the other hand, in fine-grained
multi-tenancy all resources are shared except customer-related data.
14. Web applications like blogs, social networks, web content management, and WIKI services are
all applications of SaaS only.
15. Enterprise services like desktop software, workflow management, supply chain management,
and CRM are all applications of SaaS only.
16. Clients are very much interested in moving their applications to SaaS platforms because they
can reduce their monitoring of many servers.
17. In the SaaS cloud, the vendor supplies the hardware infrastructure, software, and applications.
The customer interacts with the application through a portal.
18. Some SaaS providers include MS Live CRM, MS Azure, Google Apps, Trend Micro,
Symantec, and Zoho.
19. Cloud applications have a global scope while SaaS has more of a centralized hosting platform.
20. SaaS is like a “thin app” where client machines need only a web browser with some sort of
plug-in to provide additional functionality.
21. Applications reside on top of the cloud stack. Services are provided by this layer. These
services can be accessed by the end users through web portals. Conventional applications like
MS Word, MS Excel, and so on, are accessed as a service on the web in real time.
22. [Link] relies on the SaaS model only. It offers business productivity applications that
reside fully on their servers. Thus, customers can customize according to their needs in real
time.
In this model, the developer creates software using tools and the other utilities of a cloud provider.
For example, websites are designed, developed, and hosted on the cloud. PaaS fills the needs of those
who want to build and run custom applications as services. These could be ISVs, value-added service
providers, or enterprise IT shops. PaaS offers hosted application servers that have near-finite
scalability owing to their reliance on large resource pools. PaaS also offers the necessary supporting
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 11 of 48
services such as storage, security, integration, infrastructure, and development tools for a complete
platform. A service provider offers a pre-configured, virtualized application server environment to
which applications can be deployed by the development staff. Since the service providers manage the
hardware (patching, upgrades etc.,) as well as the application server uptime, the involvement of IT
professionals is minimized. It is important to understand that PaaS is suitable for brand-new
applications, as legacy applications often require extensive refactoring to comply with sandbox rules.
Consider a case study of the AccuWeather company. This company provides weather forecasts. It
needed better solutions to handle more than 4 billion daily data requests. To increase scalability, the
company began delivering content from the cloud on the Windows Azure platform. As a result, the
company could bring in the downtime required for development and proofs of concept without
worrying about provisional infrastructure. It also gained on-demand scalability, improved access to
real-time weather data, and cut IT costs by up to 40%. The vice president of the company stated,
“With MS Azure we gained velocity because we can be innovative without worrying about complex
infrastructure. A proof of concept that might have taken three months to execute now takes three
days.”
1. It provides hardware, OS, storage, and network capacity on a pay-per-use basis via Internet
only.
3. It allows users to create web applications rapidly. There is no overhead for the cost and
complexity of buying and hardware/software management.
4. It is used to build multi-tenant applications, that is, services that can be accessed by multiple
users simultaneously.
5. The applications can be deployed on the cloud using tools and different programming
languages supported by a particular provider. The web developer will simply write the code
using PaaS services. It is the job of the PaaS provider to upload that code and make it online
available through the Internet.
6. There is more security because customer environments are separated from each other.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 12 of 48
8. Google App Engine (GAE), LongJump, [Link], WaveMaker, MS Azure, and CloudBees
are some of the PaaS providers.
9. The main aim of the GAE is to run the user’s web application efficiently. It maintains Java-
Runtime-Environments (JRE) and Python on the application servers. It includes simple APIs to
access Google services. Now applications are able to integrate data services and other GAE
services like email, image storage, and so on.
10. MS Azure offers a service called SQL Azure that stores data in the cloud.
11. When looking for a PaaS provider, the basic goal should be reduced time-to-market and not
cost savings. Other factors like high availability, security, and scalability are also vital for
developers and cloud testers.
12. A good PaaS environment should support caching for cloud resources because it increases
performance. This functionality needs APIs to put an object or a resource in the cache.
13. The PaaS environment must have a browser-based development studio with an IDE for
development, test, and debugging of applications.
14. It must support very secure and on-demand collaboration throughout the SDLC.
15. Hadoop software enables applications to work easily with thousands of nodes and petabytes of
data and is based on Java. PaaS must be able to monitor such operations.
IaaS is a model where the cloud provides both hardware and software. IaaS can be compared to the
creation of Virtual Machines (VM) on the cloud infrastructure. With VMs one can launch Windows
Server, MS SQL Server, Oracle, MangoDB, SharePoint Server, and Linux in minutes and then scale
up from one to thousands of VM instances. VMs can be used on-demand to get a scalable compute
infrastructure when you need flexible resources. It is also possible to create VMs that run Windows,
Linux, and enterprise applications or capture your own images to create custom VMs. IaaS is
analogous to traditional hosting where a business will use the hosted environment as a logical
extension of the on-premises data center. Note that the servers (physical and virtual) are rented on an
as-needed basis and the IT professionals who manage the infrastructure have full control of the
software configuration. In addition, some providers may even allow flexibility in the hardware
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 13 of 48
configuration, which makes the service more expensive when compared to an equivalent PaaS
offering. The development staff will build, test, and deploy applications with full awareness of the
hardware and software configuration of the servers.
For instance, customers like Webzeb, Telenor, Avanade, Toyota, and so on, are using VMs over
the MS Azure platform.
Using MS Azure-based VMs, the Telenor company has dramatically reduced the costs needed for
test, development, and demo environments, reduced the time to make the environments available to
the project, and saved on long-term investments in hardware that would have only needed to be used
in the short term.
Toyota is a company that has 16 websites that deliver more than 100 million page views per month.
To enhance site content, increase scalability, and reduce the cost of ownership, Toyota is rebuilding
the site using the MS Azure cloud development environment.
2. This service provider owns the required equipment and is responsible for configuring, running,
and maintaining it.
3. It is defined as a process for making available cloud computing infrastructure resources, that is,
servers, storage, network, and operating systems as an on-demand service. Rather than
purchasing servers, software, data center space, or network items, clients instead buy those
resources as a fully outsourced service on demand.
5. IaaS can be considered a basic template for other services in the cloud like SaaS and PaaS.
6. IaaS providers will act promptly when there is a need to scale up or down and this is known as
autoscaling.
7. It provides elastic load balancing that auto-distributes the incoming traffic related to an
application to different instances of virtual computers. Thus, elasticity is also possible.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 14 of 48
10. It also supports a multi-tenant architecture, which represents several users who can work on a
single piece of hardware.
14. Location independence is another feature because users can access the service from anywhere
with an Internet connection.
15. Because cloud hosts are redundant, if one network or server fails then there is no effect on the
data centers due to multiple hardware resources. In the worst case scenario, if the entire data
center fails, then there would be secondary and tertiary data centers for smooth functioning.
(a) Computation as a service: Here, VM servers are charged per hour. It depends on the
VM capacity including RAM size and CPU, OS, and the features of that VM.
(b) Data as a service: In this type of IaaS, there is no restriction on storage space to store
the data related to the user. Charging is done on a per GB basis for data transfer.
19. IaaS clouds can even be one of three types: private IaaS clouds, public IaaS clouds, and hybrid
IaaS clouds.
20. Companies such as Amazon EC2, Bluelock, and GoGrid offer IaaS. Amazon EC2 is a web
service that offers dynamic scaling of computing capacity in the cloud. Bluelock offers cloud
services supported by VMware cloud data center services. These data centers are very secure
and also SAS-70 Type-II certified. GoGrid offers customers a user-friendly web service
interface.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 15 of 48
22. IaaS providers also have APIs to add, start, stop, access, configure, and delete the virtual host
machine and storage.
There are three types of clouds: public, private, and hybrid clouds. However, several other clouds
also exist and are discussed in this section.
A cloud is said to be public/external when the services are rendered over a network that is open for
public use. Technically speaking, there may be no or little difference between public and private
cloud architecture but security may be different for services that are made available by a service
provider for a public audience and when communication is carried out over a non-trusted network. In
general, public cloud service providers like Amazon AWS, Microsoft, and Google own and operate
the infrastructure and offer access only via the Internet, that is, no direct connectivity is offered.
In general, public clouds offer services over the Internet and are owned and operated by a cloud
provider. For example, email services and social networking sites are all aimed at the general public.
The following points characterize public clouds (or external clouds):
2. They are run by third parties because they need a huge investment to build.
3. In this model, applications from different customers are mixed together on storage systems,
cloud servers, and other infrastructures within the cloud.
4. The customers can choose a location to deploy the application. This mitigates latency, risks,
time, and costs for the users.
6. A public cloud is always larger than an organization’s private cloud because it provides the
ability to scale up, scale down, and to transfer the risks of an infrastructure from an
organization to the cloud provider.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 16 of 48
7. A public cloud is a better choice if the standardized workload for an application is used by
several people, or you need to test and develop application code or if you have SaaS
applications from a cloud vendor. In addition, it may be a good choice if you need incremental
capacity, that is, adding compute capacity at peak times, or if you are using collaboration
projects or even if you are performing an ad hoc software development.
8. In this type of cloud, the service providers charge the companies according to their usage.
9. It is important to understand that here resources are owned or hosted by the cloud service
providers (company) and the services are sold to other companies. This is shown in Figure 2.3.
10. No direct connectivity is provided by public cloud service providers like Amazon AWS, MS,
and Google.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 17 of 48
Just as the public cloud can be thought of as the Internet, similarly a private cloud can be thought of
as an intranet. The following points characterize private or internal clouds:
1. A private cloud or internal cloud is used when the data center for the cloud is to be operated for
a specific business only.
2. It serves the client with maximum security, quality of service, and data control.
3. The infrastructure is owned by the company and it has power over how applications are
deployed on it.
4. With private clouds, the IT infrastructure of organizations can be merged. This mitigates
electricity expenses as well.
6. They can be set up from MS, IBM, VMware, Eucalyptus, OpenStack, and so on.
7. They are to be used when the security of your organization is of paramount importance.
8. Your company has sufficient potential, in terms of money, that it can run even a next-
generation cloud data center most efficiently and effectively.
9. The cloud computing infrastructure that is designed only for a single company cannot be shared
with other organizations.
11. The main objective of a private cloud is not to sell the cloud services to external organizations
but to reap the benefits of the cloud architecture by securing the rights to manage your own
data center.
12. Private clouds are virtual distributed systems that depend on private infrastructure only.
13. They provide internal users with dynamic provisioning of computing resources.
16. The problem is that private clouds cannot scale up easily in case of heavy (peak) demands.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 18 of 48
To cope with all these problems, the only solution is to combine both public and private clouds to
achieve a hybrid cloud.
The differences between public and private clouds are enumerated in Table 2.2. Hybrid clouds are
discussed in the following section.
1. Its owner is the cloud provider or third party. 1. Its owner is an organization only.
5. Testing it is difficult because everything is public. 5. Testing is easier because it is a private cloud.
7. Less management and control is needed because it 7. More management and control is needed because it
works on the concept of virtualization. has a higher level of control over resources.
A private cloud is a cloud infrastructure operated solely for one organization, which is managed
either internally or by a third-party and hosted internally or externally. Self-run data centers are
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 19 of 48
generally capital intensive. They have a significant footprint, requiring allocations of space,
hardware, and environmental controls. These assets have to be refreshed periodically, resulting in
additional capital expenditures.
Because the focus has been to make the cloud more secure and yet to provide the same services and
resource sharing, cloud infrastructures have naturally evolved to what is known as a hybrid cloud.
Hybrid/mixed clouds can be explained with the help of an equation:
1. Better scalability and reliability because they allow companies to move from public to private
clouds.
3. They allow an approach for extending the infrastructure beyond the organizational firewall with
more security.
4. More important applications are stored on hybrid clouds and less important applications and
data are stored on a public cloud.
5. An example of hybrid usage would be something like a patient’s record or some financial
matters that cannot be put on public cloud servers because they are sensitive information.
These services can make use of hybrid clouds.
6. This type of cloud is used during cloud bursting. In this case, an organization generally uses its
own computing infrastructure but in case of higher load requirements, the company can access
clouds. It is important to understand that this means that a company using a hybrid cloud can
manage an internal cloud/private cloud for its general usage and it can migrate the entire
application to the public cloud during heavy peak hours.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 20 of 48
8. The purpose is to lease public cloud services when private cloud capacity is insufficient.
9. Sotomayor et al. states, “a hybrid cloud takes shape when a private cloud is supplemented with
computing capacity from public clouds. And this method of temporarily renting a capacity to
handle spikes in load is known as cloud bursting.”
10. We can combine a private cloud with a public cloud or even a public one with community
clouds.
11. Public clouds and community clouds are compared in Table 2.3
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 21 of 48
1. Any user who signs up can use a public cloud. 1. Only users within a particular industry segment
/group can use it. These users have common
objectives.
2. It uses a pay-per-use model, which is expensive. 2. It is more expensive because the site is customized
for use by the company group.
4. The provider is not known to the consumer. 4. The provider is not known to the consumer.
5. Compliance with the regulations of an organization 5. The objective is to comply with the regulations of
is not an objective. an organization.
12. Similarly, we can compare a private cloud and a hybrid cloud (Table 2.4).
2. Performance is limited. 2. More scalable and elastic because it can use public
resources to meet load spikes.
A community cloud is a type or variant of a private cloud but it goes beyond a business or an
organization. It is implemented when several businesses have similar requirements and perspectives
to share. They are accessible to other members of a particular community but are not available to the
general public. Examples include branches of educational organizations and government, military,
and industry suppliers.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 22 of 48
2. By creating virtual machines from the machines that are underutilized, a community cloud can
be established (Figure 2.3).
In New York, another type of cloud was used wherein the cloud was rented for a short-term or a one-
time project. This is similar to a situation where you are renting a car from an agency and returning
it. This scenario means a lower cost per day. Clouds can be very similar to this model. For example,
you can negotiate a portion of the SAP for a test drive and drop it into the cloud for the 99-day test
drive.
The same concept can also be extended to VMware. Imagine a new car lot that is open 24/7 with
thousands of different types of models and you can rent them. The point is that you do not have to
struggle to set up an environment just for a test drive when the trial period is also short. Similarly in
VMware systems, you just need to drop into a cloud or a VMware system and turn it ON. In addition,
everything is configured and ready for you to explore. Such clouds are throwaway clouds.
In 2007, MS Unified Communications Inc., tried to show their latest wares to InfoWorld editors.
Assume that the entire constellation of servers for this scenario required 8 Windows servers, with one
server requiring a 128-bit operating system. This was quite large. In such a case, the product manager
hopped on a plane with a big USB hard drive and was engaged in preconfiguring the MS Unified
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 23 of 48
Communications’ constellation having an active server directory, SQL server for repository, file
server, and so on. All the manager had to do was just change a single IP address on the exchange
server for external connectivity. This is an example of a traveling cloud.
Clouds need to be standardized in two fields—standardizing parts of the cloud such as workloads,
authentication, and data access as well as the parts that need to work together. The Cloud Standards
Coordination WIKI maintains a list of some of these projects. Table 2.5 lists some of the cloud
standardization efforts made so far along with their URLs.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 24 of 48
IEEE P2301, Guide for Cloud [Link]/ Standards-based options for application
Portability and Interoperability develop/project/[Link] interfaces, portability interfaces,
Profiles management interfaces, interoperability
interfaces, file formats, and operation
conventions.
OASIS Identity in the Cloud [Link] Performs risk analysis on collected use
(IDCloud) /committees/tc_home.php? cases, also develops guidelines for
wg_abb rev = id-cloud reducing vulnerabilities.
Open Data Center Alliance [Link]. Unified customer vision for long-term
org data center requirements, developing
usage models for cloud vendors.
The Open Group Cloud Work [Link] Other cloud standards organizations and
Group [Link]/ this cloud work group together to tell
cloudcomputing/ enterprises how to implement cloud
services in their companies.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 25 of 48
Cloud consumer and cloud provider interactions are illustrated with the help of use cases in reference
to cloud computing. Companies such as NIST, OMG, DMTF, and so on, have developed standards
for data portability, cloud interoperability, security, and management. They have developed use cases
for cloud computing.
Role of NIST: NIST defines a set of 21 use cases. They are classified into three groups:
Opening an account
Closing an account
Terminating an account
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 26 of 48
eDiscovery
Security monitoring
Role of OMG: In the Open Cloud Manifesto, OMG gives a more abstract set of use cases. These
are much more generic than those published by NIST. In addition, they relate more to deployment
than to usage. The Changing Cloud Vendors and Hybrid Cloud use cases are of interest from a
standards perspective because they are the main drivers for standards in cloud computing
environments. For example, the Changing Cloud Vendors use case guides organizations that do not
want to be in a vendor lock-in situation.
1. End User to Cloud: Applications running in the public cloud and accessed by end users.
2. Enterprise to Cloud to End User: Applications running in the public cloud and accessed by
employees and customers.
3. Enterprise to Cloud: Applications running in the public cloud integrated with internal IT
capabilities.
6. Changing Cloud Vendors: An organization using cloud services decides to switch cloud
providers or work with additional providers.
7. Hybrid Cloud: Multiple clouds work together, coordinated by a cloud broker that federates
data, applications, user identity, security, and other details.
Role of DMTF: DMTF has also produced a list of 14 use cases specifically related to cloud
management as follows:
1. Establish relationship
2. Administer relationship
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 27 of 48
5. Contract reporting
6. Contract billing
8. Provision resources
Conclusions: From the uses cases above, four types of use cases relate to consumer–provider
interactions that would benefit from the existence of standards. These interactions relate to
interoperability and can be mapped to the following four basic cloud-interoperability use cases:
1. User Authentication: A user who has established an identity with a cloud provider can use the
same identity with another cloud provider.
2. Workload Migration: A workload that executes in one cloud provider can be uploaded to
another cloud provider.
3. Data Migration: Data that resides in one cloud provider can be moved to another cloud
provider.
4. Workload Management: Custom tools developed for cloud workload management can be
used to manage multiple cloud resources from different vendors.
There is a need to address two issues—workload-migration and data-migration use cases. Standards
that fulfill these two criteria are highly encouraged. This is because such standards would mitigate
vendor lock-in concerns and also needs for standardization of virtual-machine image file formats and
APIs for cloud storage.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 28 of 48
Standardization for the user-authentication use case has an advantage where the user identities
based on OpenID or authentication protocols based on OAuth, for instance, could be used across
multiple providers that support these standards.
Standardization to support the workload-management use case would leverage any existing
efforts related to the construction of workload management clients and scripts that could be used
across multiple providers.
As we know, the cloud provides three types of services, basically—IaaS, PaaS, and SaaS. Next,
we will discuss how these three main services benefit from standardization.
IaaS and Standardization: IaaS is a service model that would benefit greatly from
standardization because the main building blocks of IaaS are workloads represented as virtual
machine images and storage units that vary from typed data to raw data. For workload migration,
standard efforts such as OVF and VHD would allow users to extract an image from one provider and
upload it to another provider. Given that most IaaS providers allow consumers to install and run any
OS, a more manual and time-consuming form of migration would be to retrieve the image from the
current provider, create a new image on a new provider, and reinstall the software. This manual
migration would not require standards as long as there is a way to retrieve the application state, for
example, application data, files, and running processes from the source image and move it to a new
image.
For data migration, standards efforts such as CDMI and the Amazon S3 API, which multiple
providers support, would enable users to extract data from one provider and upload it to a different
provider. If a provider implements these standard interfaces using SOAP- or REST-based protocols,
the cloud will offer the advantages of ease of development and tool availability. However, these
standards are more useful for raw data that is not typed, for example, virtual machine images, files,
and blobs, because the cloud resource in this case acts as a container and usually does not require
data transformation. For typed data, data migration would occur similarly to any other data migration
task—users must extract data from its original source, transform it to a format compatible with the
target source, and upload it into the target source, which could be a complex process. In addition, the
effort required for transformation will also depend on factors such as the similarities between the
target’s and source’s data storage technologies. Consider that moving from one SQL-compatible
database to another will be easier than moving from an object database to a relational database and
vice versa, and also the similarity of the interface operations such as two SOAP-based interfaces can
have completely different operations.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 29 of 48
PaaS and Standardization: The PaaS service model benefits less from standardization than IaaS.
Organizations implementing PaaS will get benefits out of the development platform. The platform
provides many capabilities out of the box, such as managed application environments, user
authentication, data storage, and reliable messaging, in the form of libraries that can be integrated
into applications. This functionality is tied to a specific language and run-time environment. For
example, the Google App Engine supports applications written in Java, Python, and Go. MS Azure
supports applications written [Link] and more recently written applications in Java2, PHP, and
others. The incentives for PaaS adoption are basically rapid development and deployment, and the
potential for these applications to serve a greater number of clients. Buying into PaaS means buying
into a platform in the same way that organizations traditionally have and is based on added value,
skills, cost, and so on, where providers can make applications more interoperable by selecting
platforms that support more standardized tools and languages such as JDBC, ODBC, and SQL. For
example, the default data store in the Google App Engine is the High Replication Data Store that
offers automatic replication of data across data centers. A user can access the data store with a
standard API or a low-level API. It is important to understand that the trade-off is where the standard
API makes an application more portable but offers less control and less provider-specific value-
added features than the low-level API, resulting in the lowest common denominator for features.
The SaaS provider has its own processing logic. In addition, the only field where SaaS would
benefit from standardization is data storage because that is the most important concern for SaaS
consumers. For instance, consider an online storage service that was shut down and the SaaS
provider lost access to 45% of its customer data. In such a scenario, the consumer would have to
extract its data from the SaaS provider, write logic to perform data transformations, and then upload
the data to a new SaaS provider. The standardized APIs could make this task easier.
Expecting PaaS and SaaS providers to standardize feature sets is equivalent to asking
NOTE
ERP software vendors to standardize feature sets.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 30 of 48
The question is do clouds require new standards? We will explore the answer here.
For IaaS, there are two basic use cases that exercise this service model’s potential for
interoperability:
USE CASE-1 (UC1): Workload W1 on Cloud C1 can communicate with Workload W2 on Cloud
C2.
USE CASE-2 (UC2): Workload W1 on Cloud C1 can access Data Store (DS) in Cloud C2.
1. Workload W2 is accessible over the network and has a known address, URI, or other unique
identifier.
This is a common interoperability scenario between two systems, which does not require
standards built especially for the cloud. Standards such as SOAP and REST and other existing user-
authentication standards could support this scenario if the cloud meets the conditions as given above.
Note that once workloads are running in a cloud instance, they behave like any other server.
1. DS is accessible over the network and has a known address, URI, or other unique identifier.
In addition, this use case does benefit from standards for cloud data access such as CDMI and the
Amazon S3 API.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 31 of 48
The basic use case that exercises the PaaS service model’s potential for interoperability is similar to
UC1 for IaaS:
1. Application A2 is accessible over the network and has a known address, URI, or other unique
identifier.
Note that this is also a common interoperability scenario that does not require standards built
specifically for the cloud. The basic use case that exercises the SaaS service model’s potential for
interoperability is the same as for PaaS, except that it refers to interoperability between SaaS
products instead of between applications. Interoperability between PaaS-deployed applications and
IaaS workloads/data stores and SaaS products could also be supported the same way, if the cloud
meets the conditions as given above. The bottom line is that existing standards such as those that
support service-oriented systems can support real cloud interoperability.
1. Resource Management: When you deploy your application and services to the cloud, resource
management provides the necessary virtual machines, network bandwidth, and other
infrastructure resources. It is important to understand that if machines go down for hardware
updates or because of unexpected failures, the cloud locates new virtual machines for your
application automatically. Because you will only pay for what you use, you can start with a
smaller investment. Doing so avoids incurring the typical upfront costs required for an on-
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 32 of 48
premises deployment. This can be especially useful for smaller companies. In an on-premises
scenario, small organizations might not have the data center space, IT skills, or hardware skills
necessary to deploy their applications successfully. For example, the automatic infrastructure
services that Microsoft Azure provides offer a low barrier of entry for application deployment
and management.
2. Dynamic Scaling: The process of scaling out and scaling back your application depending on
resource requirements is known as dynamic scaling. It is also known as elastic scaling. With
cloud services, you create roles that work together to implement your application logic. For
example, one web role could host the [Link] front end of your application. One or more
worker roles could perform the necessary background tasks. One or more virtual machines
hosting each role are called role instances. Requests are load balanced across these instances. It
is important to understand that in this scenario, as resource demands increase, you can
provision new role instances to handle the load. In addition, when demand decreases, you can
remove these instances so that you do not have to pay for unnecessary computing power. There
are also options for automatically scaling up and down based on pre-defined rules and policies.
This is very different from an on-premises deployment where you must over-provision
hardware to anticipate peak demands if you want more control over automatic scaling than the
platform provides. It is also possible to scale-out websites and virtual machines. If your
application requires fluctuating or unpredictable demands for computing resources, clouds like
MS Azure allow you to easily adjust your resource utilization to match the load.
3. High Availability and Durability: Cloud vendors like MS Azure, provide a platform for
applications that can reliably store and access server data through its storage services. Cloud
applications like MS Azure have an MS Azure SQL Database for the same purpose. It ensures
high availability of compute resources. For websites, you can meet the requirements of the
Service Level Agreement (SLA) with only a single instance. For cloud services and virtual
machines, you can meet the SLA requirements by having at least two instances per role or
machine type. For virtual machines, the instances must be interchangeable and load balanced.
It is the cloud vendor like MS Azure that monitors the actual hardware that hosts these virtual
machines and instances. In addition, vendors like MS Azure are able to respond quickly to
hardware restarts or failures by deploying new instances or moving application code and
processing to other working hardware. The cloud vendors like Azure ensure high availability
and durability for data stored by one of its storage services. MS Azure storage services
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 33 of 48
replicate all data to at least three different servers. By default, this storage also replicates to a
secondary MS Azure region. Similarly, the MS Azure SQL Database replicates all data to
guarantee availability and durability.
4. Highly Available Services: Say there is an online store that is deployed in MS Azure. This
online store is a revenue generator, so it is important and critical to keep it running. To achieve
this objective, the Azure data center performs service monitoring and automatic instance
management. The online store must also stay responsive to customer demand. The elastic
scaling ability of MS Azure accomplishes this. During peak shopping times, new instances can
come online to handle the increased usage. In addition, the online store must not lose orders. It
is important to understand that both MS Azure and the Azure SQL Database provide highly
available and durable storage options to hold the order details and state throughout the order
life cycle. For the highest level of availability, you can deploy the same application to multiple
MS Azure regions. In addition, it is possible to design a service that remains available even if
an entire MS Azure region experiences a temporary failure. Doing this requires proper
synchronization architecture and procedures for routing users.
5. Periodic Workloads: Some applications such as demos or utility applications are ones you
want to make available for only several days or weeks. They need not run continuously. MS
Azure allows you to easily create, deploy, and share that application. Once this purpose is
achieved, you can remove the application, and you are charged only for the time it was
deployed.
Case Study: Consider a big company that runs complex data analysis of sales numbers at the
end of each month. Although processing intensive, the total time required to complete analysis
is at most two days. In an on-premises scenario, the server required for this work would be
underutilized for the majority of the month. In MS Azure, the business would pay only for the
time the analysis application is running in the cloud. Assume that the application architecture
is designed for parallel processing. The scale out features of MS Azure would allow the
company to create large numbers of worker role instances or virtual machines. Working
together these can complete more complex work in less time. In this case study, you should
use code or scripting to automatically deploy the application at the appropriate time every
month.
To avoid charges for compute time, remove the deployment because just suspending the
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 34 of 48
6. Unpredictable Growth: All businesses have a goal of rapid and sustainable growth. However,
growth is not easy to achieve if traditional on-premises models are used. If you do not meet the
expected growth even after spending huge dollars then it means you have spent money on
maintaining underutilized hardware and infrastructure. However, if growth happens more
quickly than expected, you might be unable to handle the load. This results in lost business and
poor customer experience. For smaller companies, there might not even be enough initial
capital to prepare for or keep up with rapid growth. For example, say there is a small sports
news portal (specialized part of a website) that makes money from advertising. Here, the
amount of revenue is directly proportional to the amount of traffic that the site generates. In
this case, the initial capital for the venture is limited. In addition, the company does not have
the money required to set up and run its own data center. However, by designing the website to
run on MS Azure, the company can easily deploy its solution as an [Link] application. The
application will use the MS Azure SQL Database for relational data and blob storage for
pictures and videos. If the popularity of the website grows dramatically, the company can
increase the number of web role instances for its front end. The company can also increase the
size of the Azure SQL Database service. The blob storage has a built-in scalability feature
within MS Azure. In addition, if business decreases, the company can remove any unnecessary
instances. In addition, because its revenue is proportional to the traffic on the site, MS Azure
helps the company to start small, grow fast, and reduce risk. If you use MS Azure in your
company, then you have full control in finding out how you can manage your computing costs.
You can decide to implement automatic scaling through the use of the Autoscale feature or
through the use the Autoscaling Application Block. This can add or remove instances based on
custom rules (pre-determined amounts). For example, you might have 8 instances during
business hours and 4 instances during non-business hours. You can also keep the number of
instances constant and only increase them manually through the web portal as demand
increases over time. MS Azure provides you with the flexibility to make the decisions that are
right for your business.
7. Workload Spikes: This workload pattern also works on the principle of elastic scale, as
explained earlier. Consider the example of the sports news portal once again. Now, even
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 35 of 48
because its business is steadily growing, there is still a possibility of temporary spikes or bursts
of activity. For example, assume that another popular news outlet refers to the site. This means
that the number of visitors to the site could dramatically increase in a single day.
Example 2: Consider a service that processes daily reports at the end of the day. When the
business day closes, each office sends in a report that the company headquarters processes.
However, because the process is only active a few hours each day, it is also a candidate for
elastic scaling and deployment. In addition, MS Azure is suitable for temporarily scaling out
an application to handle load spikes and then scaling back after the event has passed.
8. Infrastructure Offloading: It has been observed that most cloud scenarios make use of the
elastic scaling of MS Azure. In addition, even applications that show steady workload patterns
will incur a significant cost savings using MS Azure cloud services. It is difficult and costlier
to manage your own data center because it is more expensive in terms of energy, people, skills,
hardware, software licensing, and facilities. In addition, it can be difficult to understand how
costs are tied to individual applications. MS Azure, however, brings those costs to a minimum
and with more transparency as well.
For example, MS Azure Virtual Machines (VM) and Virtual Network (VN) provide an easier
method for migrating on-premises servers and networks to the cloud. However, transitioning
on-premises applications to cloud services or websites also alleviates the pressure on the on-
premises data center. MS Azure and not these data centers are actually responsible for
providing the required computing and storage resources for those applications. MS Azure
provides a pricing calculator for understanding specific costs. It also provides a Total Cost of
Ownership (TCO) calculator for estimating the overall cost reduction that clouds incur by
adopting MS Azure.
9. Resource management, dynamic scaling, high availability, and durability are some of the main
advantages of running applications in the cloud.
10. To ensure the highest levels of availability, for managing unpredictable growth, and for
handling workload spikes, MS Azure is preferred.
11. Quick service, safe and secure service, multiple user access, development environment, and
unlimited storage are some of its benefits.
12. Other benefits include fewer operational issues, more reliability, more flexibility, and
innovative and easier communication among teams and customers.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 36 of 48
The backing up of data to a remote, cloud-based server is known as cloud backup or cloud computer
backup. This data is accessible from multiple distributed and connected resources that comprise a
cloud. Cloud backup solutions enable enterprises or individuals to store their data and computer files
on the Internet using a storage service provider rather than storing the data locally on a physical disk
like a hard disk. Backup providers enable consumers to remotely access the service using a secure
client login application to back up files from the customer’s computers or data center to the online
storage server using an encrypted connection. To restore or update a cloud back up, consumers need
to use the service provider’s specific client application or web browser interface. In addition, files
and data can be automatically saved to the cloud backup service on a regular basis or the information
can be automatically backed up any time changes are made. This is also known as cloud sync.
For enterprises, enterprise-grade cloud backup solutions are available that typically add required
features such as archiving and disaster recovery.
1. Service Providers: These are the companies that offer cloud services to their customers and
businesses. These companies run very big cloud data centers (CDCs to be discussed later).
These CDCs host massively virtualized, redundant software and hardware systems. These may
provide direct services to their customers. They are expert too in data center management and
scalability.
2. Software Vendors: Cloud software (providing cloud services) runs differently than traditional
software. These vendors may perform the same task but their architectures are different. In
addition, sometimes an overlap exists between software vendors and the service providers.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 37 of 48
Software vendors observe that it is economically feasible to package software and hardware
together in the data centers. This also optimizes service delivery in the cloud.
3. Enablers/Implementers: These are the vendors that offer services to provide end-to-end
solutions with software integration from different vendors. Many companies buy software
licenses from vendors but are unable to deploy it due to lack of expertise. Thus, enablers
/implementers can solve this problem by providing consulting services for those purchased
software licenses.
4. Businesses: Any business that can benefit from the cloud will implement it. This is because
every business needs to maintain up-to-date IT and wants to minimize the costs involved.
5. Independent Software Vendors: They are experts in vertical scaling, that is, adding resources
such as storage, processors, and so on, to expand processing capability. They build vertical
applications on an existing platform. The cloud provides a great platform for these independent
software vendors.
As we know, cloud data centers have several servers. This increases the energy consumption. These
servers are designed to be overloaded and overdesigned for better reliability. They must support
redundancy, error-correcting RAM, parity disk drives, (n + 1) power supplies, for example. All this
functionality needs energy to cool and power it, light the data center, provide security, and so on.
This concept of purposely overdesigning a true server for a constant reliable operation is known as a
duty cycle.
Every organization wants its processes to be current, up to date, and effective to make the company
better. Business Process Management (BPM) is done during a crisis. This endeavor produces a
suitable analysis and identifies the bottlenecks in a process. This can be easily done with the cloud.
BPM involves six phases as shown in Figure 2.7.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 38 of 48
The objectives and goals of any business are attached to its vision. Functions are planned around
them. Each function is in turn associated with a list of processes. Thus, functions and processes help
in achieving managerial goals. This is the job of the functional chief of the business.
The existing processes and the required processes must be taken care of and designed. Proper process
flow is needed.
Phase-3: Modeling
Phase-4: Execution
The requirement is to develop software that executes all these steps properly. Buying is also an
option but not an efficient solution. The process becomes more complex when we mix software and
humans.
Phase-5: Monitoring
At this stage, it is necessary to track the identified processes, understand them, and build statistics on
them. All customer transactions must be monitored and made better, if needed.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 39 of 48
Optimization here means minimization of potential bottlenecks, of costs, and so on, because this adds
a “value” to the system.
IBM’s Business Process Manager on the cloud offers business users a quick start. There is no need to
maintain infrastructure. It delivers the BPMS (Business Process Management Service) as a PaaS
service platform.
Other examples of BPM on the cloud are Oracle Fusion, Barium Live, Elite BPM Cloud, Billfish
BPM, Cordys, and Appian BPM Suite. Commercial BPMSs available on the market today include
IBM Business Process Management, Oracle BPM, and MS BizTalk. Open source software like
Shark, Active BPEL, and jBPM are also available.
Testing the cloud involves both verification and validation of applications, environments, and
infrastructure that are made available on a pay-per-use model. It refers to testing of private, public,
and hybrid clouds, that is, whether these meet the customer’s needs or not. Before migrating to the
cloud, the applications in execution should ensure that the security and reliability of the applications
are still in place.
On the other hand, testing on the cloud refers to the cloud infrastructure for performing traditional
testing such as performance, load, stress, security, and compatibility. Testing on the cloud means
testing applications that use resources such as the hardware, software, and infrastructure of the cloud.
Testing-as-a-Service (TaaS) is a business model based on testing services on the cloud. It is an
extension of testing on the cloud that delivers application-testing services in this pay-per-use model.
TaaS is a new service model. It provides a provider provision to perform software testing of a given
Application Under Test (AUT) in a cloud infrastructure based on customer demand.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 40 of 48
As we know, testing is limited by budget, time, costs, exponential number of test cases, no reuse
of tests, and so on. However, due to the unlimited storage of the cloud, rapid availability of
infrastructure, increased scalability, and increased support for distributed testing environments, cloud
testing is a better option. The cloud-based infrastructure should be able to form a test bed that is
allocated to the testing community. Even cloud testing is bound by service-level agreements. A huge
number of test cases and testing scenarios can be formed with the cloud. This is also called on-
demand testing. Cloud computing represents TaaS as a service for SaaS and clouds. The intention is
to validate SaaS in a cloud environment with software scalability, performance, security, and service-
level agreements for a better quality in cloud-based applications. This kind of testing examines inter-
operation capability and cloud compatibility between cloud services and applications in the cloud.
Advantages of TaaS
3. Real-time online validations are possible because the cloud provides on-demand test services.
6. Present day web applications are very complex. Testing these web applications is quite a
challenging task. In general, cloud-based testing operates in a SaaS model. Thus, there is no
need of investment in any hardware or software.
7. It further reduces test errors because the infrastructure that is provided is standardized.
9. Both functional and non-functional testing of mobile applications can be done easily now
because the cloud is geographically distributed.
Some of the popular tools for cloud testing are CloudTest, BlazeMeter, LoadStorm, Janova, Silk
Performer CloudBurst from Borland, and HP Quality Center.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 41 of 48
1. In cloud computing, data is shared via the Internet. Data is stored in a data center so that users
can access it from the cloud via these data centers. Thus, security is vulnerable. Hackers can
easily hack the data by any means. Data should be protected during uploads into the data center.
5. Access control should be monitored so that only authentic users can use the cloud services.
6. Internet and mobile devices have provided new opportunities for data leaks.
7. A recent report by the IDC, which surveyed 244 respondents, found that security was the main
challenge among cloud users today.
8. Another article in InfoWorld stated that “.. . . . . . . .megabytes of valuable customer or financial
data could be compromised in just a few seconds if a rogue data-centric mash-up is created” [4].
Several types of controls exist behind the cloud security architecture. They are as follows:
1. Deterrent Controls: These controls are set in place to prevent any purposeful attack on a
cloud system. They are just like a warning sign and do not reduce the actual vulnerability of a
system.
2. Preventive Controls: These controls manage vulnerabilities. If attacks were to occur, the
preventive controls are in place to cover the attack and reduce the damage and violation to the
system’s security.
3. Corrective Controls: They are used to reduce the effect of an attack. These controls take
action as an attack is occurring.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 42 of 48
4. Detective Controls: They are used to detect any attacks that may be occurring to the system.
In an event of an attack, the detective control will signal the preventive or corrective controls to
address the issue.
SUMMARY
In this chapter, we studied cloud computing as Internet-based computing that allows users to access
resources in a pay-per-use model. The cloud is a new paradigm of computing that is changing the
ways that computational services are being used. A cloud computing platform has a Cloud Service
Provider (CSP) with a large number of systems connected to it providing services to clients via the
Internet. In addition to basic services, the cloud also provides TaaS, SeaaS, DaaS, MaaS as different
services.
Ans. 1 It is email access via a single computer, which also stores all email messages; for
example, Microsoft Outlook or Outlook Express.
Ans. 2 Zvent is a web search engine for local events. You can upload a user event schedule
into the Zvents database and then anyone in the user’s area can find out what is scheduled on
the calendar.
Ans. 3 Different project management applications include additional functions useful in the
management of group projects. These features may include group to-do lists, web-based file
sharing, message boards, and time and cost tracking.
Ans. 4 HiTask, Zoho Planner, Basecamp, and GoPlan are some of the task management
applications in the cloud.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 43 of 48
Ans. 6 Google Presentations, Preezo, and Zoho Show are some of them.
Q8. What is Google Calendar? How is it different from Yahoo Calendar? In addition, explain what
the Apple MobileMe Calendar is?
Ans. 8 Google Calender is a free, fully featured, and easy to use calendar application that lets
the user create both personal and shared calendars which makes it useful for tracking business
groups, family, and community schedules. However, in Yahoo Calendar there is an additional
Add Task button.
The MobileMe calendar is a web-based calendar that can be accessed from any computer
connected to the Internet, through a Mac or Windows.
Ans. 9 Dabble DB, MyWebDB, QuickBase, TeamDesk, and Zoho Creator are some of them.
Ans. 10 Google Docs, ajaxWrite, Adobe Buzzword, KBdocs, and Zoho Writer are some of
them.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 44 of 48
(a) Security
(f) Localization
Q13. What are the benefits of SOAs used for project work?
Ans. 13 According to the Gartner report,(a) More than 60% of SOA projects had a positive
impact on their organizations (to grow revenue).(b) SOA projects give positive returns within
10 months.(c) SOA reduces the cost of building IT systems.(d) SOA improves a developer’s
productivity too.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 45 of 48
Q14. KR V & V company developed an application that they had to deploy as an SaaS and make it
available to the global user community. Later the project manager found that there was a need
to do performance testing with a large number of users because the user load was very high.
However, the KR V & V company could not afford to procure costly performance automation
tools for the purpose. What should this company do?
Ans. 14 KR V & V company should approach another company offering TaaS services. This
new TaaS-based company decides to conduct performance testing using HP’s Quality Center
on a cloud computing platform by paying only resource usage charges. The testing is done and
then the application is deployed as a SaaS.
Ans. 15 Cloud service vendors such as SOASTA, HP Cloud, Testhouse, Compuware, Load
Impact, and Neotys are some of the companies that allow simulation of large web applications
and checks their behavior on a cloud platform.
Q16. Write down the steps that are followed in using cloud-testing services.
Ans. 16. The following tests are followed when using cloud-testing services: S1: Select cloud
test service provider S2: Develop user scenarios to test S3: Design test cases S4: Leverage
cloud servers S5: Conduct testing S6: Analyze tests
Ans. 17. Media Cloud is a system that lets you see the flow of the media. Media Cloud
automatically builds an archive of news stories and blogs from the web, applies language
processing, and gives you ways to analyze and visualize data. This field is still in its infancy
and more research needs to be done.
(a) CloudStack
(e) Resiliency
(f) Provisioning
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 46 of 48
Ans. 18.
(a) CloudStack: It is an open source monolithic software platform that groups computing
resources to build public, private and hybrid Infrastructure as a Service (IaaS) clouds. It handles
network, storage, and nodes that form a cloud infrastructure. The CloudStack platform is used
to install, manage, and configure cloud computing environments. Some of the benefits of
CloudStack are as follows:
(b) Computing on Demand (CoD): This is an enterprise model that maintains computer
resources that are made available to the user enterprises as needed. Since demand for resources
is dynamic, the vendor must maintain sufficient resources and this is a challenge for them.
Vendors such as HP, MS, IBM, Salesforce, Amazon, and Sun Microsystems all provide on-
demand services because it allows them to create elastic environments for better scaling.
(c) Cloud Sourcing: A method in which cloud services and products are outsourced to one or
more cloud providers. It is the future of cloud computing. This concept allows organizations to
procure their entire IT infrastructure from the cloud.
(d) Cloud Analytics: This is also called SaaS-based Business Intelligence (BI). It is a type of
cloud service model wherein the elements of data analytics are provided with the help of a
private or public cloud only. Such applications are provided on a utility-based or pay-per-use
model. For example, there are hosted data warehouses, cloud-based social media analytics, and
SaaS BI. Cloud analytics will combine some or all of the service models of the cloud to deliver
solutions.
(e) Resiliency: This is defined as the ability of a data center and its components to continue
operating in case of any damage such as a power outage, malfunctioning of equipment, or
natural disasters like earthquakes, for example.
(f) Provisioning: This is the process of allocating a cloud provider’s resources to the
customer. Through the term provisioning, we mean what, how, and when an organization can
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 47 of 48
provide cloud services. It helps in managing workloads, resources, tasks, and processes. It can
be done in three ways:
2. Contractual Provisioning (the customer and contractor sign an agreement for required
services)
3. Self-provisioning/cloud self-service (the customer fills out a form, pays through a credit
card, and then he gets resources within a few hours)
(g) Cloud Governance: This is defined as a sharing of responsibility between the cloud
provider and the user of cloud services. The main objective of cloud service governance is to
protect data and applications that are located far away (remotely). It manages contracts for
SLAs and charging through credit cards. However, to make use of fine-grained services,
governance will help. It also involves defining policies, design policies, and implementation
policies.
(a) Platforms
Platforms: Show how a cloud computing environment is delivered to the end user. The objective
is to support dynamic website development, web services, and web applications. Newer technologies
such as AJAX (Asynchronous JavaScript and XML) creates interactive web applications [1,2].
Similarly, Python Django is a free open source web application framework developed in the Python
language. It is used to create complex websites with database connectivity.
Web APIs: API stands for Application Programming Interface where there is a set of programs to
access a web-based program. For example, GoGrid has an API that allows developers to perform
monitored communications with their cloud hosting infrastructure. It supports languages such as
JAVA 2, Python, PHP, and Ruby.
Similarly, the Apex API is very popular enterprise web service used today.
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].
Copyright © 2017. Mercury Learning & Information. All rights reserved. Ebook pages 43-77 | Printed page 48 of 48
Web Browsers: Popular web browsers like Chrome, IE 8, Firefox, and Safari, for example, are
all used to getting cloud services through the Internet.
Q20. Distinguish between a traditional data center and a cloud data center.
4. It needs frequent application patching and updating. 4. It has minimal application patching and updating.
Q4. What is cloud testing? On what factor does cloud testing depend?
Chopra, Rajiv. Cloud Computing : An Introduction, Mercury Learning & Information, 2017. ProQuest Ebook Central, [Link]
Created from UNICAF on 2025-06-11 [Link].