UNIT-I-Notes On Cloud Computing
UNIT-I-Notes On Cloud Computing
Cloud computing is all about renting computing services. This idea first came in the
1950s. In making cloud computing what it is today, five technologies played a vital role. These
are distributed systems and its peripherals, virtualization, web 2.0, service orientation, and
utility computing.
Distributed Systems:
It is a composition of multiple independent systems but all of them are depicted as a single
entity to the users. The purpose of distributed systems is to share resources and also use
them effectively and efficiently. Distributed systems possess characteristics such as
scalability, concurrency, continuous availability, heterogeneity, and independence in
failures. But the main problem with this system was that all the systems were required to be
present at the same geographical location. Thus to solve this problem, distributed
computing led to three more types of computing and they were-Mainframe computing,
cluster computing, and grid computing.
Mainframe computing:
Mainframes which first came into existence in 1951 are highly powerful and reliable
computing machines. These are responsible for handling large data such as massive input-
output operations. Even today these are used for bulk processing tasks such as online
transactions etc. These systems have almost no downtime with high fault tolerance. After
distributed computing, these increased the processing capabilities of the system. But these
were very expensive. To reduce this cost, cluster computing came as an alternative to
mainframe technology.
Cluster computing:
In 1980s, cluster computing came as an alternative to mainframe computing. Each machine
in the cluster was connected to each other by a network with high bandwidth. These were
way cheaper than those mainframe systems. These were equally capable of high
computations. Also, new nodes could easily be added to the cluster if it was required. Thus,
the problem of the cost was solved to some extent but the problem related to geographical
restrictions still pertained. To solve this, the concept of grid computing was introduced.
Grid computing:
In 1990s, the concept of grid computing was introduced. It means that different systems
were placed at entirely different geographical locations and these all were connected via the
internet. These systems belonged to different organizations and thus the grid consisted of
heterogeneous nodes. Although it solved some problems but new problems emerged as the
distance between the nodes increased. The main problem which was encountered was the
low availability of high bandwidth connectivity and with it other network associated issues.
Thus. cloud computing is often referred to as “Successor of grid computing”.
Virtualization:
It was introduced nearly 40 years back. It refers to the process of creating a virtual layer
over the hardware which allows the user to run multiple instances simultaneously on the
hardware. It is a key technology used in cloud computing. It is the base on which major
cloud computing services such as Amazon EC2, VMware vCloud, etc work on. Hardware
virtualization is still one of the most common types of virtualization.
Web 2.0:
It is the interface through which the cloud computing services interact with the clients. It is
because of Web 2.0 that we have interactive and dynamic web pages. It also increases
flexibility among web pages. Popular examples of web 2.0 include Google Maps,
Facebook, Twitter, etc. Needless to say, social media is possible because of this technology
only. It gained major popularity in 2004.
Service orientation:
It acts as a reference model for cloud computing. It supports low-cost, flexible, and
evolvable applications. Two important concepts were introduced in this computing model.
These were Quality of Service (QoS) which also includes the SLA (Service Level
Agreement) and Software as a Service (SaaS).
Utility computing:
It is a computing model that defines service provisioning techniques for services such as
compute services along with other major services such as storage, infrastructure, etc
which are provisioned on a pay-per-use basis.
Thus, the above technologies contributed to the making of cloud computing.
There are many characteristics of Cloud Computing here are few of them :
1. On-demand self-services: The Cloud computing services does not require any human
administrators, user themselves are able to provision, monitor and manage computing
resources as needed.
2. Broad network access: The Computing services are generally provided over standard
networks and heterogeneous devices.
3. Rapid elasticity: The Computing services should have IT resources that are able to scale
out and in quickly and on as needed basis. Whenever the user require services it is provided
to him and it is scale out as soon as its requirement gets over.
4. Resource pooling: The IT resource (e.g., networks, servers, storage, applications, and
services) present are shared across multiple applications and occupant in an uncommitted
manner. Multiple clients are provided service from a same physical resource.
5. Measured service: The resource utilization is tracked for each application and occupant, it
will provide both the user and the resource provider with an account of what has been used.
This is done for various reasons like monitoring billing and effective use of resource.
6. Multi-tenancy: Cloud computing providers can support multiple tenants (users or
organizations) on a single set of shared resources.
7. Virtualization: Cloud computing providers use virtualization technology to abstract
underlying hardware resources and present them as logical resources to users.
8. Resilient computing: Cloud computing services are typically designed with redundancy
and fault tolerance in mind, which ensures high availability and reliability.
9. Flexible pricing models: Cloud providers offer a variety of pricing models, including pay-
per-use, subscription-based, and spot pricing, allowing users to choose the option that best
suits their needs.
10. Security: Cloud providers invest heavily in security measures to protect their users’ data
and ensure the privacy of sensitive information.
11. Automation: Cloud computing services are often highly automated, allowing users to
deploy and manage resources with minimal manual intervention.
12. Sustainability: Cloud providers are increasingly focused on sustainable practices, such as
energy-efficient data centers and the use of renewable energy sources, to reduce their
environmental impact.
Cloud Deployment Models
n cloud computing, we have access to a shared pool of computer resources (servers, storage,
programs, and so on) in the cloud. You simply need to request additional resources when you
require them. Getting resources up and running quickly is a breeze thanks to the clouds. It is
possible to release resources that are no longer necessary. This method allows you to just pay
for what you use. Your cloud provider is in charge of all upkeep.
What is a Cloud Deployment Model?
Cloud Deployment Model functions as a virtual computing environment with a deployment
architecture that varies depending on the amount of data you want to store and who has access
to the infrastructure.
Types of Cloud Computing Deployment Models
The cloud deployment model identifies the specific type of cloud environment based on
ownership, scale, and access, as well as the cloud’s nature and purpose. The location of the
servers you’re utilizing and who controls them are defined by a cloud deployment model. It
specifies how your cloud infrastructure will look, what you can change, and whether you will
be given services or will have to create everything yourself. Relationships between the
infrastructure and your users are also defined by cloud deployment types. Different types of
cloud computing deployment models are described below.
Public Cloud
Private Cloud
Hybrid Cloud
Community Cloud
Multi-Cloud
Public Cloud
The public cloud makes it possible for anybody to access systems and services. The public
cloud may be less secure as it is open to everyone. The public cloud is one in which cloud
infrastructure services are provided over the internet to the general people or major industry
groups. The infrastructure in this cloud model is owned by the entity that delivers the cloud
services, not by the consumer. It is a type of cloud hosting that allows customers and users to
easily access systems and services. This form of cloud computing is an excellent example of
cloud hosting, in which service providers supply services to a variety of customers. In this
arrangement, storage backup and retrieval services are given for free, as a subscription, or on a
per-user basis. For example, Google App Engine etc.
Public Cloud
Reduced Latency: To reduce latency and improve user experience, you can choose cloud
regions and zones that are close to your clients.
High availability of service: It’s quite rare that two distinct clouds would have an incident
at the same moment. So, the multi-cloud deployment improves the high availability of your
services.
Disadvantages of the Multi-Cloud Model
Complex: The combination of many clouds makes the system complex and bottlenecks
may occur.
Security issue: Due to the complex structure, there may be loopholes to which a hacker
can take advantage hence, makes the data insecure.
What is the Right Choice for Cloud Deployment Model?
As of now, no such approach fits picking a cloud deployment model. We will always consider
the best cloud deployment model as per our requirements. Here are some factors which should
be considered before choosing the best deployment model.
Cost: Cost is an important factor for the cloud deployment model as it tells how much
amount you want to pay for these things.
Scalability: Scalability tells about the current activity status and how much we can scale it.
Easy to use: It tells how much your resources are trained and how easily can you manage
these models.
Compliance: Compliance tells about the laws and regulations which impact the
implementation of the model.
Privacy: Privacy tells about what data you gather for the model.
Each model has some advantages and some disadvantages, and the selection of the best is only
done on the basis of your requirement. If your requirement changes, you can switch to any
other model.
Overall Analysis of Cloud Deployment Models
The overall Analysis of these models with respect to different factors is described below.
Public
Factors Cloud Private Cloud Community Cloud Hybrid Cloud
and
Flexibility
Between public
Cost- Distributed cost
Cost-Effective Costly and private
Comparison among members
cloud
Platform as a Service (PaaS) is a type of cloud computing that helps developers to build
applications and services over the Internet by providing them with a platform.
PaaS helps in maintaining control over their business applications.
Advantages of PaaS
PaaS is simple and very much convenient for the user as it can be accessed via a web
browser.
PaaS has the capabilities to efficiently manage the lifecycle.
Disadvantages of PaaS
PaaS has limited control over infrastructure as they have less control over the environment
and are not able to make some customizations.
PaaS has a high dependence on the provider.
Software as a Service (SaaS) is a type of cloud computing model that is the work of delivering
services and applications over the Internet. The SaaS applications are called Web-Based
Software or Hosted Software.
SaaS has around 60 percent of cloud solutions and due to this, it is mostly preferred by
companies.
Advantages of SaaS
SaaS can access app data from anywhere on the Internet.
SaaS provides easy access to features and services.
Disadvantages of SaaS
SaaS solutions have limited customization, which means they have some restrictions within
the platform.
SaaS has little control over the data of the user.
SaaS are generally cloud-based, they require a stable internet connection for proper
working.
For more, you can refer to Cloud-Based Services.
FAQs:
1. List the disadvantages of the public cloud model?
Answer:
The disadvantages of the public cloud model are:
Data Security and Privacy Concerns: Because it is open to the public, it does not provide
complete protection against cyber-attacks and may expose weaknesses.
Issues with Reliability: Because the same server network is accessible to a wide range of
users, it is susceptible to failure and outages.
Limitation on Service/License: While there are numerous resources that you may share
with renters, there is a limit on how much you can use.
2. List the disadvantages of the hybrid cloud model?
Answer:
The disadvantages of the hybrid cloud model are:
Maintenance: A hybrid cloud computing strategy may necessitate additional maintenance,
resulting in a greater operational expense for your company.
Difficult Integration: When constructing a hybrid cloud, data, and application integration
might be difficult. It’s also true that combining two or more infrastructures will offset a
significant upfront cost.
3. List the disadvantages of the private cloud model?
Answer:
The disadvantages of the private cloud model are
Restricted Scalability: Private clouds have restricted scalability because they are scaled
within the confines of internally hosted resources. The choice of underlying hardware has
an impact on scalability.
Higher Cost: Due to the benefits you would receive, your investment will be higher than the
public cloud(pay for software, hardware, staffing, etc).
4. What is utility computing?
Answer:
Utility computing is a service-providing paradigm in which a service provider makes
computing resources and infrastructure management available to customers as needed,
charging them on a per-use basis rather than a set fee.
The user can only pay for what they use using utility computing. It is a plug-in that is
administered by an organization that determines what kind of cloud services must be deployed.
The majority of businesses prefer a hybrid strategy.
5. How to secure data while transferring?
Answer:
To keep your data safe while being transported from one location to another, be sure the
encryption key used with the data you’re transferring isn’t leaking.
Cloud Computing Challenges
Cloud computing, an emergent technology, has placed many challenges in different aspects of
data and information handling. Some of these are shown in the following diagram:
Security
and Privacy
Security and Privacy of information is the biggest challenge to cloud computing. Security and
privacy issues can be overcome by employing encryption, security hardware and security
applications.
Portability
This is another challenge to cloud computing that applications should easily be migrated from
one cloud provider to another. There must not be vendor lock-in. However, it is not yet made
possible because each of the cloud provider uses different standard languages for their platforms.
Interoperability
It means the application on one platform should be able to incorporate services from the other
platforms. It is made possible via web services, but developing such web services is very
complex.
Computing Performance
Data intensive applications on cloud requires high network bandwidth, which results in high
cost. Low bandwidth does not meet the desired computing performance of cloud application.
Reliability and Availability
It is necessary for cloud systems to be reliable and robust because most of the businesses are now
becoming dependent on services provided by third-party.
Cloud Computing Virtualization
Virtualization is a technique, which allows to share single physical instance of an application or
resource among multiple organizations or tenants (customers). It does so by assigning a logical
name to a physical resource and providing a pointer to that physical resource on demand.
Virtualization Concept
Creating a virtual machine over existing operating system and hardware is referred as Hardware
Virtualization. Virtual Machines provide an environment that is logically separated from the
underlying hardware.
The machine on which the virtual machine is created is known as host machine and virtual
machine is referred as a guest machine. This virtual machine is managed by a software or
firmware, which is known as hypervisor.
Hypervisor
The hypervisor is a firmware or low-level program that acts as a Virtual Machine Manager.
There are two types of hypervisor:
Type 1 hypervisor executes on bare system. LynxSecure, RTS Hypervisor, Oracle VM, Sun
xVM Server, VirtualLogic VLX are examples of Type 1 hypervisor. The following diagram
shows the Type 1 hypervisor.
The type1 hypervisor does not have any host operating system because they are installed on a
bare system.
Type 2 hypervisor is a software interface that emulates the devices with which a system
normally interacts. Containers, KVM, Microsoft Hyper V, VMWare Fusion, Virtual Server 2005
R2, Windows Virtual PC and VMWare workstation 6.0 are examples of Type 2 hypervisor.
The following diagram shows the Type 2 hypervisor.
Types of Hardware Virtualization
Here are the three types of hardware virtualization:
Full Virtualization
Emulation Virtualization
Paravirtualization
Full Virtualization
In full virtualization, the underlying hardware is completely simulated. Guest software does not
require any modification to run.
Emulation Virtualization
In Emulation, the virtual machine simulates the hardware and hence becomes independent of it.
In this, the guest operating system does not require modification.
Paravirtualization
In Paravirtualization, the hardware is not simulated. The guest software run their own isolated
domains.
VMware vSphere is highly developed infrastructure that offers a management infrastructure
framework for virtualization. It virtualizes the system, storage and networking hardware.
Cloud Computing Challenges
Cloud computing, an emergent technology, has placed many challenges in different aspects of
data and information handling. Some of these are shown in the following diagram:
Security and Privacy
Security and Privacy of information is the biggest challenge to cloud computing. Security and
privacy issues can be overcome by employing encryption, security hardware and security
applications.
Portability
This is another challenge to cloud computing that applications should easily be migrated from
one cloud provider to another. There must not be vendor lock-in. However, it is not yet made
possible because each of the cloud provider uses different standard languages for their platforms.
Interoperability
It means the application on one platform should be able to incorporate services from the other
platforms. It is made possible via web services, but developing such web services is very
complex.
Computing Performance
Data intensive applications on cloud requires high network bandwidth, which results in high
cost. Low bandwidth does not meet the desired computing performance of cloud application.
Reliability and Availability
It is necessary for cloud systems to be reliable and robust because most of the businesses are now
becoming dependent on services provided by third-party.
Pros of Virtualization in Cloud Computing :
Utilization of Hardware Efficiently –
With the help of Virtualization Hardware is Efficiently used by user as well as Cloud Service
Provider. In this the need of Physical Hardware System for the User is decreases and this
results in less costly.In Service Provider point of View, they will vitalize the Hardware using
Hardware Virtualization which decrease the Hardware requirement from Vendor side which
are provided to User is decreased. Before Virtualization, Companies and organizations have
to set up their own Server which require extra space for placing them, engineer’s to check its
performance and require extra hardware cost but with the help of Virtualization the all these
limitations are removed by Cloud vendor’s who provide Physical Services without setting up
any Physical Hardware system.
Availability increases with Virtualization –
One of the main benefit of Virtualization is that it provides advance features which allow
virtual instances to be available all the times. It also has capability to move virtual instance
from one virtual Server another Server which is very tedious and risky task in Server Based
System. During migration of Data from one server to another it ensures its safety. Also, we
can access information from any location and any time from any device.
Disaster Recovery is efficient and easy –
With the help of virtualization Data Recovery, Backup, Duplication becomes very easy. In
traditional method , if somehow due to some disaster if Server system Damaged then the
surety of Data Recovery is very less. But with the tools of Virtualization real time data
backup recovery and mirroring become easy task and provide surety of zero percent data
loss.
Virtualization saves Energy –
Virtualization will help to save Energy because while moving from physical Servers to
Virtual Server’s, the number of Server’s decreases due to this monthly power and cooling
cost decreases which will Save Money as well. As cooling cost reduces it means carbon
production by devices also decreases which results in Fresh and pollution free environment.
Quick and Easy Set up –
In traditional methods Setting up physical system and servers are very time-consuming.
Firstly Purchase them in bulk after that wait for shipment. When Shipment is done then wait
for Setting up and after that again spend time in installing required software etc. Which will
consume very time. But with the help of virtualization the entire process is done in very less
time which results in productive setup.
Cloud Migration becomes easy –
Most of the companies those who already have spent a lot in the server have a doubt of
Shifting to Cloud. But it is more cost-effective to shift to cloud services because all the data
that is present in their server’s can be easily migrated into the cloud server and save
something from maintenance charge, power consumption, cooling cost, cost to Server
Maintenance Engineer etc.
Cons of Virtualization :
Data can be at Risk –
Working on virtual instances on shared resources means that our data is hosted on third party
resource which put’s our data in vulnerable condition. Any hacker can attack on our data or
try to perform unauthorized access. Without Security solution our data is in threaten
situation.
Learning New Infrastructure –
As Organization shifted from Servers to Cloud. They required skilled staff who can work
with cloud easily. Either they hire new IT staff with relevant skill or provide training on that
skill which increase the cost of company.
High Initial Investment –
It is true that Virtualization will reduce the cost of companies but also it is truth that Cloud
have high initial investment. It provides numerous services which are not required and when
unskilled organization will try to set up in cloud they purchase unnecessary services which
are not even required to them.