Cloud Computing Unit-1,2
Cloud Computing Unit-1,2
A cloud is combination of servers, storages, network devices (like switches etc.) networked
together from where computing facilities are delivered to users. Cloud facility is developed
by activating this specially designed network of commodity computing components with
advanced software to power them up for the task. This powered up facility becomes capable
delivering computing as utility service that user can access from any location through
Internet.
In cloud computing approach, all load of computing shifts into the highly configured
computing facilities provided by the cloud.
People just need an interfacing device through which they can connect to the cloud using
Internet. This interfacing device can be any desktop, laptop, tablet or even a mobile interface
which can run the cloud interfacing application.
Hence, these interfacing devices do not need to be highly configured any more. So, cloud
computing is going to replace highly-configured traditional desktops or laptops with
minimally-configured ones, as they will only have to act as interfacing devices to cloud.
NIST Model
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.
This cloud model is composed of five essential characteristics, three service models, and four
deployment models.
On-Demand Self-Service: Users can provision, monitor, and manage computing resources as
needed without requiring human intervention
This allows for quick access and configuration of resources like storage and processing
power through a self-service portal.
Broad Network Access: Cloud services are accessible over the internet using standard
networks and various devices, including computers, smartphones, and tablets
This universal accessibility ensures that resources are available to users wherever they are,
promoting seamless collaboration and data sharing.
Resource Pooling: Cloud computing utilizes a multi-tenant model where resources are shared
among multiple users Virtualization technologies ensure that underlying physical resources
are abstracted and allocated as needed, enabling higher efficiency and utilization rates.
Rapid Elasticity: Cloud services can scale up or down quickly based on demand
This elasticity allows for automated allocation and release of resources, ensuring that users
have the necessary resources when needed and conserving costs when demand decreases.
Measured Service: Users are billed for the actual resources they consume
This pay-as-you-go model ensures cost efficiency, as businesses only pay for what they use,
and resource utilization is tracked for monitoring billing and effective use of resources.
The NIST model of cloud computing separates cloud computing in two categories.
One category is based on the operational or deployment pattern of the cloud and the other
one is based on the nature of service that the cloud provides.
■ Cloud modelling based on deployment: It focuses on the access boundary and location of
the cloud establishment. The access boundary defines the purpose of using the cloud to some
extent. There are four categories of cloud deployment: public cloud, private cloud,
community cloud and hybrid cloud.
■ Cloud modelling based on service delivery: This model describes the type of computing
service that is offered to users by the service provider. There are three prime categories of
service delivery models, namely Infrastructure as a Service (IaaS), Platform as a Service
(PaaS) and Software as a Service (SaaS).
On-Demand Self-Service: Users can provision, monitor, and manage computing resources as
needed without requiring human intervention
This allows for quick access and configuration of resources like storage and processing
power through a self-service portal.
Broad Network Access: Cloud services are accessible over the internet using standard
networks and various devices, including computers, smartphones, and tablets
This universal accessibility ensures that resources are available to users wherever they are,
promoting seamless collaboration and data sharing.
Resource Pooling: Cloud computing utilizes a multi-tenant model where resources are shared
among multiple users Virtualization technologies ensure that underlying physical resources
are abstracted and allocated as needed, enabling higher efficiency and utilization rates.
Rapid Elasticity: Cloud services can scale up or down quickly based on demand
This elasticity allows for automated allocation and release of resources, ensuring that users
have the necessary resources when needed and conserving costs when demand decreases.
Measured Service: Users are billed for the actual resources they consume
This pay-as-you-go model ensures cost efficiency, as businesses only pay for what they use,
and resource utilization is tracked for monitoring billing and effective use of resources.
Q. What are the different dimensions in the cloud cube model? Describe the dimensions
of Cloud Cube Model with suitable diagram.
As the name Four-Dimensional, the working is also categorized into four parts viz:
● Internal/External: This dimension clarifies the physical location of data, impacting the
cloud’s boundary and data accessibility.
The Cloud Cube Model offers numerous advantages. It helps organizations align their cloud
network with regulatory requirements and location constraints, ensuring compliance.
Its adaptability and ease of use make it suitable for various cloud service models, such as
Software-as-a-Service (SaaS), Platform-as-a-Service (PaaS), and Infrastructure-as-a-Service
(IaaS).
Lower costs: Because cloud networks operate at higher efficiencies and with greater
utilization, significant cost reductions are often encountered.
Ease of utilization: Depending upon the type of service being offered, you may find that you
do not require hardware or software licenses to implement your service.
Quality of Service: The Quality of Service (QoS) is something that you can obtain under
contract from your vendor.
Reliability: The scale of cloud computing networks and their ability to provide load
balancing and failover makes them highly reliable, often much more reliable than what you
can achieve in a single organization.
Outsourced IT management: A cloud computing deployment lets someone else manage your
computing infrastructure while you manage your business. In most instances, you achieve
considerable reductions in IT staffing costs.
Simplified maintenance and upgrade: Because the system is centralized, you can easily apply
patches and upgrades. This means your users always have access to the latest software
versions.
Low Barrier to Entry: In particular, upfront capital expenditures are dramatically reduced. In
cloud computing, anyone can be a giant at any time
Internet Dependency:
A dependable and fast internet connection is essential for cloud computing. Business
operations may be delayed or interrupted if there are connectivity problems or interruptions
in the internet service that affect access to cloud services and data.
Using standardized services and platforms offered by the cloud service provider is a common
part of cloud computing. As a result, organizations may have less ability to customize and
control their infrastructure, applications, and security measures. It may be difficult for some
organizations to modify cloud services to precisely match their needs if they have special
requirements or compliance requirements.
When you consider the development of cloud computing to date, it is clear that the
technology is the result of the convergence of many different standards. Cloud computing’s
promise of scalability completely changes the manner in which services and applications are
deployed. Without standards, the industry creates proprietary systems with vendor lock-in,
sometimes referred to as “stovepipe” clouds.
Because clients do not want to be locked into any single system, there is a strong industry
push to create standards-based clouds.
Service-oriented architecture
Web-application frameworks
Grid computing
These standards help to enable different business models that cloud computing vendors can
support, most notably Software as a Service (SaaS), Web 2.0 applications, and utility
computing.
These businesses require open standards so that data is both portable and universally
accessible.
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.
Public Cloud
Private Cloud
Hybrid Cloud
Community Cloud
Public Cloud
Public clouds are managed by third parties which provide cloud services over the internet to
the public, these services are available as pay-as-you-go billing models. 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.
Limitations:
1)Data Security and Privacy
2)Reliability Issues
3)Service/Licence Limitation
Private Cloud
Data Privacy - It is ideal for storing corporate data where only authorized personnel gets
access
Security - Segmentation of resources within the same Infrastructure can help with better
access and higher levels of security.
Supports Legacy Systems - This model supports legacy systems that cannot access the
public cloud.
Higher Cost - With the benefits you get, the investment will also be larger than the
public cloud. Here, you will pay for software, hardware, and resources for staff and
training.
Fixed Scalability - The hardware you choose will accordingly help you scale in a certain
direction
High Maintenance - Since it is managed in-house, the maintenance costs also increase .
Q.‘Private cloud is hosted within the security boundary of owner organization’ –
Justify.
Enterprises who are concerned about the protection of their business interest often choose not
to share cloud environment with external organizations or external users. They work in
private cloud environment. Private cloud can be deployed on-premises or off-premises both.
But the cloud (which is the resources of the cloud) even if it is hosted off-premises, cannot be
shared with anyone else apart from the owner enterprise. The cloud environment works as an
integral part within the security boundary of the owner organization to keep the computing
environment more protected.
Private cloud uses dedicated resources. Resources there cannot be shared with anyone else
but the owner (consumer). This guarantees a secured computing environment as storage and
other resources are not shared with others. But, this reservation of resources increases cost of
computing. In public cloud, resources are supplied to a consumer as per actual demand. No
one can forcefully hold resource without utilization and unutilized resources can be shared
with any other consumers. This multi-tenancy philosophy reduces cost of computing a lot.
A hybrid cloud is a cloud computing environment that uses a mix of on-premises, private
cloud, and public cloud services. It allows data and applications to be shared between them,
offering businesses more flexibility and deployment options. Hybrid cloud is often used to
combine the benefits of public cloud scalability and flexibility with the security and control
of private cloud resources.
Public cloud is cost-effective but private cloud can provide more security. Hence, many
organizations prefer to use private cloud. But, one problem often is being faced with private
cloud during its peak hours. The reserved resources may not meet the demand during such
period of time.
There we can use hybrid cloud instead. In hybrid cloud, the enterprises can run the essential
(or core) part of their applications in the private cloud and expand into the public cloud utility
when the demand goes beyond a certain limit. Thus, they enjoy the security of private cloud
by reducing the total cost.
This model allows organizations to pool resources, share infrastructure, and benefit from the
advantages of cloud computing while maintaining a level of control over the environment.
The community cloud can be hosted either by a third-party provider or internally by the
organizations themselves.
Benefits of Community Cloud
o Smaller Investment - A community cloud is much cheaper than the private & public
cloud and provides great performance
o Setup Benefits - The protocols and configuration of a community cloud must align
with industry standards, allowing customers to work much more efficiently.
Limitations of Community Cloud
The main advantage of using IaaS is that it helps users to avoid the cost and complexity of
purchasing and managing the physical servers.
It is one of the layers of the cloud computing platform. It allows customers to outsource their
IT infrastructures, such as servers, networking, processing, storage, virtual machines, and
other resources. Customers access these resources on the Internet using a pay-as-per-use
model.
In traditional hosting services, IT infrastructure was rented out for a specific period of time,
with pre-determined hardware configuration. The client paid for the configuration and time,
regardless of the actual use. With the help of the IaaS cloud computing platform layer, clients
can dynamically scale the configuration to meet changing requirements and are billed only
for the services actually used.
The IaaS cloud computing platform layer eliminates the need for every organization to
maintain its IT infrastructure.
Example: DigitalOcean, Linode, Amazon Web Services (AWS), Microsoft Azure, Google
Compute Engine (GCE), Rackspace, and Cisco Metacloud.
Scalability: IaaS enables users to adjust computing capacity according to their demands
without requiring long lead times or up-front hardware purchases.
Virtualization: IaaS uses virtualization technology to generate virtualized instances that can
be managed and delivered on-demand by abstracting physical computer resources.
Resource Pooling: This feature enables users to share computer resources, such as
networking and storage, among a number of users, maximizing resource utilization and
cutting costs.
Elasticity: IaaS allows users to dynamically modify their computing resources in response to
shifting demand, ensuring optimum performance and financial viability.
Self-Service: IaaS offers consumers "self-service" portals that let them independently deploy,
administer, and monitor their computing resources without the assistance of IT employees.
Availability: To ensure the high availability and reliability of services, IaaS providers often
run redundant and geographically dispersed data centres.
Security: To safeguard their infrastructure and client data, IaaS companies adopt security
measures, including data encryption, firewalls, access controls, and threat detection.
Customization: IaaS enables users to alter the operating systems, application stacks, and
security settings of their virtualized instances to suit their unique requirements.
Computing: To provision virtual machines (VMs) for end users, IaaS providers offer virtual
central processing units (CPUs) and virtual main memory. As a result, users may run their
workloads and apps on the provider's infrastructure without having to worry about managing
the underlying hardware.
Storage: Back-end storage services are provided by IaaS providers, enabling users to store
and access their files and data.
Network: IaaS providers provide networking tools, including routers, switches, and bridges
for the VMs through Network as a Service (NaaS). This enables connectivity and
communication between VMs and other resources while also allowing customers to create
and maintain their network architecture within the IaaS environment.
Backup and disaster recovery services are provided by some IaaS providers, enabling
customers to create backup copies of their data and software and put recovery plans in place
in the event of data loss or system problems. This promotes business continuity and data
security.
Monitoring and Management: IaaS suppliers provide tools and services for monitoring and
controlling the resources and infrastructure. This can involve managing VMs, storage, and
network configurations using management panels or APIs, as well as measuring resource
utilization, automating scaling, and monitoring performance.
3. Pay-as-per-use model
IaaS providers provide services based on a pay-as-per-use basis. The users are required to pay
for what they have used.
IaaS providers focus on the organization's core business rather than on IT infrastructure.
5. On-demand scalability
On-demand scalability is one of the biggest advantages of IaaS. Using IaaS, users do not
worry about upgrading software and troubleshooting issues related to hardware components.
Disadvantages of IaaS
Security: In the IaaS context, security is still a major problem. Although IaaS companies
have security safeguards in place, it is difficult to achieve 100% protection. To safeguard
their data and applications, customers must verify that the necessary security configurations
and controls are in place.
One important feature of cloud computing is its scalable nature. A scalable architecture
handles growing workload by increasing resource capacity in same proportion. Thus
scalability of cloud architecture helps in delivering resources as per demand of application.
Elasticity of cloud facilitates resource quantity and characteristics to vary at runtime. It is
associated with the commissioning and decommissioning of resources. It is determined by the
relative speed by which resources are allocated (to some process) and are consumed.
IaaS workloads
In addition to throughput, a workload has certain other attributes such as Disk I/Os
measured in Input/Output Per Second IOPS, the amount of RAM consumed under load in
MB, network throughput and latency.
Figure 4.2 shows how three virtual private server instances are partitioned in an IaaS stack.
The three workloads require three different sizes of computers: small, medium, and large
The IaaS infrastructure runs these server instances in the data center that the service offers,
drawing from a pool of virtualized machines, RAID storage, and network interface capacity.
These three layers are expressions of physical systems that are partitioned as logical units.
LUNs, the cloud interconnect layer, and the virtual application software layer are logical
constructs.
LUNs are logical storage containers, the cloud interconnect layer is a virtual network layer
that is assigned IP addresses from the IaaS network pool, and the virtual application software
layer contains software that runs on the physical VM instance(s) that have been partitioned
from physical assets on the IaaS’ private cloud.
Workloads support a certain number of users, at which point you exceed the load that the
instance sizing allows. When you reach the limit of the largest virtual machine instance
possible, you must
make a copy or clone of the instance to support additional users. A group of users within a
particular instance is called a pod. Pods are managed by a Cloud Control System (CCS). In
AWS, the CCS is the AWS Management Console.
Sizing limitations for pods need to be accounted for if you are building a large cloud-based
application. Pods are aggregated into pools within an IaaS region or site called an availability
zone.
In very large cloud computing networks, when systems fail, they fail on a pod-by-pod basis,
and often on a zone-by-zone basis. For AWS’ IaaS infrastructure, the availability zones are
organized around the company’s data centers in Northern California, Northern Virginia,
Ireland, and Singapore.
A failover system between zones gives IaaS private clouds a very high degree of availability.
Figure 4.3 shows how pods are aggregated and virtualized in IaaS across zones.
Q.Discuss Service provided by Platform as a Service (PaaS). What are the advantages
and Disadvantages of PAAS?
PaaS cloud computing platform is created for the programmer to develop, test, run, and
manage the applications
Example: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine,
Apache Stratos, Magento Commerce Cloud, and OpenShift
PaaS includes infrastructure (servers, storage, and networking) and platform (middleware,
development tools, database management systems, business intelligence, and more) to
support the web application life cycle.
Popular application frameworks include Laravel, Django, Ruby on Rails, and Spring
Framework.
Databases: Managed database services are provided by PaaS providers, making it simple for
developers to store and retrieve data. These services support relational databases (like
MySQL, PostgreSQL, and Microsoft SQL Server) and NoSQL databases (like MongoDB,
Cassandra, and Redis). For its database services, PaaS platforms often offer automated
backups, scalability, and monitoring tools.
Collaboration and Communication: PaaS platforms frequently come with capabilities for
team collaboration, including chat services, shared repositories, and project management
software.
Analytics and Monitoring: PaaS providers may give tools for tracking application
performance, examining user behaviour data, and producing insights to improve application
behaviour and address problems.
Security and Identity Management: PaaS systems come with built-in security features like
access control, encryption, and mechanisms for authentication and authorization to protect
the privacy of applications and data.
Scalability and load balancing: PaaS services frequently offer automatic scaling capabilities
that let applications allocate more resources as needed to manage a spike in traffic or demand.
To improve performance and availability, load balancing features divide incoming requests
among various instances of the application.
Advantages of PaaS
1) Simplified Development
PaaS allows developers to focus on development and innovation without worrying about
infrastructure management.
2) Lower risk
No need for up-front investment in hardware and software. Developers only need a PC and an
internet connection to start building applications.
Some PaaS vendors also provide already defined business functionality so that users can
avoid building everything from very scratch and hence can directly start the projects only.
4) Scalability: Applications deployed can scale from one to thousands of users without any
changes to the applications
Disadvantages of PaaS
1) Vendor lock-in
One has to write the applications according to the platform provided by the PaaS vendor, so
the migration of an application to another PaaS vendor would be a problem.
2) Data Privacy
Corporate data, whether it can be critical or not, will be private, so if it is not located within
the walls of the company, there can be a risk in terms of privacy of data.
It may happen that some applications are local, and some are in the cloud. So there will be
chances of increased complexity when we want to use data in the cloud with the local data.
Q. Discuss Characteristics of Software as a Service (SaaS). What are the advantages and
Disadvantages of SAAS?
Software as a Service
Characteristics of SaaS:
Web-based Delivery: SaaS apps can be accessed from anywhere with an internet connection
because they are supplied over the internet, often through a web browser. Users no longer
need to install and maintain software programs on their local machines as a result.
Multiple Users or "tenants" can access SaaS applications from a single instance of the
program thanks to the concept of multi-tenancy. As a result, the provider can serve several
clients with the same application without administering unique program instances for every
client.
Automatic Updates: SaaS providers are in charge of keeping the software up to date and
making sure that everyone has access to the newest features and security patches. Users are
no longer required to manually install updates or fixes as a result.
Scalable: SaaS systems are scalable, which can readily grow or shrink in response to user
demand. This frees up enterprises from worrying about infrastructure or licensing fees and
lets them add or remove users as needed.
Pricing on a Subscription Basis: SaaS programs are frequently sold using a subscription-
based pricing model, in which customers pay a monthly or yearly price to access the
program. As a result, companies won't need to invest significantly in software licenses
upfront.
Data Security, including data encryption, access restrictions, and backups, is the
responsibility of SaaS providers. Users no longer need to handle their own data security
because of this.
Business Services - SaaS Provider provides various business services to start up the business.
The SaaS business services include ERP (Enterprise Resource Planning), CRM (Customer
Relationship Management), billing, and sales.
Collaboration Tools: SaaS companies provide collaboration solutions that let teams
collaborate effectively no matter where they are physically located. Platforms for project
management, apps for team communication, and file-sharing services are some of these
resources.
Customer Support and Help Desk: SaaS platforms provide customer support and help desk
solutions that enable firms to manage customer inquiries, track support tickets, and promptly
address customer issues.
Marketing and Sales Automation: To increase productivity and boost income, firms can
automate marketing campaigns, lead generation, customer relationship management, and
sales activities using SaaS marketing and sales automation technologies.
Advantages of SaaS
SaaS pricing is based on a monthly fee or annual fee subscription, so it allows organizations
to access business functionality at a low cost, which is less than licensed applications.
2. One to Many
SaaS services are offered as a one-to-many model means a single instance of the application
is shared by multiple users.
All users will have the same version of the software and typically access it through the web
browser. SaaS reduces IT support costs by outsourcing hardware and software maintenance
and support to the IaaS provider.
5. Multidevice support
SaaS services can be accessed from any device, such as desktops, laptops, tablets, phones,
and thin clients.
6. API Integration
SaaS services easily integrate with other software or services through standard APIs.
7. No client-side installation
SaaS services are accessed directly from the service provider using an internet connection, so
they do not need to require any software installation.
1) Security
Actually, data is stored in the cloud, so security may be an issue for some users. However,
cloud computing is not more secure than in-house deployment.
2) Latency issue
Since data and applications are stored in the cloud at a variable distance from the end-user,
there is a possibility that there may be greater latency when interacting with the application
compared to local deployment. Therefore, the SaaS model is not suitable for applications
whose demand response time is in milliseconds.
Switching SaaS vendors involves the difficult and slow task of transferring very large data
files over the internet and then converting and importing them into another SaaS also.
What is an identity?
Cloud computing by its very nature spans different jurisdictions. The laws of the country of a
request’s origin may not match the laws of the country where the request is processed, and
it’s possible that neither location’s laws match the laws of the country where the service is
provided.
Compliance is much more than simply providing an anonymous service token to an identity
so they can obtain access to a resource. Compliance is a complex issue that requires
considerable expertise.
A Compliance as a Service application would need to serve as a trusted third party, because
this is a man-in-the-middle type of service. CaaS may need to be architected as its own layer
of a SOA architecture in order to be trusted.
A CaaS would need to be able to manage cloud relationships, understand security policies
and procedures, know how to handle information and administer privacy, be aware of
geography, provide an incidence response, archive, and allow for the system to be queried,
all to a level that can be captured in a Service Level Agreement.
A well-implemented CaaS service could measure the risks involved in servicing compliance
and ensure customers against that risk.
Clients can connect to a cloud service in a number of different ways. These are the two most
common means:
A Web browser
A proprietary application
These applications can be running on a server, a PC, a mobile device, or a cell phone. What
these
devices have in common with either of these application types is that they are exchanging
data over an inherently insecure and transient medium. There are three basic methods for
securely connecting over a connection:
Use a secure protocol to transfer data such as SSL (HTTPS), FTPS, or IPsec, or connect
using a secure shell such as SSH to connect a client to the cloud.
Create a virtual connection using a virtual private network (VPN), or with a remote data
transfer protocol such as Microsoft RDP or Citrix ICA, where the data is protected by a
tunneling mechanism.
Encrypt the data so that even if the data is intercepted or sniffed, the data will not be
meaningful
Jolicloud's primary focus was to provide a fast, easy-to-use, cloud-centric experience for
users with limited hardware resources. It was created with the idea that netbook users didn’t
need a heavy desktop operating system like Windows, and instead, they could rely on web-
based applications and cloud services.
Chromium OS is an open-source operating system that is built around the Google Chrome
browser. It is designed to be simple, lightweight, and primarily focused on web-based
applications. Chromium OS can be seen as a "browser as an operating system" because it
essentially turns the browser into the central hub of the computing experience, where most
interactions, tools, and applications are accessed through the web.
This is a very simplistic description because each of these two components is composed of
several component layers, complementary functionalities, and a mixture of standard and
proprietary protocols.
Composability
Applications built in the cloud often have the property of being built from a collection of
components, a feature referred to as composability.
A composable system uses components to assemble services that can be tailored for a
specific purpose using standard parts.
Infrastructure
Most large Infrastructure as a Service (IaaS) providers rely on virtual machine technology to
deliver servers that can run applications.
Virtual servers described in terms of a machine image or instance have characteristics that
often can be described in terms of real servers delivering a certain number of microprocessor
(CPU) cycles, memory access, and network bandwidth to customers.
Virtual machines are containers that are assigned specific resources. The software that runs
in the virtual machines is what defines the utility of the cloud computing system.
Platforms
A platform in the cloud is a software layer that is used to create higher levels of service
These three services offer all the hosted hardware and software needed to build and deploy
Web applications or services that are custom built by the developer within the context and
range of capabilities that the platform allows
Platforms represent nearly the full cloud software stack, missing only the presentation layer
that represents the user interface.
Virtual Appliances
• Applications such as a Web server or database server that can run on a virtual
machine image are referred to as virtual appliances.
• The name virtual appliance is a little misleading because it conjures up the image of a
machine that serves a narrow purpose.
A virtual appliance is a common deployment object in the cloud, and it is one area where
there is considerable activity and innovation. One of the major advantages of a virtual
appliance is that you can use the appliances as the basis for assembling more complex
services, the appliance being one of your standardized components. Virtual appliances
remove the need for application configuration and maintenance from.
Communication Protocols
Cloud computing arises from services available over the Internet communicating using the
standard Internet protocol suite underpinned by the HTTP and HTTPS transfer protocols. The
other protocols and standards that expose compute and data resources in the cloud either
format data or communications in packets that are sent over these two transport protocols.
Various forms of RPC (Remote Procedure Call) implementations (including DCOM, Java
RMI, and CORBA) attempt to solve the problem of engaging services and managing
transactions over what is essentially a stateless network.
The first of the truly Web-centric RPC technologies was XML-RPC, which uses
platformindependent XML data to encode program calls that are transported over HTTP, the
networking transport to which nearly everyone is connected
Applications
Although the cloud computing stack encompasses many details that describe how clouds are
constructed, it is not a perfect vehicle for expressing all the considerations that one must
account for in any deployment. An important omission arises from the nature of distributed
Web applications and the design of Internet protocols as a stateless service.
The Internet was designed to treat each request made to a server as an independent
transaction. Therefore, the standard HTTP commands are all atomic in nature: GET to read
data, PUT to writedata, and so on.
Pros of Virtualization
4. Disaster Recovery and Backup: Virtual machines can be quickly backed up,
replicated, or cloned, making disaster recovery easier and faster.
5. Isolation and Security: Each VM is isolated from others, so a failure in one does not
affect others. This also improves security, as malicious software can be contained
within a VM.
6. Ease of Management: Tools like VMware vSphere, Microsoft Hyper-V, and others
provide centralized dashboards for managing multiple virtual machines and hosts,
simplifying IT management.
Cons of Virtualization
Characteristics of Virtualization :
Isolation: Each virtual machine (VM) or virtual environment is isolated from others. This
means that if one VM experiences issues (like crashes or security vulnerabilities), it does not
affect the performance or security of other VMs on the same host.
Hardware Independence
Virtualization abstracts the underlying hardware, allowing virtualized resources to be moved
or replicated across different physical machines with minimal disruption.
Resource Pooling
Virtualization allows physical resources (such as CPU, memory, and storage) to be pooled
together and distributed dynamically across multiple virtual machines as needed.
Virtualization enables easy scaling of resources. New virtual machines can be created on-
demand, and existing ones can be resized (adding/removing CPU or memory) with minimal
effort.
snapshot and Cloning :Virtualization allows you to take snapshots of the state of a virtual
machine at any given point, which can then be restored to that exact state later. Cloning
enables creating copies of a virtual machine.
Centralized Management :Virtualization technologies often come with centralized
management platforms that allow administrators to manage virtual machines, hosts, storage,
and networking from a single interface.