CC Notes 1
CC Notes 1
(PE-IT-A404A)
Mitu NSehgal
UNIT-I CLOUD COMPUTING
Syllabus Unit-I
Overview of Computing Paradigm: Recent trends in Computing, Grid Computing, Cluster
Computing, Distributed Computing, Utility Computing, Cloud Computing, evolution of cloud
computing, Business driver for adopting cloud computing.
Cloud Computing (NIST Model), History of Cloud Computing, Cloud service providers,
Properties, Characteristics & Disadvantages, Pros and Cons of Cloud Computing, Benefits of Cloud
Computing, Cloud computing vs. Cluster computing vs. Grid computing, Role of Open Standards.
Computing
Computing is the process of using computer technology to complete a given goal-oriented task.
Computing may include the design and development of software and hardware systems for a broad
range of purposes - often structuring, processing and managing any kind of information - to aid in
the pursuit of scientific studies, making intelligent systems, and creating and using different media
for entertainment and communication.
Computing has also been defined as a branch of engineering science that deals with the systematic
study of algorithmic processes, which are used to describe and transform information.
It also has specific meanings depending on the context and field in which it is used. For example,
cloud computing, social computing, ubiquitous computing, parallel computing and grid computing
all fall under the umbrella of the general meaning of computing while still having a specific
purpose and definition separate from each other. Essentially, these are different applications of
computing.
1. Grid Computing
In grid computing individual users obtain computing resources like storage, applications, data,
processors etc. on demand with limited knowledge of where the resources are located. Grid
computing captures the basics of distributed computing that involves coordinating as well as
sharing computing, data, application and storage or network resources across dynamic and
geographically dispersed organization. The management features of grid software enables the
linking of computer resources together in a way that lets an individual use a single machine to
leverage as well as access the collected power of all the machines within the grid computing
system.
1
2. Cluster Computing
Cluster computing is the growing field to link together inexpensive commodity computers as well
as helps to find an answer too many problems. Cluster programmers require mainly the
environment so that they can easily allow them to take the advantage of the clusters performance
capabilities. Locality and consideration of data distribution are primarily to the success of any
cluster. Cluster is the journal of applications and networks that are parallel processing distributed
computing. Cluster is easily defined as the technique of linking between two or more computers
into a local area network.
3. Distributed Computing
Distributed Computing system is the collection of autonomous computers that are connected using
a communication network and they communicate with each other by passing messages. The
different processors have their own local memory. They use a distribution middleware. They help
in sharing different resources and capabilities to provide users with a single and integrated coherent
network.
4. Utility Computing
Utility computing is the process of providing computing service through an on-demand, pay-per-
use billing method. Utility computing is a computing business model in which the provider owns,
operates and manages the computing infrastructure and resources, and the subscriber’s accesses it
as and when required on a rental basis.
One of the biggest tech trends to emerge in recent years is the Internet of Things. Simply put, the
Internet of Things (abbreviated IOT) is the idea that all technological devices can be connected to
the internet and to each other in an attempt to create the perfect marriage between the physical and
digital worlds. How will this impact you? It depends on your industry. For example, for those who
work in marketing, advertising, media or business management, IOT could provide a wealth of
information on how consumers engage with products by tracking their interactions with digital
devices. In turn, this data could be used to optimize marketing campaigns and user experiences.
6. Machine learning
2
those in your social network. They do this by analyzing your likes, shares and comments and then
prioritizing content from your closest connections, serving you that content first.
Remember watching movies about virtual reality and thinking how cool it would be if it was
actually like that in real life? Well, it’s about to be. Although VR has been around since the 1950s,
until recently the technology wasn’t able to deliver the fully immersive digital experience users
have been craving. That’s about to change with recent improvements to both hardware and
programming, and the effects are going to be felt across almost every industry from retail to
education.
How it’s affecting industries: Virtual reality has been a popular component of video games for
several years and this trend is continuing to expand. In addition to video games, VR is likely to
affect companies across the board as they adopt the technology to help them engage customers
more effectively and optimize their sales and marketing efforts. It’s also a potentially useful tool for
learning and is increasingly being adopted by educational organizations.
8. Touch commerce
Being able to buy anything you want with the touch of a finger may have seemed like a fantasy a
few years ago, but it’s now a reality. Merging touch-screen technology with one-click shopping,
touch commerce allows consumers to buy products easily from their phones. After linking their
payment information to a general account and enabling the feature, customers are able to buy
everything from clothes to furniture with just a fingerprint.
9. Cognitive Technology
Cognitive technology is in the same vein as machine learning and virtual reality except that it’s a
broader concept. For example, the cognitive technology umbrella includes things like natural
language processing (NLP) and speech recognition. Combined, these different technologies are able
to automate and optimize a lot of tasks that were previously done by people, including certain
aspects of accounting and analytics.
Grid Computing
In grid computing individual users obtain computing resources like storage, applications, data,
processors etc. on demand with limited knowledge of where the resources are located. Grid
computing captures the basics of distributed computing that involves coordinating as well as
3
sharing computing, data, application and storage or network resources across dynamic and
geographically dispersed organization. The management features of grid software enables the
linking of computer resources together in a way that lets an individual use a single machine to
leverage as well as access the collected power of all the machines within the grid computing
system.
GRID CHARACTERISTICS
Grid computing is applying the resources of many computers in a network to a single problem at
the same time - usually to solve a scientific as well as technical problem that requires a great
number of computer processing cycles.
12. Dynamism and Diversity 13. Distributed Job Management & scheduling
Advantages Disadvantages
Can solve larger, more complex problems in a Grid software and standards are still
shorter time evolving
Reliability High Internet Connection Required
Easier to collaborate with other organizations Non-interactive job submission
Resource Balancing Not Stable
4
Cloud Computing (PE-IT-A404A) Sem-8th Mitu Sehgal, Asst. Professor, IT
Access to Additional Resources Different Administrator Domains
Make better use of existing hardware Learning curve to get started
Computers working together Technology support to utilize the grid
Unused computing capacity is effectively used Some applications cannot be parallelized
3. Enables the linking of cheaper computers together, instead of spending a lot of money on one
machine
4. Technologies being used are open source, trust and transparency is encouraged
GRID USES
5
Cluster Computing
Cluster computing is the growing field to link together inexpensive commodity computers as well
as helps to find an answer too many problems. Cluster programmers require mainly the
environment so that they can easily allow them to take the advantage of the clusters performance
capabilities. Locality and consideration of data distribution are primarily to the success of any
cluster. Cluster is the journal of applications and networks that are parallel processing distributed
computing. Cluster is easily defined as the technique of linking between two or more computers
into a local area network.
Advantages Disadvantages
Reducing cost Programmability Issues
Manageability Problem in Finding Fault
Single System Image Difficult to handle
High Availability Difficult for developing software for distributed system
Improves network technology Easily accessed and applied to secret data
Distributed Computing
6
A distributed Computing system is the collection of autonomous computers that are connected
using a communication network and they communicate with each other by passing messages. The
different processors have their own local memory. They use a distribution middleware. They help
in sharing different resources and capabilities to provide users with a single and integrated coherent
network.
Distributed computing is a field of computer science that studies distributed systems and the
computer program that runs in a distributed system is called a distributed program.
Advantages: -
7
Disadvantages: -
• The added complexity required to ensure proper co-ordination among the sites.
• Software Development Cost: - It is more difficult to implement a distributed database
system; thus it is more costly.
• Greater Potential for Bugs: - Since the sites that constitute the distributed database system
operate parallel, it is harder to ensure the correctness of algorithms, especially operation
during failures of part of the system, and recovery from failures. The potential exists for
extremely subtle bugs.
Utility Computing
Utility computing is the process of providing computing service through an on-demand, pay-per-
use billing method. Utility computing is a computing business model in which the provider owns,
operates and manages the computing infrastructure and resources, and the subscriber’s accesses it
as and when required on a rental basis.
Various billing models are being explored. A few common ones are:
1. Billing per user count. As an example if an organization of 100 people uses Google's Gmail
or Microsoft Live as their internal email system with email residing on servers in the cloud,
Google/Microsoft may bill the organization on per user basis.
2. Billing per Gigabyte. If an organization is using Amazon to host their data on the cloud,
Amazon may bill the organization on the disk space usage.
3. Billing per hour/day. As an example a user may pay for usage of virtual servers by time
utilized in hours
8
Evolution of cloud Computing
We have been using cloud computing unknowingly through Gmail and Google docs, yet we never
thought that these were cloud computing services.
The term “cloud” was actually derived from telephony. The telecommunication companies offered
Virtual Private Network with good quality at affordable prices. The symbol of the cloud
represented the separation point which was the only responsibility of the provider. Cloud
computing manages the servers and network infrastructure management.
It has essentially evolved from various computing technologies like grid computing, utility
computing, parallel computing, and virtualization. The most recent development of cloud
computing has evolved from the Web2.0 technology which caters to web applications that facilitate
participatory information sharing, interoperability & user-cantered design etc. Examples of Web 2.0
include wikis, blogs, social networking & video sharing sites etc.
The evolution of cloud computing can be categorised into three basic phases:
1. The Idea Phase- This phase incepted in the early 1960s with the emergence of utility and grid
computing and lasted till pre-internet bubble era. Joseph Carl Robnett Licklider was the founder of
cloud computing.
2. The Pre-cloud Phase- The pre-cloud phase originated in the 1999 and extended to 2006. In this
phase internet as the mechanism to provide Application as Service.
3. The Cloud Phase- The much talked about real cloud phase started in the year 2007 when the
classification of IaaS, PaaS, and SaaS got formalized. The history of cloud computing has
witnessed some very interesting breakthroughs launched by some of the leading computer/web
organizations of the world.
The idea and the service models around cloud computing have changed over time, the motivation to
use cloud computing has also changed. Here are five business drivers of why today's businesses
want to use cloud computing and the related changes in these drivers:
The idea to lower costs by utilizing cloud computing was and still is one of the key drivers of why
businesses want to adopt cloud computing. For many businesses, the budget for server and
9
networking hardware, licenses, and staff to maintain the environment has reached an upper limit.
And for many of these businesses, the only way to gain more efficiency and flexibility is by
reducing costs, especially around the maintenance of their IT infrastructure. The gained flexibility
in budget and staff then can be used for other essential areas such as innovation.
Many businesses have spent a considerable amount of effort on their traditional IT infrastructure
and their desire to continue to use this infrastructure for some time is not surprising. However, at
the same time, they have to modernize, and maybe even expand their business. With the given
budget limitations discussed above. The emerging hybrid cloud solutions can help combine the best
of traditional IT, public, and private cloud. The increased demand for hybrid cloud solutions is a
visible business usage shift of cloud computing.
3. Speed of change
An aspect becoming more relevant for cloud computing adoption is the increased pace of change in
the market and faster cycles of renewal. Many traditional IT in-house infrastructures cannot keep
pace with increasing demands for new CPUs, extended storage, and faster networks, at least not if
the IT budget is limited. Speed for go-to-market becomes an important aspect with new emerging
technologies and changes in customer behaviour such as with the increasing demands for broad
mobile usage.
4. Innovation
Another key business driver becoming more relevant with cloud computing adoption is innovation.
For example, the broad usage of mobile technology and the rise of the Internet of Things (IoT),
challenges many businesses. They are also confronted with the Big Data phenomenon. Customer
expectations have changed; they want to consume services more easily and comfortably from their
mobile devices. Cloud computing offers the flexibility to quickly adopt the necessary computing
resources to analyze and respond to these changing customer demands.
With increasing complexity of an interconnected world and known cyber threats, compliance and
regulatory requirements have become more important business drivers for cloud computing
adoption. While security concerns were rather a hindering factor for cloud computing adoption and
usage by companies previously, there is now a shift to use cloud computing more often because of
its standardization and automation aspects. There is an increasing belief that with standardization,
10
automation, and build-in security, a better compliance posture can be achieved from a regulatory
compliance standpoint than in a traditional IT infrastructure with many manual processes and
diversity of hardware, tools, and technology.
After years in the works and 15 drafts, the National Institute of Standards and Technology's (NIST)
working definition of cloud computing, the 16th and final definition has been published as The
NIST Definition of Cloud Computing (NIST Special Publication 800-145).
Cloud computing is a relatively new business model in the computing world. According to the
official NIST definition, "cloud computing is a model for enabling ubiquitous, convenient, on-
demand network access to a shared pool of configurable computing resources (e.g., networks,
servers, storage, applications and services) that can be rapidly provisioned and released with
minimal management effort or service provider interaction."
The NIST definition lists five essential characteristics of cloud computing: on-demand self-service,
broad network access, resource pooling, rapid elasticity or expansion, and measured service. It also
lists three "service models" (software, platform and infrastructure), and four "deployment models"
(private, community, public and hybrid) that together categorize ways to deliver cloud services. The
definition is intended to serve as a means for broad comparisons of cloud services and deployment
strategies, and to provide a baseline for discussion from what is cloud computing to how to best use
cloud computing.
11
History of Cloud Computing
Cloud computing is one the most innovative technology of our time. Following is a brief history of
Cloud computing.
Early 1960S: - The computer scientist John McCarthy, come up with concept of timesharing, and
enabling Organization to simultaneously use an expensive mainframe. This computing is described
as a significant contribution to the development of the Internet, and a pioneer of Cloud computing.
In 1970: - Using virtualization software like VMware. It become possible to run more than one
Operating System simultaneously in an isolated environment. It was possible to run a completely
different Computer (virtual machine) inside a different Operating System.
In 1997: - The first known definition of the term “Cloud Computing” seems to be by Prof.
Ramnath Chellappa in Dallas in 1997 – “A computing paradigm where the boundaries of
computing will be determined by economic rationale rather than technical limits alone.”
12
In 2003: - The first public release of Xen, which creates a Virtual Machine Monitor (VMM) also
known as a hypervisor, a software system that allows the execution of multiple virtual guest
operating systems simultaneously on a single machine.
In 2006: - In 2006, Amazon expanded its cloud services. First was its Elastic Compute cloud
(EC2), which allowed people to access computers and run their own applications on them, all on
the cloud. Then they brought out Simple Storage Service (S3). This introduced the pay-as-you-go
model to both users and the industry as a whole, and it has basically become standard practice now.
In 2013: - The Worldwide Public Cloud Services Market totalled £78bn, up 18.5 per cent on 2012,
with IaaS (infrastructure-as-a-service) the fastest growing market service.
In 2014: - In 2014, global business spending for infrastructure and services related to the cloud will
reach an estimated £103.8bn, up 20% from the amount spent in 2013 (Constellation Research).
Earlier we used to store our data in hard drives on a computer. Cloud Computing services have
replaced such hard drive technology. Cloud Computing service is nothing but providing services
like Storage, Databases, Servers, networking, the software’s etc through the Internet.
Few Companies offer such computing services, hence named as “Cloud Computing Providers”.
They charge its users for utilizing such services and the charges are based on their usage of
services.
1) Infrastructure as a Service (IaaS): This service provides the infrastructure like Servers,
Operating Systems, Virtual Machines, Networks, and Storage etc on rent basis.
2) Platform as a Service (PaaS): This service is used in developing, testing and maintaining of
software. PaaS is same as IaaS but also provides the additional tools like DBMS services etc.
3) Software as a Service (SaaS): This service makes the users connect to the applications through
the Internet on a subscription basis.
13
Below mentioned are the top Cloud Computing Companies:
• AWS is the safest and protected platform of cloud service which offers a wide set of
infrastructure services like database storage, computing power, networking etc.
• Using this AWS one can host the static websites.
• By using such services, users are able to build complicated applications that are trustworthy,
scalable and flexible.
• One can have the hands-on experience of AWS for free.
Microsoft Azure:-
• Microsoft Azure is used for deploying, designing and managing the applications through a
worldwide network.
• Previously Microsoft Azure was known as Windows Azure.
• This Cloud computing service supports various operating systems, databases, tools,
programming languages and frameworks etc.
• A free trial version of Microsoft Azure is available for 30 days.
• Google Cloud Platform uses resources such as computers, virtual machines, hard disks etc
located at Google data centres.
• Google Cloud Platform is an integrated storage used by developers and enterprises for live
data.
• Apart from the free trial, this service is available at various flexible payment plans based on
Pay-As-You-Go (PAYG).
Adobe:-
• Adobe offers many products that provide cloud services. Few among them are Adobe
Creative Cloud, Adobe Experience Cloud and Adobe Document Cloud etc.
• Adobe Creative Cloud service is a SaaS, that offers its users to access the tools offered by
Adobe like editing the videos, photography, graphic designing etc.
• Adobe Document Cloud is a complete solution for digital documentation.
VMware:-
14
• VMware’s cloud computing is exclusive and helps in reducing the IT intricacy, lower the
expenses, provides flexible agile services etc.
• VMware vCloud Air is a safe and protected public cloud platform that offers networking,
storage, disaster recovery and computing etc.
IBM Cloud:-
• IBM Cloud offers Iaas, PaaS, and SaaS through all the available cloud delivery models.
• Using IBM Cloud one can have the freedom to select and unite your desired tools, data
models and delivery models in designing/creating your next-generation services or
applications.
• With IBM Bluemix Cloud platform one can incorporate highly performing cloud
communications and services into your IT environment.
Red Hat:-
• Red Hat is an Open Cloud technology used by IT organizations to deliver agile and flexible
solutions.
• Using Red Hat Cloud we can modernize the apps, update and manage them from a single
place and integrate all the desired parts into a single solution.
• Red Hat Cloud Infrastructure helps us to build and manage an open cum private cloud at
low cost.
Oracle Cloud:-
• Oracle Cloud is available as SaaS, PaaS, and IaaS. Oracle Cloud helps the companies in
transforming their business quickness and reducing the IT Complexity.
• Oracle Cloud SaaS provides a complete data-driven and secure cloud environment.
• Oracle Cloud PaaS helps IT Enterprises and Independent developers to develop, connect,
secure and share data across the applications.
Dropbox:-
• Dropbox is a refined cloud storage service used by small businesses and customers to store
files or documents virtually on remote cloud servers.
• Generally, Dropbox serves as an online or cloud personal hard drive.
• Dropbox allows its users to access any saved data or content from any device through an
internet connection.
15
• Dropbox is available as a desktop app, where users can download it and save the files
directly in the Dropbox folder located on your desktop.
Cloud computing is a modern computing paradigm that providing IT infrastructure and essential
services i.e. Infrastructure as a service (IaaS), Platform as a service (PaaS), Software as a service
(SaaS) etc. Cloud computing is an important model for enabling ubiquitous, convenient, on demand
network access to a shared pool of configurable computing resources like networks, servers,
storage, applications, and services that can be rapidly provisioned as well as released with minimal
management effort.
• User centric: This means once a user is connected to cloud any data there, such as images,
videos, applications, becomes his property. Not only the data but the devices connected also
become his and he can share it with other users.
• Task Centric: Cloud computing focus on what one need and how application can do it for us.
Here documents are given more priority than the applications which create them.
• Powerful: Powerful in the sense that as there is a large computer more computing power and
mass data storage possible.
• Self Healing: Is called self healing because hot backups are available for every document in
the cloud. Hence if one document crashes there will be it's duplicate ready to run.
• Multi-tenancy & Intelligence: Multi-tenancy refers to sharing of data and costs across a large
pool of users. As various data are stored in cloud data mining and analysis are necessary for
accessing information in an intelligent manner.
16
Cloud Computing (PE-IT-A404A) Sem-8th Mitu Sehgal, Asst. Professor, IT
• Programmable: Many processes in cloud computing shall be automate such as backing up
crashed data with its duplicate. Hence programming is associated with cloud computing.
• Flexible: Flexible as the users may be of different varieties and hence it has to match with their
needs.
A consumer can unilaterally provision computing capabilities, such as server time and network
storage, as needed automatically without requiring human interaction with each service provider.
Capabilities are available over the network and accessed through standard mechanisms that
promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops,
and workstations).
3. Resource pooling.
The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant
model, with different physical and virtual resources dynamically assigned and reassigned according
to consumer demand. There is a sense of location independence in that the customer generally has
no control or knowledge over the exact location of the provided resources but may be able to
specify location at a higher level of abstraction (e.g., country, state, or data-center). Examples of
resources include storage, processing, memory, and network bandwidth.
4. Rapid elasticity.
Capabilities can be elastically provisioned and released, in some cases automatically, to scale
rapidly outward and inward commensurate with demand. To the consumer, the capabilities
available for provisioning often appear to be unlimited and can be appropriated in any quantity at
any time.
5. Measured service.
Cloud systems automatically control and optimize resource use by leveraging a metering capability
at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth,
17
and active user accounts). Resource usage can be monitored, controlled, and reported, providing
transparency for both the provider and consumer of the utilized service.
Today cloud computing has taken the IT world by storm. Organizations, irrespective of their size,
are moving their current IT infrastructure to the public cloud, their own private cloud or to the
hybrid cloud – with best features of both public and private cloud. But still, there’s a little section of
naysayers who are still thinking – what are the pros and cons of cloud computing, how will cloud
benefit my business, should I migrate to the cloud just because others are moving to it.
Well, they should certainly analyze their current IT infrastructure, weigh their limitations and
workload or application restrictions, if any, and then evaluate whether the cloud will solve or
remove their present issues and limitations.
There are certain advantages and disadvantages of cloud adoption and this post will tell you the top
ones that will help you make an informed decision whether the cloud is for you or not. Read on to
get the answers.
1. No cost on infrastructure: Cloud computing is divided into three major categories as per the
services: Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a
Service (SaaS).
In all these categories, one thing is common that you don’t need to invest in hardware or any
infrastructure. In general, every organization has to spend a lot on their IT infrastructure to set
up and hire a specialized team. Servers, network devices, ISP connections, storage, and
software – these are the major things on which you need to invest if we talk about general IT
infrastructure. But if you move to cloud computing services, then you don’t need to invest in
these. You simply go to a cloud services provider and buy the cloud service.
2. Minimum management and cost By selecting the cloud, you save cost in many ways:
Zero investment on infrastructure.
– Since you don’t own the infrastructure, you spend nothing on its management or staff to
manage it.
– Cloud works on pay as you go model, so you spend only on resources that you need.
Nothing more!
18
When you opt for the cloud, the management of its infrastructure is the sole responsibility of
the cloud provider and not of the user.
3. Forget about administrative or management hassles: Whenever there is a purchase or up-
gradation of hardware, a lot of time is wasted looking for best vendors, inviting quotations,
negotiating rates, taking approvals, generating POs and waiting for delivery and then in
setting up the infrastructure. This whole process includes lots of administrative/managerial
tasks that waste a lot of time.
With cloud services, you just need to compare the best cloud service providers and their plans
and buy from the one that matches your requirements. And this whole process doesn’t take
much time and saves you a lot of efforts. Your system maintenance tasks are also eliminated
in the cloud.
4. Accessibility and pay per use: Cloud resources are easily accessible from around the globe –
anytime, anywhere and from any device and you have complete access to your resources.
This decides your billing also -you only pay for what you use and how much you use. It’s like
your phone or electricity bill. But with other IT infrastructure, one spends the complete
amount in one go and it is very very rare that those resources are used optimally and thus, the
investment goes waste.
5. Reliability: Your infrastructure in the cloud increases the reliability and availability of
applications and services. Cloud services run on pooled and redundant infrastructure which
provides you with higher availability of IT services.
6. Data control: Another primary advantage of the cloud is that it centralizes all the data from
multiple projects and branch offices to a single location. You gain complete control over the
data without visiting individual places for checking the information.
7. Data backup & recovery: Loss of data can significantly impact your business. You might
lose critical information which can cost you a huge sum of money, waste your valuable time
and adversely impact your brand image. To prevent it, you can automatically backup all the
data to the cloud on a regular basis. This helps you to recover any data in case of accidental
deletion, loss because of natural calamity or if the hard drive crashes.
8. Huge cloud storage: Most cloud services provide you a free, secure and huge storage space
to store all your valuable information. Although most cloud storage services like OneDrive
offer you a good amount of free storage, but if you use it all, you can always go for buying
more secure storage in the cloud.
9. Automatic software updates: Updating a system every now and then can be a frustrating
task for enterprises. The IT department needs to update the system for every individual which
not only wastes time but affects the productivity. But if you are using cloud-based
applications, they will get automatically updated, without any involvement from the users.
19
What are the disadvantages of cloud computing?
1. Requires good speed internet with good bandwidth: To access your cloud services, you
need to have a good internet connection always with good bandwidth to upload or download
files to/from the cloud
2. Downtime: Since the cloud requires high internet speed and good bandwidth, there is always
a possibility of service outage, which can result in business downtime. Today, no business
can afford revenue or business loss due to downtime or slow down from an interruption in
critical business processes.
3. Limited control of infrastructure: Since you are not the owner of the infrastructure of the
cloud, hence you don’t have any control or have limited access to the cloud infra.
4. Restricted or limited flexibility: The cloud provides a huge list of services, but consuming
them comes with a lot of restrictions and limited flexibility for your applications or
developments. Also, platform dependency or ‘vendor lock-in’ can sometimes make it difficult
for you to migrate from one provider to another.
5. Ongoing costs: Although you save your cost of spending on whole infrastructure and its
management, but on the cloud, you need to keep paying for services as long as you use them.
But in traditional methods, you only need to invest once.
6. Security: Security of data is a big concern for everyone. Since public cloud utilizes the
internet, your data may become vulnerable. In the case of public cloud, it depends on the
cloud provider to take care of your data. So, before opting for cloud services, it is required
that you find a provider who follows maximum compliance policies for data security.
For complete security of data on the cloud, one needs to consider somewhat costlier private
cloud option or the hybrid cloud option, where generic data can be on the public cloud and
business-critical data is kept on the private cloud.
7. Vendor Lock-in: Although, the cloud service providers assure you that they will allow you
to switch or migrate to any other service provider whenever you want, but it is a very difficult
process. You will find it complex to migrate all the cloud services from one service provider
to another. During migration, you might end up facing compatibility, interoperability and
support issues. To avoid these issues, many customers choose not to change the vendor.
8. Technical issues: Even if you are a tech whiz, the technical issues can occur, and everything
can’t be resolved in-house. To avoid interruptions, you will need to contact your service
provider for support. However, not every vendor provides 24/7 support to their clients.
20
Benefits of Cloud Computing
Cloud computing increases scalability, efficiency, helps improve cash flow as well as offers many
more benefits such as:
Many of today’s Cloud Computing consumers are frustrated with the lack of interoperability and
flexibility when it comes to being able to host cloud computing workloads across either public,
private and or hybrid clouds, as well as when there is a desire or need to migrate cloud workloads
across cloud instantiations as implemented by differing vendor technologies.
Interoperability: The ability for disparate systems, and or organizations to work together. For
business and or mission systems, this means the ability to exchange and interpret information and
or data. In a cloud environment, this can mean the ability to shift workloads from one cloud to
another.
21
Flexibility: Sometimes referred to as business / mission agility, flexibility has to do with the ability
to adapt to changing circumstances. In a cloud environment, this can mean leveraging all available
resources as needed in order meet business / mission goals and objectives.
The lack of interoperability and flexibility is a legitimate frustration, and should also be a concern
for those that are getting ready to invest in design, integration, test, and fielding of new cloud
workloads for their organizations.
Today’s Cloud Computing workloads are diverse. Examples include email, middleware and
platform services, and J2EE application and services based architectures leveraging n-tier
implementations. Many of these workloads leverage well known patterns. What has changed is that
Cloud Computing offers the ability of an organization to scale their workloads to meet changing
demands – elasticity. Another thing that has changed is the rate of change. Today’s competitive
environments demand that an organization possess the ability to rapidly change to meet dynamic
changes in the environment (business and or mission).
The ability for an organization to be agile in today’s cloud computing environments requires
leveraging the ability to orchestrate resources (compute, storage, network, service desk, etc.),
workloads, and services within the cloud.
Development, integration and test, and operational phases of projects need to be both agile and
efficient. Organizations need solutions that ease integration efforts, by allowing effective and
efficient use of their engineering, development, test, and operational tooling though the ability to
share and use linked data
Open standards are key to interoperability and flexibility. There are two specific sets of standards
that set out to address the challenges discussed above: Oasis Topology and Orchestration
Specification for Cloud Applications (TOSCA); and Open Services for Lifecycle Collaboration
(OSLC).
TOSCA: OASIS TOSCA works to enhance the portability of cloud applications and services with
attribution across application and infrastructure cloud services, relationships between the parts of
the service, and operational behaviour (e.g. deploy, patch, shutdown, etc.). TOSCA enables higher-
level operational behaviour to be associated with cloud infrastructure management.
OSLC: An open community for building practical specifications for integrating software. The
initiative is creating a family of web services specifications for products, services, and other tools
that support all phases of software and product lifecycle.
22