Complete Unit-1 Final
Complete Unit-1 Final
Chapter1: Introduction and history of cloud computing, Characteristics and advantages of cloud
computing, Cloud service providers and market overview, Virtualization, and its role in cloud
computing.
Cloud Deployment Models: Public, private, and hybrid cloud models, Comparisons and
selection criteria for deployment models, Case studies and examples of cloud deployments.
Grid Computing
Grid Computing can be defined as a network of computers working together to perform a task that
would rather be difficult for a single machine. All machines on that network work under the same
protocol to act like a virtual supercomputer. The task that they work on may include analysing
huge datasets or simulating situations which require high computing power. Computers on the
network contribute resources like processing power and storage capacity to the network.
Grid Computing is a subset of distributed computing, where a virtual super computer comprises
of machines on a network connected by some bus, mostly Ethernet or sometimes the Internet. It
can also be seen as a form of Parallel Computing where instead of many CPU cores on a single
machine, it contains multiple cores spread across various locations. The concept of grid computing
1
isn’t new, but it is not yet perfected as there are no standard rules and protocols established and
accepted by people.
1. Control Node
A computer, usually a server or a group of servers which administrates the whole
network and keeps the account of the resources in the network pool.
2. Provider
The computer which contributes it’s resources in the network resource pool.
3. User
The computer that uses the resources on the network is called user.
When a computer makes a request for resources to the control node, control node gives the user
access to the resources available on the network. When it is not in use it should ideally contribute
it’s resources to the network. Hence a normal computer on the node can swing in between being a
user or a provider based on it’s needs. The nodes may consist of machines with similar platforms
using same OS called homogenous networks, else machines with different platforms running on
various different OS called heterogeneous networks. This is the distinguishing part of grid
computing from other distributed computing architectures.
For controlling the network and its resources a software/networking protocol is used generally
known as Middleware. This is responsible for administrating the network and the control nodes
are merely it’s executors. As a grid computing system should use only unused resources of a
computer, it is the job of the control node that any provider is not overloaded with tasks.
Another job of the middleware is to authorize any process that is being executed on the network.
In a grid computing system, a provider gives permission to the user to run anything on it’s
computer, hence it is a huge security threat for the network. Hence a middleware should ensure
that there is no unwanted task being executed on the network.
The meaning of the term Grid Computing has changed over the years, according to “The Grid:
Blueprint for a new computing infrastructure” by Ian Foster and Carl Kesselman published in
1999, the idea was to consume computing power like electricity is consumed from a power grid.
This idea is similar to current concept of cloud computing, whereas now grid computing is viewed
2
as a distributed collaborative network. Currently grid computing is being used in various
institutions to solve a lot of mathematical, analytical and physics problems.
A scientist studying proteins logs into a computer and uses an entire network of computers to
analyze data. A businessman accesses his company's network through a PDA in order to forecast
the future of a particular stock. An Army official accesses and coordinates computer resources on
three different military networks to formulate a battle strategy. All of these scenarios have one
thing in common: They rely on a concept called grid computing.
At its most basic level, grid computing is a computer network in which each computer's resources
are shared with every other computer in the system. Processing power, memory and data storage
are all community resources that authorized users can tap into and leverage for specific tasks. A
grid computing system can be as simple as a collection of similar computers running on the same
operating system or as complex as inter-networked systems comprised of every computer platform
you can think of.
The grid computing concept isn't a new one. It's a special kind of distributed computing. In
distributed computing, different computers within the same network share one or more resources.
In the ideal grid computing system, every resource is shared, turning a computer network into a
powerful supercomputer. With the right user interface, accessing a grid computing system would
3
look no different than accessing a local machine's resources. Every authorized computer would
have access to enormous processing power and storage capacity.
Though the concept isn't new, it's also not yet perfected. Computer scientists, programmers and
engineers are still working on creating, establishing and implementing standards and protocols.
Right now, many existing grid computer systems rely on proprietary software and tools. Once
people agree upon a reliable set of standards and protocols, it will be easier and more efficient for
organizations to adopt the grid computing model.
1. It is not centralized, as there are no servers required, except the control node which is just
used for controlling and not for processing.
2. Multiple heterogeneous machines i.e., machines with different Operating Systems can
use a single grid computing network.
3. Tasks can be performed parallel across various physical locations and the users don’t
have to pay for it(with money).
4
Lecture 2
Cloud Computing:
Cloud Computing is a Client-server computing architecture. In cloud computing, resources are
used in centralized pattern and cloud computing is a high accessible service. It is a pay and use
business means, in cloud computing, the users pay for the use
Grid Computing:
Grid Computing is a Distributed computing architecture. In grid computing, resources are used
in collaborative pattern, and also in grid computing, the users do not pay for use.
5
S.No Cloud Computing Grid Computing
6
While grid computing is a low
6. Cloud computing is a high accessible service. accessible service.
Lecture 3
Utility Computing
Utility computing is a subset of cloud computing, allowing users to scale up and down based on
their needs. Clients, users, or businesses acquire amenities such as data storage space, computing
capabilities, applications services, virtual servers, or even hardware rentals such as CPUs,
monitors, and input devices.
Utility computing is a subset of cloud computing, allowing users to scale up and down based on
their needs. Clients, users, or businesses acquire amenities such as data storage space, computing
capabilities, applications services, virtual servers, or even hardware rentals such as CPUs,
monitors, and input devices.
7
The utility computing model is based on conventional utilities and originates from the process of
making IT resources as easily available as traditional public utilities such as electricity, gas, water,
and telephone services. For example, a consumer pays his electricity bill as per the number of units
consumed, nothing more and nothing less. Similarly, utility computing works on the same concept,
which is a pay-per-use model.
Utility computing allow the user to pay per use means whatever they are using only for that they
have to pay. It is a plug in that needs to be managed by the organizations on deciding what type of
services has to be deployed from the cloud. Utility computing allows the user to think and
implement the services according to them. Most organizations go for hybrid strategy that combines
internal delivered services that are hosted or outsourced services.
Let's define utility computing this way: Utility computing consists of a virtualized pool of IT
resources that can be dynamically provisioned to ensure that these resources are easily and
continually reallocated in a way that addresses the organization's changing business and service
needs. These resources can be located anywhere and managed by anyone, and the usage of these
resources can be tracked and billed down to the level of an individual user or group.
There are three major reasons why utility computing will become significant in IT:
1. Promises to address pressing business needs, including making the business more agile,
adaptive, and flexible; and, more importantly, able to treat IT as an increasingly variable
cost. The aim of utility computing is to reduce IT costs.
2. Can be supplied in small, incremental bites that deliver fast, demonstrable, significant
return on investment, so companies don't have to wait for the full implementation to
achieve payoffs. Much shorter time to market.
3. Provides total flexibility in implementation, from in-house and self-managed to fully
outsourced, with everything in-between—including a hybrid deployment model in which
in-house capacity can be supplemented by third-party resources to handle peak needs.
8
Advantages and Disadvantages of utility computing
For most clients, the biggest advantage of utility computing is convenience. The client doesn't have
to buy all the hardware, software and licenses needed to do business. Instead, the client relies on
another party to provide these services. The burden of maintaining and administering the system
falls to the utility computing company, allowing the client to concentrate on other tasks.
Cost can be either an advantage or disadvantage, depending on how the provider structures fees.
Using a utility computing company for services can be less expensive than running computer
operations in-house. As long as the utility computing company offers the client the services it
needs to do business, there's no need for the client to look elsewhere. Most of the cost for
maintenance becomes the responsibility of the provider, not the client. The client can choose to
rely on simplified hardware, which is less expensive and can be easier to maintain.
However, in some cases what the client needs and what the provider offers aren't in alignment. If
the client is a small business and the provider offers access to expensive supercomputers at a hefty
9
fee, there's a good chance the client will choose to handle its own computing needs. Why pay a
high service charge for something you don't need?
Utility computing systems can also be attractive targets for hackers. A hacker might want to access
services without paying for them or snoop around and investigate client files. Much of the
responsibility of keeping the system safe falls to the provider, but some of it also relies on the
client's practices. If a company doesn't educate its workforce on proper access procedures, it's not
hard for an intruder to find ways to invade a utility computing company's system.
One challenge facing utility computing services is educating consumers about the service.
Awareness of utility computing isn't very widespread. It's hard to sell a service to a client if the
client has never heard of it. Now that you've read this article, you're ahead of the game.
As utility computing companies offer more comprehensive and sophisticated services, we may see
more corporations choosing to use their services. Eventually, it's possible that computers in data
centers miles from your home or office will handle all your computational needs for you.
The principle of utility computing is very simple: One company pays another company for
computing services. The services might include hardware rental, data storage space, use of specific
computer applications or access to computer processing power. It all depends on what the client
wants and what the utility computing company can offer.
Computer hardware, including servers, CPUs, monitors, input devices and network cables.
10
Internet access, including Web servers and browsing software.
• Software applications that run the entire gamut of computer programs. They could include
word processing programs, e-mail clients, project-specific applications and everything in
between. Industry experts call this particular kind of business "Software as a Service"
(SaaS).
• Access to the processing power of a supercomputer. Some corporations have hefty
computational requirements. For example, a financial company might need to process
rapidly-changing data gathered from the stock market. While a normal computer might
take hours to process complicated data, a supercomputer could complete the same task
much more quickly.
• The use of a grid computing system. A grid computing system is a network of computers
running special software called middleware. The middleware detects idle CPU processing
power and allows an application running on another computer to take advantage of it. It's
useful for large computational problems that can be divided into smaller chunks.
• Off-site data storage, which is also called cloud storage. There are many reasons a company
might want to store data off-site. If the company processes a lot of data, it might not have
the physical space to hold the data servers it needs. An off-site backup is also a good way
to protect information in case of a catastrophe. For example, if the company's building were
demolished in a fire, its data would still exist in another location.
Utility computing rates vary depending on the utility computing company and the requested
service. Usually, companies charge clients based on service usage rather than a flat fee. The
more a client uses services, the more fees it must pay. Some companies bundle services
together at a reduced rate, essentially selling computer services in bulk.
Lecture 4
Introduction to cloud computing
Cloud Computing
In Simplest terms, cloud computing means storing and accessing the data and programs on remote
servers that are hosted on internet instead of computer’s hard drive or local server. Cloud
computing is also referred as Internet based computing.
11
In other words, we can say that Cloud computing means on demand delivery of IT resources via
the internet with pay-as-you-go pricing. It provides a solution of IT infrastructure in low cost.
Before emerging the cloud computing, there was Client/Server computing which is basically a
centralized storage in which all the software applications, all the data and all the controls are
resided on the server side.
12
If a single user wants to access specific data or run a program, he/she need to connect to the
server and then gain appropriate access, and then he/she can do his/her business. Then after,
distributed computing came into picture, where all the computers are networked together and
share their resources when needed.
On the basis of above computing, there was emerged of cloud computing concepts that
later implemented.
At around in 1961, John MacCharty suggested in a speech at MIT that computing can be sold like
a utility, just like a water or electricity. It was a brilliant idea, but like all brilliant ideas, it was
ahead if its time, as for the next few decades, despite interest in the model, the technology simply
was not ready for it.
But of course, time has passed and the technology caught that idea and after few years we
mentioned that:
In 1999, Salesforce.com started delivering of applications to users using a simple website. The
applications were delivered to enterprises over the Internet, and this way the dream of computing
sold as utility were true.
In 2002, Amazon started Amazon Web Services, providing services like storage, computation and
even human intelligence. However, only starting with the launch of the Elastic Compute Cloud in
2006 a truly commercial service open to everybody existed.
In 2009, Google Apps also started to provide cloud computing enterprise applications.
Of course, all the big players are present in the cloud computing evolution, some were earlier,
some were later. In 2009, Microsoft launched Windows Azure, and companies like Oracle and HP
have all joined the game. This proves that today, cloud computing has become mainstream.
13
Actually, Small as well as some large IT companies follows the traditional methods to provide the
IT infrastructure. That means for any IT company, we need a Server Room that is the basic need
of IT companies. In that server room, there should be a database server, mail server, networking,
firewalls, routers, modem, switches, QPS (Query Per Second means how much queries or load
will be handled by the server), configurable system, high net speed and the maintenance engineers.
To establish such IT infrastructure, we need to spend lots of money. To overcome all these
problems and to reduce the IT infrastructure cost, Cloud Computing comes into existence.
1) Agility
The cloud works in the distributed computing environment. It shares resources among users and
works very fast.
Availability of servers is high and more reliable, because chances of infrastructure failure are
minimal.
3) High Scalability
Means "on-demand" provisioning of resources on a large scale, without having engineers for peak
loads.
4) Multi-Sharing
With the help of cloud computing, multiple users and applications can work more efficiently with
cost reductions by sharing common infrastructure.
Cloud computing enables the users to access systems using a web browser regardless of their
location or what device they use e.g. PC, mobile phone etc. As infrastructure is off-site (typically
provided by a third-party) and accessed via the Internet, users can connect from anywhere.
14
6) Maintenance
Maintenance of cloud computing applications is easier, since they do not need to be installed on
each user's computer and can be accessed from different places. So, it reduces the cost also.
7) Low Cost
By using cloud computing, the cost will be reduced because to take the services of cloud
computing, IT company need not to set its own infrastructure and pay-as-per usage of resources.
Application Programming Interfaces (APIs) are provided to the users so that they can access
services on the cloud by using these APIs and pay the charges as per the usage of services.
Cloud Service Providers (CSP) are providing many types of cloud services and now if we sill
cloud computing has touched every sector by providing various cloud applications. Sharing and
managing resources is easy in cloud computing that’s why it is one of the dominant fields of
computing. These properties have made it an active component in many fields. Now let’s know
some of the real-world applications of cloud computing.
1. Online Data Storage:
Cloud computing allows storing data like files, images, audios, and videos, etc on the
cloud storage. The organization need not set physical storage systems to store a huge
volume of business data which costs so high nowadays. As they are growing
technologically, data generation is also growing with respect to time, and storing that
becoming problem. In that situation, Cloud storage is providing this service to store and
access data any time as per requirement.
2. Backup and Recovery:
Cloud vendors provide security from their side by storing safe to the data as well as
providing a backup facility to the data. They offer various recovery application for
retrieving the lost data. In the traditional way backup of data is a very complex problem
and also it is very difficult sometimes impossible to recover the lost data. But cloud
15
computing has made backup and recovery applications very easy where there is no fear
of running out of backup media or loss of data.
3. Big Data Analysis:
We know the volume of big data is so high where storing that in traditional data
management system for an organization is impossible. But cloud computing has
resolved that problem by allowing the organizations to store their large volume of data
in cloud storage without worrying about physical storage. Next comes analyzing the
raw data and finding out insights or useful information from it is a big challenge as it
requires high-quality tools for data analytics. Cloud computing provides the biggest
facility to organizations in terms of storing and analyzing big data.
4. Testing and Development:
Setting up the platform for development and finally performing different types of
testing to check the readiness of the product before delivery requires different types of
IT resources and infrastructure. But Cloud computing provides the easiest approach for
development as well as testing even if deployment by using their IT resources with
minimal expenses. Organizations find it more helpful as they got scalable and flexible
cloud services for product development, testing, and deployment.
5. Anti-Virus Applications:
Previously, organizations were installing antivirus software within their system even if
we will see we personally also keep antivirus software in our system for safety from
outside cyber threats. But nowadays cloud computing provides cloud antivirus software
which means the software is stored in the cloud and monitors your
system/organization’s system remotely. This antivirus software identifies the security
risks and fixes them. Sometimes also they give a feature to download the software.
6. Ecommerce Application:
Cloud-based e-commerce allows responding quickly to the opportunities which are
emerging. Users respond quickly to the market opportunities as well as the traditional
e-commerce responds to the challenges quickly. Cloud-based e-commerce gives a new
approach to doing business with the minimum amount as well as minimum time
possible. Customer data, product data, and other operational systems are managed in
cloud environments.
16
7. Cloud computing in education:
Cloud computing in the education sector brings an unbelievable change in learning by
providing e-learning, online distance learning platforms, and student information
portals to the students. It is a new trend in education that provides an attractive
environment for learning, teaching, experimenting, etc to students, faculty members,
and researchers. Everyone associated with the field can connect to the cloud of their
organization and access data and information from there.
8. Cloud Computing in Medical Fields:
In the medical field also nowadays cloud computing is used for storing and accessing
the data as it allows to store data and access it through the internet without worrying
about any physical setup. It facilitates easier access and distribution of information
among the various medical professional and the individual patients. Similarly, with help
of cloud computing offsite buildings and treatment facilities like labs, doctors making
emergency house calls and ambulances information, etc can be easily accessed and
updated remotely instead of having to wait until they can access a hospital computer.
Lecture-5
As we know, cloud computing technology is used by both small and large organizations to store
the information in cloud and access it from anywhere at anytime using the internet connection.
o Front End
o Back End
17
Front End
The front end is used by the client. It contains client-side interfaces and applications that are
required to access the cloud computing platforms. The front end includes web servers (including
Chrome, Firefox, internet explorer, etc.), thin & fat clients, tablets, and mobile devices.
Back End
The back end is used by the service provider. It manages all the resources that are required to
provide cloud computing services. It includes a huge amount of data storage, security
mechanism, virtual machines, deploying models, servers, traffic control mechanisms, etc.
Hosting a Cloud
There are three layers in cloud computing. Companies use these layers based on the service they
provide.
• Infrastructure
• Platform
• Application
At the bottom is the foundation, the Infrastructure where the people start and begin to build. This
is the layer where the cloud hosting lives.
18
Now, let’s have a look at hosting:
Let’s say you have a company and a website and the website has a lot of communications that are
exchanged between members. You start with a few members talking with each other and then
gradually the numbers of members increases.
As the time passes, as the number of members increases, there would be more traffic on the
network and your server will get slow down. This would cause a problem.
A few years ago, the websites are put in the server somewhere, in this way you have to run around
or buy and set number of servers. It costs a lot of money and takes lot of time. You pay for these
servers when you are using and as well as when you are not using. This is called hosting.
This problem is overcome by cloud hosting. With Cloud Computing, you have access to computing
power when you needed. Now, your website is put in the cloud server as you put it on dedicated
server. People start visiting your website and if you suddenly need more computing power, you
would scale up according to the need.
1. Scalability
2. Instant
3. Save Money
4. Reliability
5. Physical Security
1. Client Infrastructure
2. Application
19
The application may be any software or platform that a client wants to access.
3. Service
A Cloud Services manages that which type of service you access according to the client’s
requirement.
ii. Platform as a Service (PaaS) – It is also known as cloud platform services. It is quite
similar to SaaS, but the difference is that PaaS provides a platform for software creation, but
using SaaS, we can access software over the internet without the need of any platform.
Example: Amazon Web Services (AWS) EC2, Google Compute Engine (GCE), Cisco Metapod.
4. Runtime Cloud
Runtime Cloud provides the execution and runtime environment to the virtual machines.
5. Storage
Storage is one of the most important components of cloud computing. It provides a huge amount
of storage capacity in the cloud to store and manage data.
6. Infrastructure
20
It provides services on the host level, application level, and network level. Cloud infrastructure
includes hardware and software components such as servers, storage, network devices,
virtualization software, and other storage resources that are needed to support the cloud
computing model.
7. Management
Management is used to manage components such as application, service, runtime cloud, storage,
infrastructure, and other security issues in the backend and establish coordination between them.
9. Internet-The Internet is medium through which front end and back end can interact and
communicate with each other.
Via an Internet service connection, cloud storage works by enabling users access and to download
data on any chosen device, such as a laptop, tablet or smartphone. Cloud storage users can also
edit documents simultaneously with other users as well, making it easier to work away from the
office.
Depending on specific needs, prices vary for cloud storage. As an individual user, you can usually
get initial amounts of cloud storage for free – such as 5GB with Apple iCloud, which not too long
ago dealt with some highly publicized cloud security issues. You have to pay a fee for additional
storage. Common price models include monthly or yearly rates, depending on the services you are
using.
21
Benefits of Cloud Computing Architecture
• It reduces IT operating costs and gives good accessibility to access data and digital tools
• It helps businesses to easily scale up and scale down their cloud resources
22
• It encourages remote working and promotes team collaboration
Lecture-6
Cloud Deployment Model defines the type of access to the cloud, i.e., how the cloud is located?
1. Public Cloud:
The name speaks for itself, as public clouds are available to the general public and data
are created and stored on third-party servers. As server infrastructure belongs to service
providers that manage them and administer pool resources, the need for user companies
to buy and maintain their own hardware is eliminated. Provider companies offer
resources as a service on a free of charge or pay-per-use basis via the Internet
connection. Users can scale them when required.
At the same time, relying on a third party in running their infrastructure deprives users
of knowing where their information is kept and who has access to it. Often enough,
23
public clouds experience outages and malfunction, as in the case of the Salesforce
CRM disruption in 2016 that caused a 10-hour storage collapse.
The public cloud deployment model is the first choice of businesses that operate within the
industries with low privacy concerns. When it comes to popular cloud deployment models,
examples are Amazon Elastic Compute, Google AppEngine, IBM’s Blue, Microsoft Azure,
Salesforce Heroku and others.
24
Figure 1: PUBLIC CLOUD
2. Private Cloud:
There is little to no difference between public and private clouds from the technical point
of view, as their designs are very similar. However, unlike in the public one, only one
specific company owns a private cloud, which is why it is also called internal or corporate.
Because these data center architectures reside within the firewall, they provide enhanced
security. Even though one organization runs its workloads on a private basis, a third party
can also manage it, and the server can be hosted externally or on-premises of the user
company.
25
Only a clearly defined scope of persons have access to the information kept in a private
repository, preventing the general public from using it. In light of numerous breaches, a
growing number of large corporations decided on a closed private type as it is expected to
be less risky.
1. Individual development
2. Storage and network components are customizable
3. High control over the corporate information
4. High security, privacy and reliability
Multiple service providers – including Amazon, IBM, Cisco, Dell and Red Hat – also build
private solutions. We at SaM Solutions have created our proprietary cloud solution —
CloudBOX. It is a ready-to-use Platform as a Service that facilitates projects by their quick
and easy launching.
26
Figure 2: Private Cloud
Lecture 7
3.Community Cloud:
A community cloud deployment model resembles a private one to a large extent; the only
difference is the set of users. While a private type implies that only one company owns the
27
server, in the case of a community one, several organizations with similar backgrounds
share the infrastructure and related resources.
As the organizations have uniform security, privacy and performance requirements, this
multi-tenant data center architecture helps companies achieve their business-specific
objectives. That is why a community model is particularly suited for organizations that
work on joint projects. In that case, a centralized cloud facilitates project development,
management and implementation. Also, the costs are shared across all users.
o Community cloud is cost-effective because the whole cloud is being shared by several
organizations or communities.
o Community cloud is suitable for organizations that want to have a collaborative cloud
with more security features than the public cloud.
o It provides better security than the public cloud.
o It provides collaborative and distributive environment.
o Community cloud allows us to share cloud resources, infrastructure, and other
capabilities among various organizations.
Companies can decide on community solutions that Google, Red Hat, IBM, Microsoft or
others provide.
28
Figure 1: Community Cloud
29
4. Hybrid Cloud:
As it is usually the case with any hybrid phenomenon, a hybrid cloud encompasses the best
features of the above-mentioned cloud computing deployment models – a public, private
and community ones. It allows companies to mix and match the facets of all three types
that best suit their requirements.
o Hybrid cloud is suitable for organizations that require more security than the public
cloud.
o Hybrid cloud helps you to deliver new products and services more quickly.
o Hybrid cloud provides an excellent way to reduce the risk.
o Hybrid cloud offers flexible resources because of the public cloud and secure resources
because of the private cloud.
30
Figure 2: Hybrid Cloud
31
Difference between public cloud, private cloud, hybrid cloud, and community
cloud -
The below table shows the difference between public cloud, private cloud, hybrid cloud, and
community cloud.
Service
Owner Enterprise Enterprise Community
provider
32
IT expertise consolidates and hardware requirements are reduced
Lecture-8
Cloud Computing can be defined as the practice of using a network of remote servers hosted on
the Internet to store, manage, and process data, rather than a local server or a personal computer.
Companies offering these computing services are called cloud providers and typically charge for
cloud computing services based on usage.
33
• The software applications are maintained by the vendor.
• The license to the software may be subscription based or usage based. And it is billed on
recurring basis.
• SaaS applications are cost-effective since they do not require any maintenance at end user
side.
• They are available on demand.
• They can be scaled up or down on demand.
• They are automatically upgraded and updated.
• SaaS offers shared data model. Therefore, multiple users can share single instance of
infrastructure. It is not required to hard code the functionality for individual users.
• All users run the same version of the software.
34
Advantages of SaaS:
1. Cost Effective: Pay only for what you use
2. Reduced time: Users can run most SaaS apps directly from their web browser without
needing to download and install any software. This reduces the time spent in installation and
configuration and can reduce the issues that can get in the way of the software deployment.
3. Accessibility: We can Access app data from anywhere.
4. Automatic updates: Rather than purchasing new software, customers rely on a SaaS
provider to automatically perform the updates.
5. Scalability: It allows the users to access the services and features on demand.
Characteristics
35
• PaaS provides built-in tools for defining workflow, approval processes, and business
rules.
• PaaS also provides web services interfaces that allow us to connect the applications outside
the platform.
Advantages of PaaS:
1. Simple and convenient for users: It provides much of the infrastructure and other IT
services, which users can access anywhere via a web browser.
2. Cost Effective: It charges for the services provided on a per-use basis thus eliminating the
expenses one may have for on-premises hardware and software.
3. Efficiently managing the lifecycle: It is designed to support the complete web application
lifecycle: building, testing, deploying, managing and updating.
4. Efficiency: It allows for higher-level programming with reduced complexity thus, the
overall development of the application can be more effective
36
Lecture -9
Services offered by Cloud (Contd..)
Advantages of IaaS:
1. Cost Effective: Eliminates capital expense and reduces ongoing cost and IaaS customers
37
pay on a per use basis, typically by the hour, week or month.
2. Website hosting: Running websites using IaaS can be less expensive than traditional web
hosting.
3. Security: The IaaS Cloud Provider may provide better security than your existing software.
4. Maintenance: There is no need to manage the underlying data center or the introduction of
new releases of the development or underlying software. This is all handled by the IaaS Cloud
Provider.
4. Anything AS A SERVICE (XaaS)
Most of the cloud service providers now a day offer anything as a service that is a compilation
of all of the above services including some additional services.
Anything as a Service (XaaS) is a cloud computing term for the extensive variety of services
and applications emerging for users to access on demand over the Internet.
XaaS term refers to delivery of anything as a service. In this model of cloud computing
products, tools and technologies are delivered to users as a service over a network;
typically, the Internet, rather than on-premises.
Example of XaaS
Every single day, many services are getting added in XaaS. The most common encompass
the three general cloud computing models: Software as a Service (SaaS), Platform as a
Service (PaaS) and Infrastructure as a Service (IaaS).
1. Network as a Service
2. Storage as a Service
3. Database as a Service
4. Information as a Service
5. Integration as a Service
6. Security as a Service
7. Malware as a Service
8. Disaster Recovery as a Service (DRaaS)
38
9. Communications as a Service
Advantages of XaaS:
All of the above advantages
Cloud Computing market overview
The global cloud computing market was valued at USD 483.98 billion in 2022 and is expected to
expand at a compound annual growth rate (CAGR) of 14.1% from 2023 to 2030.
The Cloud Computing Market size is expected to grow from USD 0.58 trillion in 2023 to USD
1.24 trillion by 2028, at a CAGR of 16.40% during the forecast period (2023-2028). Global
demand for cloud computing is growing because of emerging technologies like big data, AI, and
machine learning (ML).
Lecture -9
Benefits:
Cloud Computing is an emerging technology that almost every company is being switched to from
its on-premise technologies. Whether it is public, private, or hybrid, Cloud Computing has become
an essential factor for companies to rise up to the competition. Let us find out why the cloud is so
much preferred over the on-premise technologies.
39
• Cost efficiency: The biggest reason behind companies shifting to Cloud Computing is
that it takes considerably lesser cost than any on-premise technology. Now, companies
need not store data in disks anymore as the cloud offers enormous storage space, saving
money and resources.
• High speed: Cloud Computing lets us deploy the service quickly in fewer clicks. This
quick deployment lets us get the resources required for our system within minutes.
• Excellent accessibility: Storing information in the cloud allows us to access it anywhere
and anytime regardless of the machine making it a highly accessible and flexible
technology of the present times.
• Back-up and restore data: Once data is stored in the cloud, it is easier to get its back-
up and recovery, which is quite a time-consuming process in on-premise technology.
• Manageability: Cloud Computing eliminates the need for IT infrastructure updates and
maintenance since the service provider ensures timely, guaranteed, and seamless
delivery of our services and also takes care of all the maintenance and management of
our IT services according to the service-level agreement (SLA).
• Sporadic batch processing: Cloud Computing lets us add or subtract resources and
services according to our needs. So, if the workload is not 24/7, we need not worry
about the resources and services getting wasted and we won’t end up stuck with unused
services.
• Strategic edge: Cloud Computing provides a company with a competitive edge over its
competitors when it comes to accessing the latest and mission-critical applications that it
needs without having to invest its time and money on their installations. It lets the
company focus on keeping up with the business competition by offering access to the
most trending and in-demand applications and doing all the manual work of installing
and maintaining the applications for the company.
40
Limitations:
Every technology has both positive and negative aspects that are highly important to be
discussed before implementing it. The aforementioned points highlight the benefits of using
cloud technology and the following discussion will outline the potential cons of Cloud
Computing.
Vulnerability to attacks: Storing data in the cloud may pose serious challenges of
information theft since in the cloud every data of a company is online. Security breach is
something that even the best organizations have suffered from and it’s a potential risk in the
cloud as well. Although advanced security measures are deployed on the cloud, still storing
confidential data in the cloud can be a risky affair.
41
happen due to various reasons, such as loss of power, low Internet connectivity, data centers
going out of service for maintenance, etc. This can lead to a temporary downtime in the
cloud service.
• Vendor lock-in: When in need to migrate from one cloud platform to another, a company
might face some serious challenges because of the differences between vendor platforms.
Hosting and running the applications of the current cloud platform on some other platform
may cause support issues, configuration complexities, and additional expenses. The
company data might also be left vulnerable to security attacks due to compromises that
might have been made during migrations.
• Limited control: Cloud customers may face limited control over their deployments. Cloud
services run on remote servers that are completely owned and managed by service
providers, which makes it hard for the companies to have the level of control that they
would want over their back-end infrastructure.
Lecture-10
42
Cloud Computing is a new name for an old concept. The delivery of computing services from a
remote location. Cloud Computing is Internet-based computing, where shared resources, software,
and information are provided to computers and other devices on demand.
Privacy:
The user data can be accessed by the host company with or without permission. The service
provider may access the data that is on the cloud at any point in time. They could accidentally or
deliberately alter or even delete information.
Compliance:
There are many regulations in places related data and hosting. To comply with regulations (Federal
Information Security Management Act, Health Insurance Portability and Accountability Act, etc.)
user may have to adopt deployment modes that are expensive.
Security:
Cloud-based services involve third-party for storage and security. Can one assume that a cloud-
based company will protect and secure one’s data if one is using their services at a very low or for
free? They may share user’s information with others. Security presents a real threat to cloud.
Sustainability:
This issue refers to minimizing the effect of cloud computing on environment. Citing the server’s
effects on the environmental effects of cloud computing, in areas where climate favors natural
cooling and renewable electricity is readily available, the countries with favorable conditions, such
as Finland, Sweden, and Switzerland are trying to attract cloud computing data centers. But other
than nature’s favors, would these countries have enough technical infrastructure to sustain the
high-end clouds?
Abuse:
While providing cloud services, it should be ascertained that the client is not purchasing the
services of cloud computing for nefarious purpose. In 2009, a banking Trojan illegally used the
43
popular Amazon service as a command and control channel that issued software updates and
malicious instruction to PCs that were infected by the malware.
For software developers and testers virtualization comes very handy, as it allows developer to write
code that runs in many different environments and more importantly to test that code.
44
How Virtualization Works in Cloud
Virtualization plays a significant role in cloud technology and its working mechanism. Usually,
what happens in the cloud - the users not only share the data that are located in the cloud-like
application but also share their infrastructures with the help of virtualization. Virtualization is
used mainly to provide applications with standard versions for cloud customers. With the release
of the latest version of an application, the providers can efficiently provide that application to the
cloud and its users, and it is possible using virtualization only. By using this virtualization
concept, all servers & software other cloud providers require those are maintained by a third-
party, and the cloud provider pays them on a monthly or yearly basis.
In reality, most of today's hypervisors use a combination of different types of hardware
virtualization. Mainly virtualization means running multiple systems on a single machine but
sharing all resources (hardware) & it helps to share IT resources to get benefits in the business
field.
Features of Virtualization
1. Partitioning: Multiple virtual servers can run on a physical server at the same time.
2. Encapsulation of data: All data on the virtual server, including boot disks, is encapsulated in a
file format.
3. Isolation: The Virtual server running on the physical server is safely separated and don't affect
each other.
4. Hardware Independence: When the virtual server runs, it can migrate to a different hardware
platform.
Advantages of Virtualization
• The number of servers gets reduced by the use of the virtualization concept.
45
• The busine
Use of Virtualization
1. Network Virtualization
2. Server Virtualization
3. Storage Virtualization
Lecture-11
Types of Virtualization
1. Hardware Virtualization.
2. Operating system Virtualization.
3. Server Virtualization.
4. Storage Virtualization.
46
S VM RAM
Processor
E
R VM
ROM Network
V Devices
VM
E
R
VM
Memory
M1
Processor
M2
Network resources
M3
GUEST
Virtualization Layer
Host Layer
When the virtual machine software or virtual machine manager (VMM) is directly installed on the
hardware system is known as h ardware virtualization. The main job of hypervisor is to control
and monitoring the processor, memory and other hardware resources. After virtualization of
hardware system, we can install different operating system on it and run different applications on
those OS.
Usage:
Hardware virtualization is mainly done for the server platforms, because controlling virtual
machines is much easier than controlling a physical server.
The benefits of hardware virtualization decrease the overall cost of cloud users and increase
flexibility.
The advantages are:
• Lower Cost: Because of server consolidation, the cost decreases; now, multiple OS can exist
together in a single hardware. This minimizes the quantity of rack space, reduces the number of
servers, and eventually drops the power consumption.
• Efficient resource utilization: Physical resources can be shared among virtual machines.
Another virtual machine can use the unused resources allocated by one virtual machine in case
of any need.
• Increase IT flexibility: The quick development of hardware resources became possible using
virtualization, and the resources can be managed consistently also.
48
2) Operating System Virtualization:
When the virtual machine software or virtual machine manager (VMM) is installed on the Host
operating system instead of directly on the hardware system is known as operating system
virtualization.
Usage:
Operating System Virtualization is mainly used for testing the applications on different platforms
of OS.
The steps for how these virtualization works are listed below:
Advantages of OS Virtualization
• It can also use dynamic load balancing of containers between nodes and a cluster.
3) Server Virtualization:
When the virtual machine software or virtual machine manager (VMM) is directly installed on the
Server system is known as server virtualization.
Usage:
49
Server virtualization is done because a single physical server can be divided into multiple servers
on the demand basis and for balancing the load.
• Cost Reduction: Server virtualization reduces cost because less hardware is required.
• Independent Restart: Each server can be rebooted independently and that reboot won't affect
the working of other virtual servers.
4) Storage Virtualization:
Storage virtualization is the process of grouping the physical storage from multiple network
storage devices so that it looks like a single storage device.
• Data is stored in a very convenient location. This is because if the host failure data don't get
compromised necessarily.
• By using storage level abstraction, it becomes flexible how storage is provided, protected,
partitioned and used.
• Storage Devices are capable of performing advanced functions such as disaster recovery,
duplication, replication of data & re-duplication of data.
50
BEST OF LUCK ALL STUDENT OF 20BCS30, 20BCS31 and 20BCS32
Instructions for MST-1
1. All Student must use the two color pen Black and white.
2. Try to Question Numbering in order and proper Numbering in MST-1 Copies.
3. Kindly make Daigram in suitable questions.
4. Don’t Skip any question. Attempt all question.
THANKS
51