You are on page 1of 34

1.

Differentiate
1. Differentiate between
between parallel
parallel and
and distributed
distributed computing.
computing.
S.NO PARALLEL COMPUTING DISTRIBUTED COMPUTING

Many operations are System components are located at

1. performed simultaneously different locations

2. Single computer is required Uses multiple computers

Multiple processors perform Multiple computers perform multiple

3. multiple operations operations

It may have shared or

4. distributed memory It have only distributed memory

Processors communicate with Computer communicate with each

5. each other through bus other through message passing.

Improves system scalability, fault

Improves the system tolerance and resource sharing

6. performance capabilities
2. Describe
2. Describe about
about distributed
distributed system
system and
and its
its architecture.
architecture.
Machine A Machine B Machine C
——— = fo REIT Lt —
Distributed applications

MH 1
Middleware service

ii Local os || Local OS Local OS

| [ |
Network

Fig. 1.1.1 : Architecture of a Distributed System

system can be viewed as defined by the physical components or as defined from user or
The distributed
computation point of view. The first is known as the physical view and the second as the logical view. Physically
a distributed system consists of a set of nodes (computers) linked together by a communication network.
the system
The nodes in the network are loosely coupled and do not share their memory. The nodes in
by passing messages over the communication network. Communication protocols are used for
communicate
sending messages from one node to another.

The logical model is the view that an application has of the system. It contains a set of concurrent processes and
communication channels between them. The core network is treated as fully connected.
a proper
Processes communicate by sending messages to each other. A system is synchronous if during
execution, it all the time performs the intended operation in a known fixed time, otherwise it is asynchronous.

In synchronous system the failure can be noticed by a lack of response from the system. Therefore, timeout-

based techniques are used for failure discovery.


A distributed system can be constructed by means of fully connected networks or partially connected networks.
A fully connected network is a network in which each of the nodes is connected to each other.
The problem with such a system is that adding new nodes to the system results in the increase of number of
nodes connected to the node.
Due to this the numbers of file descriptors and complexity for each node to implement the connections are
increased heavily. Thus, the scalability (capability of a system to continue to function well when the system is
changed in size or volume) of such systems is limited by each node's capacity to open file descriptors and the
ability to handle the new connections.
The communication cost - the message delay of sending a message from the source to the destination- is low
because a message sent from one computer to another one only goes through one link. Fully connected systems
are reliable because when a few computers or links fail, the rest of the computers can still communicate with
others.
In a partially connected network, direct links exist between some, but not all, pairs of computers. A few of the
partially connected network models are star structured networks, multi-access bus networks; ring structured
networks, and tree-structured networks. Some of the traditional distributed systems such as client/server
paradigm use a star as the network topology.
The problem with such a system is that when the central node fails, the entire system will be collapsed. In 4
multi-access bus network, a set of clients are connected via a shared communications line, called a bus.

The bus link becomes the bottleneck and if it falls, all the nodes In the system cannot connect to each other.
Another disadvantage ts that performance degrades as additional computers are added or on heavy traffic
In a ring network each node connects to exactly two other nodes, forming a single continuous pathway for
signals through each node. As new nodes are added, the diameter of the system grows as the number of nodes in
the system, resulting in a longer message transmission delay.

A node failure or cable break might isolate every node attached to the ring. In a tree-structured network
(hierarchical network), the nodes are connected as a tree. Each node in the network having a specific fixed
number, of nodes associated to it at the next lower level in the hierarchy.

The scalability of the tree-structured network is better than that of the fully connected network, since new node
can be added as the child node of the leaf nodes or the interior nodes.
On the other hand, in such systems, only messages transmitted between a parent node and its child node go
though one link, other messages transmitted between two nodes have to go through one or more intermediate
nodes.
3. List
3. List and
and explain
explain the
the characteristics
characteristics of
of distributed
distributed systems.
systems.
A distributed system must possess the following characteristics to deliver utmost performance for the users -

Characteristics of a Distributed System

a. Fault-Tolerant

b. Scalable

map c. Predictable Performance

e. Security

f. Transparency

Fig. 1.1.2 : Characteristics of a Distributed System

(a) Fault-Tolerant

Distributed systems consist of a large number of hardware and software modules that are bound to fail in
the long run. Such component failures can escort to service unavailability. Hence, the systems should be able
to recover from component failures without performing erroneous actions. The goal of fault tolerance is to
avoid failures in the system even in the presence of faults to provide uninterrupted service.

A system is said to be fault tolerant if it can mask the presence of faults, The aim of any fault tolerant system
is to increase its reliability or availability. The reliability of a system is defined as the probability that the
system survives till that time.

A reliable system prevents loss of information even in the event of component failures. Availability is the
fraction of time for which a system Is available for use, Usually fault tolerance is achieved by providing
redundancy.

Redundancy is defined as those parts of the system that are not needed for its correct functioning. It is of
three types - hardware, software and time.
Hardware redundancy ts achieved by adding extra hardware components to system which take over the
role
of failed components in case some faults occur in them,
Software redundancy includes extra instructions and code included for managing the extra hardware
components, and using them correctly for uninterrupted service, in case of
some component failure. In time
redundancy the same instruction is executed many times. This is used to handle temporary faults
in the
systen,

1) Scalable

A distributed system can operate correctly even as some aspect of the system is scaled to a larger size.
Scale has three components : the number of users and other entities that are part of the system, the distance .
between the farthest nodes in the system, and the number of organizations that exert administrative contro]
over pieces of the system.
The three elements of scale affect distributed systems in many ways. Among the affected components are
naming, authentication for verifying someone's identity, authorization, communication, the use of remote
resources, and the mechanisms by which users observe the system. Three techniques are employed to
manage scale : replication, distribution and caching.
(c) Predictable Performance

Various performance metrics such as response time (elapsed time between the end of an inquiry or demand
on a computer system and the beginning of a response), throughput (the rate at which a network sends or
receives data), system utilization, network capacity etc. are employed to assess the performance.
Predictable performance is the ability to provide desired responsiveness in a timely manner.

(d) Openness

The attribute ‘openness’ ensures that a subsystem is continually open to interaction with other systems.
Web services are software systems designed to support interoperable machine-to-machine interaction over
a network.
These protocols allow distributed systems to be extended and scaled. An open system that scales has benefit
over a completely closed and self-reliant system.
A distributed system independent from heterogeneity of the underlying environment such as hardware and
software platforms achieves the property of openness. Therefore, every service is equally accessible to
every client (local or remote) in the system.
The implementation, installation and debugging of new services should not be very complex in a system
possessing openness characteristic.

(e) Security
Distributed systems should allow communication between programs/users/ resources on different
computers by enforcing necessary security arrangements.
The security features are mainly intended to provide confidentiality, integrity and availability.
Confidentiality (privacy) is protection against disclosure to unauthorized person. Violation of confidentiality
ranges from the discomforting to the catastrophic. —

Integrity provides protection against alteration and corruption. Availability keeps the resource accessible.
Many incidents of hacking compromise the integrity of databases and other resources. “Denial of service”
attacks are attacks against availability, Other Important security concerns are access control and
nonrepudiation,
Maintaining access control facilitates the users to access only those resources and services to which they are
entitled. It also ensures that users are not denied resources that they legitimately can expect to access,
Non-repudiation provides protection against denial by one of the entitles involved in a communication. The
security mechanisms put into practice should guarantee appropriate use of resources by different users in
the system.

(f) Transparency
Distributed systems should be perceived by users and application developers as a whole rather than as a
collection of cooperating components.
The locations of the computer systems involved in the operations, concurrent operations, data replication,
resource discovery from multiple sites, failures, system recovery etc. are hidden from users.
Transparency hides the distributed nature of the system from its users and shows the user that the system
is appearing and performing as a normal centralized system. The transparency can be employed in different
ways in a distributed system.
4. Describe
4. Describe distributed
distributed systems
systems and
and hence
hence discuss
discuss their
their components.
components.

A distributed system comprises a collection of autonomous computers, linked through a computer network an,
distribution middleware.

Frameworks for Applications


Distributed
Programming

Middleware
IPC Primitives for
Contro! and Data
FB)
¥--- {Operating System ae

Networking and
Paralie! Hardware
Hardware

Fig. 1.2.1 : Cloud computing distributed system

To become autonomous there exist a clear master/slave association between two computers in the network
Fig. 1.2.1 provides an overview of the different layers of a distributed system.

The very bottom layer constitutes the physical infrastructure such as computer and network hardware; these
components are directly managed by the operating system, which provides the basic services for Inter-Process
Communication (IPC), process scheduling and management, and resource management in terms of file system
and local devices.
These two layers become the platform on top of which specialized software is deployed to turn a setof

networked computers into a distributed system. At the operating system level, IPC services are implementedon
top of standardized communication protocols such Transmission Control Protocol/Internet Protocol (TCP/IP),
User Datagram Protocol (UDP) or others.

The middleware enables computers to coordinate their activities and to share the resources of the system, 9
that users perceive the system as a single, integrated computing facility. Thus, middleware is the bridge that
connects distributed applications across dissimilar physical locations, with dissimilar hardware platforms,
network technologies, operating systems, and programming languages.

The middleware software is being developed following agreed standards and protocols. It provides standard
services such as naming, persistence, concurrency control to ensures that accurate results for concurrent
processes are produced and obtains the results as fast as possible, event distribution, authorization to spe
access rights to resources, security etc, The middleware service extends over multiple machines.
All of them constitute a uniform interface to distributed application developers that is completely independent
from the underlying operating system and hides all the heterogeneities of the bottom layers.
5. Explain
5. Explain Architectural
Architectural styles
styles for
for distributed
distributed computing.
computing.

The cloud is a distributed architecture of Individual cloud-native services, providing resources as services in a
tiered fashion to construct a full tec hnology stack from hardware to middleware platforms to applications.
The configuration and deployment of applications and cloud platforms as interdependent adaptive systems can
be managed dynamically, responding to changes In both requirements and the execution platform.
The middleware layer of distributed system architecture enables distributed computing, by providing a coherent
and uniform runtime environment for applications
Following are two major categories of architectural styles :

1 Software Architectural Styles


2. System Architectural Styles

1. Software Architectural Styles


* Software architecture style focuses on logical organization of software components and different patterns of
communication between them.

* They are helpful because they provide an intuitive view of the whole system, despite its physical
deployment. They also identify the main abstractions that are used to shape the components of the system
and the expected interaction patterns between them. Table 1.2.1 shows different categories in architectural
styles.
Table 1.2.1 : Software Architecture Style

Sr. No. Category Most Common Architectural Styles

1; Data-centered Repository
Blackboard

2. Data flow Pipe and filter


Batch sequential

3. Virtual machine Rule-based system


Interpreter

4. Call and return Main program and subroutine call/top-down systems Object-oriented
systems.

5. Independent components | Communicating processes


Even systems

2. System Architectural Styles


process es of a distributed infrastructure is depicted ina
* The physical organization of components and
system architectural style.
such systems and help engineers not only have
* They provid e a Set of reference models for the deployment of
a comm on vocabulary in describing the physical layout of
systems but also quickly identify the major
advantages and drawbacks of a given deployment and whether it is applicable for a specific class«
applications,
6. Explain
6. Explain briefly
briefly about
about the
the technologies
technologies for
for Distributed
Distributed Computing.
Computing.

¢ There are several relevant technologies that provide concrete implementations of interaction models, which
mostly rely on message-based communication,
» These technologies include Remote Procedure Call (RPC), Distributed Object Frameworks and Service-Oriented
Computing,
2.4.1 Remote procedure call

e RPC is the fundamental abstraction that allows the execution of


procedures on client’s request.
e RPC allows increasing the concept of a procedure call completely
outside the boundaries of a process and a single memory address
space.
e The called procedure and calling procedure may reside on the same
system or they may be on different systems in a network.

e Figure 7 shows the crucial components that enable an RPC system.

I
it Nee SE
— 5 GzE

0. ti
Main Procedure Pessetume Macha

i [ Pocenres | pat
[......] : : i
Z ~

: T Il *' ——$—_—_—_Y H
KI} Program A (RPC Chart) Bode 8 eee eee ED | Program © (RPC Server) |

i— Parameters Marsnaing ; Return Vale | Parameters Urmarwaing i! Return Vale |


anc Procedure Name Unmarirabng and Procedure Name | Marsnaing
2.4.2 Distributed object frameworks

1. Distnbuted object frameworks enhance object-oriented programming


systems by allowing objects to be distributed across a heterogeneous
network and provide facilities so that they can clearly act as though
they were unavailable on the same address space.

Distrbuted object frameworks strengthen the basic mechanism


introduced with RPC and extend it to enable the remote invocation of
object methods and to keep watch on references to objects made
available through a network connection.

With respect to the RPC model, the infrastructure manages types that
are exposed through well known interfaces rather than procedures.
Therefore, the common interaction pattern will be like this:

The server process keeps track of a registry of active objects that are
made available to other processes. On the report of the specific
implementation, active objects can be published using interface
definitions / class definitions.

The client process, with a given addressing scheme, obtains a


reference to the active remote object. This reference is acted by a
pointer to an instance that is of a shared type of interface and class
definition.

The client process invokes the methods on the active object by calling
them through the reference previously secured. Parameters and return
values are marshaled to take place in the case of RPC.

Service-oriented computing
Service oriented computing arrange distributed systems in terms of
services, Which represent the great abstraction for building systems.

Service orientation expresses applications and software systems as


aggregations of services that are correlated within a service-oriented
architecture (SOA).

A service encapsulates a software component that enables a set of


coherent and related functionalities that can be reused and integrated
into huge and more complex applications. The term service is a
general abstraction that encompasses various different
implementations using different technologies and protocols.

Four major characteristics that identify a service:

- Boundaries are explicit.


=

- Services are autonomous

Services divide the schema and contracts, mot class or interface


definitions.

. Service compatibility is determined based on policy.


7. Explain
7. Explain RPC
RPC in
in detail.
detail.

2.4.1 Remote procedure call

© RPC is the fundamental abstraction that allows the execution of


procedures on client’s request.

e RPC allows increasing the concept of a procedure call completely


outside the boundaries of a process and a single memory address
space.

e The called procedure and calling procedure may reside on the same
system or they may be on different systems in a network.

Implementing RPC

RPC is generally implemented over a request-reply protocol that supports two-way exchange of messages in
client-server interactions, The protocol ts based on 3 communication primitives :

1. doOperation : Used by a client to Invoke a remote Operation. It sends a request message to the remote server
and returns the reply message,
2. getRequest : Used by a server to acquire request messages.

3. sendReply : Used by a server to send the reply message to the client after it has invoked the operation specified
in the request message,

OY ENS pocorn Tea

| | 18! ; |
| nts | | | |
[| an CD I; Prone © |; |
{f ProcedureB| | RPC Library {| HL LA l {|
| * Programa
apo rn | |. ; | | DN 0 [Progam
CIRC Seve]!
foci eee) Pommard te] ———
8. Explain
8. Explain Distributed
Distributed object
object frameworks
frameworks in
in detail.
detail.

Middleware based on distributed objects is designed to provide a programming model based on object-oriented
principles and therefore to bring the benefits of the object-oriented approach to distributed programming.
Emmerich [2000] sees such distributed objects as a natural evolution from three strands of activity :
1. In distributed systems, earlier middleware was based on the client-server model and there was a desire
for more sophisticated programming abstractions.
2. In programming languages, earlier work in object-oriented languages such as Simula-67 and Smalltalk led
to the emergence of more mainstream and heavily used programming languages such as Java and C++
(languages used extensively in distributed systems),

3. In software engineering, significant progress was made in the development of object-oriented design
methods, leading to the emergence of the Unified Modelling Language (UML) as an industrial-standarg
notation for specifying (potentially distributed) object-oriented software systems.

in other words, through adopting an object-oriented approach, distributed systems developers are not only
provided with richer programming abstractions (using familiar programming languages such as C++ and Java)
but are also able to use object-oriented design principles, tools and techniques (including UML) in the
development of distributed systems software.
This represents a major step forward in an area where, previously, such design techniques were not available. j
is interesting to note that the OMG, the organization that developed CORBA, also manages the standardization of
UML,
9. Explain
9. Explain hardware
hardware Architecture
Architecture for
for Parallel
Parallel Processing.
Processing.

The core elements of parallel processing are CPUs. Based on the number of instruction and data streams that can
he processed simultaneously, computing systems are classified into the following four categories :

(a) Single Instruction, Single Data (SISD) systems


(b) Single instruction, Multiple Data (SIMD) systems

(c) Multiple Instruction, Single Data (MISD) systems


(4) Multiple Instruction, Multiple Data (MIMD) systems

(a) SISD Systems

* SISD systems contain one control unit, one processing unit, and one memory unit.
* In this type of computers, the processor receives a single stream of instructions from the control unit ang
operates on a single stream of data from the memory unit. During computation, at each step, the processor
receives one instruction from the control unit and operates on a single data received from the memory unit,

(b) SIMD Systems


¢ SIMD systems contain one control unit, multiple processing units, and shared memory or interconnection
network. Here, one single control unit sends instructions to all processing units. During computation, at
each step, all the processors receive a single set of instructions from the control unit and operate on
different set of data from the memory unit.
* Each of the processing units has its own local memory unit to store both data and instructions. In SIMD
computers, processors need to communicate among themselves. This is done by shared memoryor
by interconnection network.
* While some of the processors execute a set of instructions, the remaining processors wait for their next set
of instructions. Instructions from the control unit decides which processor will be active (execute
instructions) or inactive (wait for next instruction).
(c) MISD Systems

+ As the name suggests, MISD systems contain multiple control units, multiple processing units and one
common memory unit.

¢ Here, each processor has its own control unit and they share a common memory unit. All the processors get
instructions individually from their own control unit and they operate on a single stream of data as per the
instructions they have received from their respective control units. This processor operates simultaneously.

(d) MIMD Systems

* MIMD systems have multiple control units, multiple processing units, and ashared memory or
interconnection network.

* Here, each processor has its own control unit, local memory unit, and arithmetic and logic unit. They receive
different sets of instructions from their respective control units and operate on different sets of data.

* An MIMD systems that shares a common memory is known as multiprocessors, while those that uses an
interconnection network is known as multicomputer.

* Based on the physical distance of the processors, multicomputer are of two types :
(i) Multicomputer : When all the processors are very close to one another (e.g., in the same room).
(ii) Distributed System : When all the processors are far away from one another (e.g. - in the different
cities)
10. Explain
10. Explain the
the concept
concept of
of distributed
distributed computing.
computing.

Distnibuted computing is a computer concept that refers most of


the time to multiple computer systems that work on a single problem A
single problem in diztributed computing is broken down into many parts,
and different computers solwe each pan. While the computers are
interconnected, they can communicate to each other to resolve the
problem. The computer functions as a single entity if done properly

The ultimate goal of distributed computing is to improve the


overall performance through cost-effective, transparent and secure
connections between users and IT resources. It also ensures defect
tolerance and provides access to resources in the event of failure of one
component.

There really is nothing special about distributing resources in a


computer network. This began with the use of mainframe terminals. then
moved to minicomputers and is now possible in personal computers and
client server architecture with several tiers.

A disiributed computer architecture consists of a number of very


lightweight client machines installed with one or several dedicated servers
for computer management. Client agents normally recognize when the
machine is idle, so that the management server is notified that the machine
is not in use or that it is available. The agent then asks for a package.
When this application package is delivered from the management server to
the client. when it has free CPU cycles. the software runs the application
software and returns the results to the management server When the user
remums., the management server will return the resources used to perform a
number of tasks in the absence of the user.

Distnbuted systems show heterogeneity, openness, scalability,


transparency, concurrency, continuous availability and independent
failures. These characterize clouds to some extent. especially with regard
to scalability, concurrency and continuous availability.
11. Explain
11. Explain the
the level
level of
of parallelization.
parallelization.

1.3.3 Levels of Parallelism

* Levels of parallelism are decided based on grain size. Table 1.3.1 lists categories of code granularity for
parallelism. All these approaches have a common goal; to boost processor efficiency by hiding latency,
* The idea is to execute concurrently two or more single-threaded applications, such as compiling, text formatting
database searching, and device simulation.
* As shown in the table and depicted in Fig. 1.3.6, parallelism within an application can be detected at several
levels ; Large grain (or task level), Medium grain (or control level), Fine grain (data level) and Very fine grain
(multiple-instruction issue) parallelism and distribution at the top two levels, which involve the distribution of
the computation among multiple threads or processes.

Grain Size Code Item Parallelized By

Large Separate and heavyweight | Programmer


process

Medium Function or procedure Programmer

Fine Loop or instruction block Parallelizing compiler

Very fine Instruction Processor

Rene Messages
IPC
2 BY þ— en TeTasks)
(Processes,
Task N

a
function f1() \. babes
Sh
function f2() function f2()
Medium Level
(....) (a) sits) (Threads, Functions)
Function 1 Function2 Function J

afOj=... . a[1] =... aſk] = Fi ne Level


bſo] =... b[1] =... b{k] = (Provetincy
_ Statements Statements Statements PRCUCIOns)

Very Fine Level


(Cores, Pipeline,
Instructions)
12.
12. What
What is
is aa Web
Web Service?
Service?

Web services have emerged as the leading technology for implementing SOA (Service-Oriented Architecture)
systems and applications. By harnessing the power of Internet technologies and widely accepted standards, they
offer a robust solution for building distributed systems. What makes Web services stand out as the technology of
choice for SOA? For one, they promote seamless interoperability between diverse platforms and programming
languages.
Additionally, they are built on established and independent standards like HTTP, SOAP, XML, and WSDL And
they provide a straightforward and user-friendly approach to connecting varied software systems, facilitanng
the rapid assembly of services within a distributed environment. Most importantly, they offer the essential
capabilities necessary for enterprise business applications to thrive in a real-world setting. These include
sophisticated features for service discovery, enabling seamless integration within a system.

— a
* Web services, based on the simple concept of object-oriented abstraction, offer a range of operations that can be
utilized through internet protocols. These method operations support the passing of various parameter types
and return values in both complex and simple forms,
* — The standardized use of XML and WSDL ensures the interoperability of web service methods, making it effortless
to express a variety of types in a universal fashion. These services are easily accessible when hosted in a web
server, with HTTP being the preferred transport protocol for seamless interactions.
* System architects utilize their preferred technology to create and implement a Web service. This service can then
be accessed through compatible Web or application servers. The details of the service are conveyed through x
Web Service Definition Language (WSDL) document, which can be added to a global registry or directly attached
to the service itself,
Description
* To find and access these services, users can browse through global catalogs using Universal
metadata by first
Discovery and Integration (UDDI), or more commonly, they can directly retrieve the service's
querying the Web service.
by effortlessly
* The Web service description document provides a helpful function for service consumers
generating clients for the specific service and seamlessly embedding them within their current application. Due
to the widespread popularity of Web services, they offer bindings for all mainstream programming languages in
the form of easily accessible libraries and development tools.
* This leads to a seamless and uncomplicated usage of Web services compared to more challenging integration
required by technologies like CORBA. Additionally, the interoperability of Web services makes them a superior
choice for Service-Oriented Architecture (SOA) compared to other distributed object frameworks like .NET
Remoting, Java RMI, and DCOM/COM+, which are limited to a single platform or environment.
13. What
13. What are
are the
the different
different types
types of
of web
web services?
services?

There are
There are mainly
mainly two
two types
types of
of web
web services:
services:

1. SOAP
1. SOAP web
web services:
services: SOAP
SOAP stands
stands for
for Simple
Simple Object
Object Access
Access Protocol.
Protocol. These
These protocols
protocols are
are based
based
on XML
on XML which
which is
is aa lightweight
lightweight data
data exchange
exchange language.
language. These
These protocols
protocols are
are independent
independent ofof
language and
language and can
can be be run
run on
on any
any platform.
platform.

SOAP supports
SOAP supports both
both stateful
stateful and
and stateless
stateless operations.
operations. Stateful
Stateful means
means that
that the
the server
server keeps
keeps track
track
of the
of the information
information received
received from
from the
the client
client on
on each
each request.
request. While
While Stateless
Stateless means
means that
that each
each
request contains
request contains enough
enough information
information about
about the
the state
state of
of the
the client
client and
and thus
thus server
server does
does not
not need
need
to bother
to bother about
about saving
saving the
the state
state of
of the
the client
client thus
thus increasing
increasing the
the speed
speed of
of communication.
communication.

Many companies
Many companies such
such as
as IBM,
IBM, Microsoft
Microsoft are
are producing
producing an
an implementation
implementation of
of SOAP
SOAP into
into their
their
systems.
systems.

2. RESTful
2. RESTful webweb services:
services: ItIt stands
stands for
for Representational
Representational State
State Transfer.
Transfer. They
They are
are also
also language
language andand
platform-independent and
platform-independent and are
are faster
faster in
in comparison
comparison to to SOAP.
SOAP. Nowadays
Nowadays RESTful
RESTful webweb services
services are
are
more used
more used than
than SOAP.
SOAP. They
They treat
treat the
the data
data as
as resources.
resources. RESTful
RESTful web
web services
services return
return data
data in
in JSON
JSON
format or
format or XML
XML format.
format. These
These web
web services
services create
create the
the object
object and
and send
send the
the state
state of
of the
the object
object inin
response to
response to the
the client’s
client’s requests,
requests, that’s
that’s why
why known
known as as Representational
Representational State
State Transfer.
Transfer.

The resource
The resource has
has representations
representations like
like XML,
XML, HTML,
HTML, and
and JSON.
JSON. The
The current
current state
state is
is captured
captured by
by
representational resource.
representational resource. When
When we
we request
request aa resource,
resource, we
we provide
provide the
the representation
representation ofof the
the
resource. The
resource. The important
important methods
methods of
of HTTP
HTTP are:
are:

o
o GET: It
GET: It reads
reads aa resource.
resource.

o
o PUT: It
PUT: It updates
updates an
an existing
existing resource.
resource.

o
o POST: It
POST: It creates
creates a
a new
new resource.
resource.

o
o DELETE: It
DELETE: It deletes
deletes the
the resource.
resource.

Advantages of
Advantages of RESTful
RESTful web
web services
services

o
o RESTful web
RESTful web services
services are
are platform
platform independent.
independent.

o
o It can
It can be
be written
written in
in any
any programming
programming language
language and
and can
can be
be executed
executed on
on any
any platform.
platform.

o
o It provides
It provides different
different data
data format
format like
like JSON,
JSON, text,
text, HTML,
HTML, and
and XML.
XML.

o
o Itisis fast
It fast in
in comparison
comparison to
to SOAP
SOAP because
because there
there is
is no
no strict
strict specification
specification like
like SOAP.
SOAP.

o
o These are
These are reusable.
reusable.

o
o These are
These are language
language neutral.
SOAP-ENV: Envelope

SOAP-ENV:Header

SOAP-ENV: Body

SOAP Structure

14.
14. What
What are
are the
the different
different characteristics
characteristics of
of web
web services?
services?

Following are
Following are the
the characteristics
characteristics of
of web
web services:
services:

1. Web
1. Web services
services are
are XML-based
XML-based asas they
they use
use XML
XML asas a
a standard
standard language
language for
for data
data exchange
exchange as
as
XML allows
XML allows flexible
flexible coding
coding and
and decoding
decoding of
of data
data with
with every
every programming
programming language
language and
and
operating system.
operating system.

2.. Web
Web services
services are
are coarse-grained.
coarse-grained. It
It means
means they
they have
have broader
broader functionality
functionality and
and scope
scope of
of
operations. It
operations. It is
is cheaper
cheaper and
and provides
provides more
more fine-grained
fine-grained services
services in
in one
one coarse-grained
coarse-grained
service.
service.
3.. Web
Web Services
Services supports
supports RPCs
RPCs (Remote
(Remote Procedure
Procedure Calls).
Calls). Web
Web services
services that
that use
use the
the RPCs
RPCs style
style
are synchronous,
are synchronous, which
which means
means the
the client
client has
has to
to wait
wait for
for the
the response
response after
after the
the request.
request. RPCs
RPCs
allows a
allows a program
program to
to invoke
invoke procedure
procedure and
and functions
functions onon remote
remote objects.
objects.

Web services
4. Web services allow
allow loose
loose coupling
coupling with
with the
the systems
systems that
that means
means systems
systems are
are weekly
weekly
associated with
associated with each
each other.
other. Web
Web service
service does
does not
not concern
concern with
with the
the state
state of
of the
the system
system
involved in
involved in the
the process
process ofof communication.
communication.

5.. Web
Web Services
Services are
are Synchronous
Synchronous andand Asynchronous.
Asynchronous. In In synchronous
synchronous webweb services,
services, the
the client
client
will wait
will wait for
for the
the response
response until
until the
the server
server sends
sends the
the response.
response. Synchronous
Synchronous web web service
service isis
provided through
provided through RPC
RPC communication.
communication. In In Asynchronous
Asynchronous web web services,
services, the
the client
client will
will not
not wait
wait
for the
for the response
response and
and in
in the
the meantime,
meantime, itit can
can continue
continue with
with other
other operations
operations processing.
15. Explain
15. Explain the
the difference
difference between
between SOAP
SOAP and
and REST.
REST.

There are
There are many
many differences
differences between
between SOAP
SOAP and
and REST
REST web
web services.
services. The
The important
important 10
10 differences
differences
between SOAP
between SOAP and
and REST
REST are
are given
given below:
below:

No.
No. SOAP
SOAP REST
REST

1)
1) SOAP is
SOAP is a
a protocol.
protocol. REST is
REST is an
an architectural
architectural style.
style.

2)
2) SOAP stands
SOAP stands for
for Simple
Simple Object
Object REST stands
REST stands for
for REpresentational
REpresentational State
State Transfer.
Transfer.
Access
Access Protocol.
Protocol.

3)
3) SOAP can't
SOAP can't use
use REST
REST because
because it
it is
is REST can
REST can use
use SOAP
SOAP web
web services
services because
because itit is
is a
a
aa protocol.
protocol. concept and
concept and can
can use
use any
any protocol
protocol like
like HTTP,
HTTP, SOAP.
SOAP.

4)
4) SOAP uses
SOAP uses services
services interfaces
interfaces to
to REST uses
REST uses URI
URI to
to expose
expose business
business logic.
logic.
expose the
expose the business
business logic.
logic.

5)
5) JAX-WS is
JAX-WS is the
the java API for
java API for SOAP
SOAP JAX-RS is
JAX-RS is the
the java API for
java API for RESTful
RESTful web
web services.
services.
web services.
web services.

6)
6) SOAP defines
SOAP defines standards
standards to
to be
be REST does
REST does not
not define
define too
too much
much standards
standards like
like SOAP.
SOAP.
strictly followed.
strictly followed.

7)
7) SOAP requires
SOAP requires more
more REST requires
REST requires less
less bandwidth
bandwidth and
and resource
resource than
than
bandwidth and
bandwidth and resource
resource than
than SOAP.
SOAP.
REST.
REST.

8)
8) SOAP defines
SOAP defines its
its own
own security.
security. RESTful web
RESTful web services
services inherits
inherits security
security
measures from
measures from the
the underlying
underlying transport.
transport.

9)
9) SOAP permits
SOAP permits XML
XML data
data format
format REST permits
REST permits different
different data
data format
format such
such as
as Plain
Plain
only.
only. text, HTML,
text, HTML, XML,
XML, JSON
JSON etc.
etc.

10)
10) SOAP is
SOAP is less
less preferred
preferred than
than REST.
REST. REST more
REST more preferred
preferred than
than SOAP.
16. What
16. What is
is WSDL?
WSDL?

* WSDL is a vital tool in the world of Java web development, serving as an XML format that outlines network
services through a collection of endpoints that operate on messages containing either document-oriented or
procedure-oriented information. These operations and messages are described in an abstract manner, and then
paired with a specific network protocol and message format to create an endpoint.

* This allows for the creation of abstract and concrete endpoints, which can then be combined into services
WSDL's extensibility also makes it possible to describe endpoints and messages regardless of the communication
SOAP 1.1, HTTP
protocols or formats used. However, this document primarily focuses on the use of WSDL with
GET/POST and MIME bindings.

WSDL Document Structure

also known 35
WSDL documents serve as essential blueprints for services, grouping together network endpoints,
the abstract definitions of these endpoints and messages from their concrete
ports. WSDL cleverly separates
a
deployment on a network or binding of data formats. This results in reusability of abstract definitions such
messages, which describe the data being communicated, and port types, which are collections of operations. The
beauty of this separation lies in the creation of reusable bindings, where the specific specifications for the protocols
and data formats associated with a particular port type can be reused. Ultimately, a service is defined by a group a
ports, each with a network address linked to a reusable binding.

Abstract
definition of
service

Protocol and
physical
locations

Fig. 1.4.1 : WSDL


Table : 1.4.1

Element Description

<types> Defines the (XML Schema) data types used by the web service. It is a container for data type
definitions using some type system (such as XSD).

<message> | Defines the data elements for each operation. It is an abstract, typed definition of the data being
communicated. :

<portType> | Describes the operations that can be performed and the messages involved. An abstract set of
operations supported by one or more endpoints.

<binding> | Defines the protocol and data format for each port type. A concrete protocol and data format
specification for a particular port type.

<service> Service- a collection of related endpoints.

<port> Port- a single endpoint defined as a combination of a binding and a network address.

17. What
17. What role
role does
does XML
XML play
play in
in Web
Web Services?
Services? (not
(not found)
found)
18. Explain
18. Explain the
the purpose
purpose of
of HTTP
HTTP methods
methods (GET,
(GET, POST,
POST, PUT,
PUT, DELETE)
DELETE) in
in RESTful
RESTful Web
Web Services.
Services.
19. What
19. What is
is SOAP?
SOAP? Explain
Explain the
the architecture
architecture of
of SOAP
SOAP messages.
messages.
20. Explain
20. Explain the
the SOAP
SOAP header.
header.
21. What
21. What is
is Client-side
Client-side SOAP
SOAP handler?
handler? Explain
Explain the
the steps
steps to
to create
create Client-side
Client-side SOAP
SOAP handlers.
handlers.

ent the SOA PHu nde inte rfac e prov ided by the Java API for XML Web Services (JAX-
* implem
“This interface defines methods for handling SOAP messages.
»

SOAP eater: you can customize. the behavior of your, web Re > clic
z, or modifying the SOAP message before it is sent to the server.
22. Explain
22. Explain REST
REST along
along with
with its
its key
key principles.
principles.
23. Explain
23. Explain Java
Java API
API for
for RESTful
RESTful Web
Web Services
Services

i spi URI patents and HTTP operations io merit wetiinks of pam


‘can help you Ae?tag parameters,

onfigurat ions )

ConfigurationResource

@path("/{id}")
@GET
(@PathParam(”id”) Integer id)
publ ic Response getConfigurationByTId

The base URL ts based on the application name, the


The example sets the path to base
above URL + /resourcePath.
web xml configuration file
relet, and the URL patter from the

2.10.2 @POST
POST requests on the matching resource path
annotated method will handic the HTTP
The @POST

@POST

@Consumes(~ application/xm >.


Comfiguration(Configuration config) {
public Response Crean

7S 2.10.3 @PUT
PUT requests on the matching resource path
annotated method will handle the HTTP
The @PUT

@PUT

@consumes(” application/xmi”)
i d™) Integer id, Config
public Response updateConfiguration(@PathParam(™
24. Explain
24. Explain Characteristics
Characteristics of
of Virtualized
Virtualized environment.
environment.

(a) Sharing
* Virtualization allows the creation of a separate computing environments within the same host.
* This basic feature is used to reduce the number of active servers and limit power consumption.

(b) Aggregation
* Notonly it is possible to share physical resource among several guests, but virtualization also allows aggregation,
which is the opposite process, A group of separate hosts can be tied together and represented to guests asa
single virtual host.
® This functionality is implemented with cluster management software, which hamesses the physical resources of a
homogeneous group of machines and represents them as a single resource.
(c) Emulation

* Guest programs are executed within an environment that is controlled by the virtualization layer, which
ultimately is a program.
* Als a completely different environment with respect to the host can be emulated, thus allowing the
execution of guest programs requiring specific characteristics that are not present in the physical host.
(d) Isolation

* Virtualization allows providing guests such as whether they are operating systems, applications, or other
entities with a completely separate environment, in which they are executed.
* The guest program performs its activity by interacting with an abstraction layer, which provides access to the
underlying resources. The virtual machine can filter the activity of the guest and prevent harmful operations
against the host.
* Besides these characteristics, another important capability enabled by virtualization is performance tuning.
This feature is a reality at present, given the considerable advances in hardware and software supporting
virtualization,

* — It becomes casier to control the performance of the guest by finely tuning the properties of the resources
exposed through the virtual environment. This capability provides a means to effectively implement
a
quality-of-service (QoS) infrastructure,

3, Probability

e The concept of portability applies in different ways according to the specific type of virtualization
considered. In the case of a hardware virtualization solution, the guest is packaged into a virtual image that,
in most cases, can be safely moved and executed on top of different virtual machines.

* In programming-level virtualization which is implemented by the JVM or the NET runtime, the binary code
representing application components (jars or assemblies) can run without any recompilation on any
implementation of the corresponding virtual machine.
25. List
25. List and
and explain
explain the
the advantages
advantages and
and disadvantages
disadvantages of
of virtualization.
virtualization.
—— a.

2.2.1 Pros of Virtualization

1. It is cheaper : Because virtualization doesn't require actual hardware components to be used or installed, ry
infrastructures find it to be a cheaper system to implement. There is no longer a need to dedicate large areas of
space and huge monetary investments to create an on-site resource. Users have to purchase the license of the
access from a third-party provider and begin to work, just as if the hardware were installed locally
2. It keeps costs predictable : Because third-party providers typically provide virtualization options, individuals
and corporations can have predictable costs for their information technology needs

3 Itreduces the workload ; Most virtualization providers automatically update their hardware and software thy
will be utilized. Instead of sending people to do these updates locally,
they are installed by the third-party
provider This allows local IT professionals to focus on other tasks and saves even more money for individualsor
corporations.
4. It offers a better uptime : Because of virtualization technologies, uptime has improved dramatically. Some
providers offer an uptime that is 99.9999%. Even budget-friendly providers offer uptime at 99.99% today,
5. It allows for faster deployment of resources: Resource provisioning is fast and simple when virtualization &
being used. There is no longer a need to set up physical machines, create local networks, or install other
information technology components, As long as there is at least one point of access to the virtual environment, it
can be spread to the rest
of the organization.
6. It promotes digital entrepreneurship : Before virtualization occurred on a large scale, digital
entrepreneurship was virtually impossible for the average person. Sites like Fiverr and UpWork make it possible
for anyone to set a shingle and begin finding some work to do.
7, [t provides energy savings : For most individuals and corporations, virtualization is an energy-efficient system
Because there aren't local hardware or software options being utilized, energy consumption rates can be
lowered. Instead of paying for the cooling costs of a data center and the operational costs of equipment, funds
can be used for other operational expenditures over time to improve virtualization's overall RO!

2.2.2 Cons of Virtualization

1 Itcan have a high cost of implementation : The cost for the average individual or business when virtualization
Is being considered will be quite low For the providers of a virtualization environment, however, the
implementation costs can be quite high. Hardware and software are required at some point and that mean
devices must either be developed, manufactured,or purchased for implementation.
0 —

It still has limitations : Not every application or server Is galing to work within an environment of virtualization.
That means an individual or corporation may require a hybrid system to function properly. This still saves time
and money ty the long run, but since not every vendor supports virtualization and some may stop supporting it
after initially starting it, there is always a level of uncertainty when fully implementing this type of system.

It creates a security risk ; Information is our modern currency Because data is crucial to the success of a
business, it Is targeted frequently. Just like physical machines, virtual machines also contain a lot of critical,
sensitive data such as personal data, user profiles, passwords, license keys, and history. While the risk of data
loss is immense with both physical and virtual machines, the risk is much greater with virtual machines as it is
much easier to move files and images from virtual machines than it is to hack into physical machines via network
links. Many images and snapshots are captured by virtual machines in order to deploy or restore system restores,
and they can be prone to data theft.
It creates an availability issue : If an organization cannot connect to their data for an extended period of time,
they will struggle to compete in their industry. And, since availability is controlled by third-party providers, the
ability to stay connected in not in one's control with virtualization.
It creates a scalability issue : Virtualization enables rapid creation and addition of new virtual machines.
Without total automation, this dynamic growth capacity can destabilize security management activities such as
system configuration and updates, resulting in vulnerability to security incidents.
It requires several links in a chain that must work together cohesively : If you have local equipment,
then
you are in full control of what you can do. With virtualization, you lose that control because several links must
work together to perform the same task. Consider the example of saving a document file. With a local storage
device, like a flash drive or HDD, you can save the file immediately and even create a backup. Using virtualization,
your ISP connection would need to be valid. Your LAN or Wi-Fi would need to be working, Your online storage
option would need to be available. If any of those are not working, then you're not saving that file.
It takes time ; Although you save time during the implementation phases of virtualization, it costs users time
over the long-run when compared to local systems. That is because there are extra steps that must be followed to
generate the desired result.
26. Explain
26. Explain in
in detail
detail about
about KVM.
KVM.

2.3 Virtualization using KVM


¢ KVM is short for Kernel-based Virtual Machine, and currently it has developed one of the most popular Virtual
Machines in the world. KVM is a full virtualization solution for Linux on x86 hardware containing virtualization
extensions (Intel VT or AMD-V).

* It consists of a loadable kernel module, kvm.ko, that provides the core virtualization infrastructure and a
processor specific module, kvm-intel.ko or kvm-amd.ko. KVM also requires a modified QEMU although work is

underway to get the required changes upstream.
* Using KVM, one can run multiple virtual machines running unmodified Linux or Windows images. Each virtual
machine has private virtualized hardware: a network card, disk, graphics adapter, etc. With KVM, multiple virtual
machines can run under the unmodified Linux or Win-dows images. Every single virtual machine has its own
virtualized hardware, containing network interface card (NIC), storage devices, graphical user interface (GUI),
etc, (Red Hat, Inc. 2016.).

Tre” j WJ
+ Compared with VMware and Hyper-V, KVM is open source software, The kernel component of KVM, is ines,
in mainline Linux, in 2.6.20 and has since been fixed as a part of the kernel. (Red Hat, Inc. 2016.). |

Benefits of using KVM :

1, It support for any kind of guest OS.


2. Efficient code.
3. KVMis open source and flexible. |

4 User doesn't have to pay for license.


27.
27. Write
Write a
a note
note on
on oVirt.
oVirt.

2.5.1 What is oVirt? =>. wy; PURUA SEL PUP


| 4 L
%
Py MMH
| TS
/ "ae

ſ
CuNgnud is Manette Clits A 4
oVirt is a complete virtualization management platform, licensed and developed as SR Source 5oftware. oVirt
builds on the powerful Kernel- based Virtual Machine (KVM) hypervisor, and on the RHEV-M management server
released by Red Hat to the op
open source community. oVirt is a large
large scale, centralized management for server and
desktop virtualization. Provide an open source alternative to vCenter/vSphere. Two key components in oVirt are :

(a) Hypervisor - oVirt Node


(b) Management Server - oVirt Engine

(a) oVirtNode : It computes virtualization units that directly runs the virtual machine, oVirt nodes are servers using
Linux x86_64 with the installed libvirt daemon and VDSM (Virtual Desktop and Server Management) services.
These are the set of packages and support services that are required for the rapid deployment of virtualization.
The most preferred distribution to build the nodes is Red Hat Linux.

(b) oVirtEngine : It is a control unit used for administrative tasks related to the management of the global configuration
of the entire virtualization infrastructure, the management of virtual machines, storage and network settings.
oVirt Engine is a set of software and services that implements the functionality of the central control
infrastructure. Using oVirt Engine interfaces, the administrator can run the whole setup inside oVirt.

oVirt Engine

oVirt Node oVin Node oVirt Node


28. What
28. What is
is Virtualization
Virtualization explain
explain its
its types
types in
in detail?
detail?

Virtualization is
Virtualization is the
the "creation
"creation of
of aa virtual
virtual (rather
(rather than
than actual)
actual) version
version of
of something,
something, such
such as
as a
a
server, aa desktop,
server, desktop, a a storage
storage device,
device, anan operating
operating system
system or
or network
network resources".
resources".

In other
In other words,
words, Virtualization
Virtualization is
is a
a technique,
technique, which
which allows
allows to
to share
share aa single
single physical
physical instance
instance of
of a
a
resource or
resource or an
an application
application among
among multiple
multiple customers
customers and
and organizations.
organizations. ItIt does
does by
by assigning
assigning aa
logical name
logical name to
to aa physical
physical storage
storage and
and providing
providing aa pointer
pointer to
to that
that physical
physical resource
resource when
when
demanded.
demanded.

APP APP APP

{ Binaries/ | { Binaries/ | { Binaries/ |


| Libraries | | Libraries | | Libraries }
Guest | f Guest |} [ Guest
| os | | os | OS
[ Hyperviser }
[ Host OS )

( Server Hardware )

Virtualization

•« Host Machine:
Host Machine: The
The machine
machine on
on which
which the
the virtual
virtual machine
machine is
is going
going to
to be
be built
built is
is known
known as
as
Host Machine.
Host Machine.

•e Guest Machine:
Guest Machine: The
The virtual
virtual machine
machine is
is referred
referred to
to as
as aa Guest
Guest Machine.
Machine.

Types of
Types of Virtualization:
Virtualization:

1) Hardware
1) Hardware Virtualization:
Virtualization:

When the
When the virtual
virtual machine
machine software
software or
or virtual
virtual machine
machine manager
manager (VMM)
(VMM) is
is directly
directly installed
installed on
on the
the
hardware system
hardware system is
is known
known as
as hardware
hardware virtualization.
virtualization.

The main
The main job of hypervisor
job of hypervisor is
is to
to control
control and
and monitoring
monitoring the
the processor,
processor, memory
memory and
and other
other
hardware resources.
hardware resources.

After virtualization
After virtualization of
of hardware
hardware system
system we
we can
can install
install different
different operating
operating system
system on
on it
it and
and run
run
different applications
different applications on
on those
those OS.
OS.

Usage:
Usage:
Hardware virtualization
Hardware virtualization is
is mainly
mainly done
done for
for the
the server
server platforms,
platforms, because
because controlling
controlling virtual
virtual
machines is
machines is much
much easier
easier than
than controlling
controlling aa physical
physical server.
server.

2) Operating
2) Operating System
System Virtualization:
Virtualization:

When the
When the virtual
virtual machine
machine software
software oror virtual
virtual machine
machine manager
manager (VMM)
(VMM) is
is installed
installed on
on the
the Host
Host
operating system
operating system instead
instead of
of directly
directly on
on the
the hardware
hardware system
system is
is known
known as
as operating
operating system
system
virtualization.
Usage:
Usage:
Operating System
Operating System Virtualization
Virtualization is
is mainly
mainly used
used for
for testing
testing the
the applications
applications on
on different
different platforms
platforms of
of
OS.
OS.
3) Server
3) Server Virtualization:
Virtualization:

When the
When the virtual
virtual machine
machine software
software or
or virtual
virtual machine
machine manager
manager (VMM)
(VMM) is
is directly
directly installed
installed on
on the
the
Server system
Server system isis known
known as
as server
server virtualization.
virtualization.

Usage:
Usage:
Server virtualization
Server virtualization isis done
done because
because aa single
single physical
physical server
server can
can be
be divided
divided into
into multiple
multiple servers
servers
on the
on the demand
demand basis
basis and
and for
for balancing
balancing the
the load.
load.

4) Storage
4) Storage Virtualization:
Virtualization:

Storage virtualization
Storage virtualization is
is the
the process of grouping
process of grouping the
the physical
physical storage
storage from multiple network
from multiple network
storage devices
storage devices so
so that
that itit looks
looks like
like a
a single
single storage
storage device.
device.

Storage virtualization
Storage virtualization is
is also
also implemented
implemented by
by using
using software
software applications.
applications.

Usage:
Usage:

Storage virtualization
Storage virtualization is
is mainly
mainly done
done for
for back-up
back-up and
and recovery
recovery purposes.
purposes.

29. Distinguish
29. Distinguish between
between Hot/Live
Hot/Live and
and Cold/Regular
Cold/Regular Migration
Migration

1. Cold
1. Cold Migration:
Migration:
A powered
A powered downdown Virtual
Virtual Machine
Machine is is carried
carried to
to separate
separate host
host or
or data
data store.
store. Virtual
Virtual Machine’s
Machine’s
power state
power state is
is OFF
OFF and
and there
there is
is no
no need
need ofof common
common shared
shared storage.
storage. There
There isis a
a lack
lack of
of CPU
CPU check
check
and there
and there is
is long
long shortage
shortage time.
time. Log
Log files
files and
and configuration
configuration files
files are
are migrated
migrated from
from the
the source
source host
host
to the
to the destination
destination host.
host.

The first
The first host’s
host’s Virtual
Virtual Machine
Machine is
is shut
shut down
down and
and again
again started
started on
on next
next host.
host. Applications
Applications and
and OS
OS
are terminated
are terminated on on Virtual
Virtual Machines
Machines before
before moving
moving them
them toto physical
physical devices.
devices. User
User is
is given
given choice
choice
of movement
of movement of of disks
disks associated
associated from
from one
one data
data store
store to
to another
another one.
one.

CONFIGURATION DATA
SOURCE HOST >» | TARGET HOST

NETWORK
STORAGE
2. Hot
2. Hot Migrations
Migrations ::
A powered
A powered on on Virtual
Virtual Machine
Machine isis moved
moved from
from one
one physical
physical host
host to
to another
another physical
physical host.
host. A
A source
source
host state
host state is
is cloned
cloned toto destination
destination host
host and
and then
then that
that source
source host
host state
state is
is discarded.
discarded. Complete
Complete
state is
state is shifted
shifted to
to the
the destination
destination host.
host. Network
Network isis moved
moved toto destination
destination Virtual
Virtual Machine.
Machine.

A common
A common shared
shared storage
storage isis needed
needed andand CPU
CPU checks
checks are
are put
put into
into use.
use. Shortage
Shortage time
time is
is very
very little.
little.
Without stoppage
Without stoppage of of OS
OS or
or applications,
applications, they
they are
are shifted
shifted from
from Virtual
Virtual Machines
Machines to
to physical
physical
machines. The
machines. The physical
physical server
server isis freed
freed for
for maintenance
maintenance purposes
purposes andand workloads
workloads (which
(which are
are among
among
physical servers)
physical servers) are
are dynamically
dynamically balanced
balanced so so as
as to
to run
run at
at optimized
optimized levels.
levels. Downtime
Downtime of of clients
clients isis
easily avoidable.
easily avoidable.

Suspend first
Suspend first host’s
host’s Virtual
Virtual Machine
Machine and
and then
then clone
clone it
it across
across registers
registers of
of CPU
CPU and
and RAM
RAM and
and again
again
resume some
resume some time
time later
later on
on second
second host.
host. This
This migration
migration runs
runs when
when source
source system
system is
is operative.
operative.

•« Stage-0:
Stage-0:
Is Pre-Migration
Is Pre-Migration stage
stage having
having functional
functional Virtual
Virtual Machine
Machine on
on primary
primary host.
host.

•« Stage-1:
Stage-1:
Is Reservation
Is Reservation stage
stage initializing
initializing container
container on
on destination
destination host.
host.

•« Stage-2:
Stage-2:
Is Iterative
Is Iterative pre-copy
pre-copy stage
stage where
where shadow
shadow paging
paging is
is enabled
enabled and
and all
all dirty
dirty pages
pages are
are cloned
cloned in
in
succession rounds.
succession rounds.

•« Stage-3:
Stage-3:
Is Stop
Is Stop and
and copy
copy where
where first
first host’s
host’s Virtual
Virtual Machine
Machine is
is suspended
suspended and
and all
all remaining
remaining Virtual
Virtual
Machine state
Machine state are
are synchronized
synchronized on on second
second host.
host.

•« Stage-4:
Stage-4:
Is
Is Commitment
Commitment where
where there
there is
is minimization
minimization of
of Virtual
Virtual Machine
Machine state
state on
on first
first host.
host.

•e« Stage-5:
Stage-5:
Is Activation
Is Activation stage
stage where
where second
second host’s
host's Virtual
Virtual Machine
Machine start
start and
and establishes
establishes connection
connection to
to
all local
all local computers
computers resuming
resuming all
all normal
normal activities.
activities.

MEMORY SYNC
VIRTUAL MACHINE VIRTUAL MACHINE

NETWORK
STORAGE

30.
30. Explain
Explain the
the Life
Life Cycle
Cycle of
of virtualization
virtualization in
in detail.
detail. (not
(not found)
31. Explain
31. Explain Hypervisor
Hypervisor in
in detail.
detail.

A hypervisor,
A hypervisor, also
also known
known asas a
a virtual
virtual machine
machine monitor
monitor or
or VMM.
VMM. The
The hypervisor
hypervisor is
is aa piece
piece of
of software
software
that allows
that allows us
us to
to build
build and
and run
run virtual
virtual machines
machines which
which are
are abbreviated
abbreviated as
as VMs.
VMs.

A hypervisor
A hypervisor allows
allows aa single
single host
host computer
computer toto support
support multiple
multiple virtual
virtual machines
machines (VMs)
(VMs) by
by sharing
sharing
resources including
resources including memory
memory andand processing.
processing.

Hardware Hypervisor OS

The Type
The Type 11 hypervisor
hypervisor

•e The
The native
native or
or bare
bare metal
metal hypervisor,
hypervisor, the
the Type
Type 11 hypervisor
hypervisor is is known
known by
by both
both names.
names.
•e It|t replaces
replaces the
the host
host operating
operating system,
system, and
and the
the hypervisor
hypervisor schedules
schedules VM
VM services
services directly
directly to
to
the hardware.
the hardware.
•e The
The type
type 11 hypervisor
hypervisor is
is very
very much
much commonly
commonly usedused in
in the
the enterprise
enterprise data
data center
center or
or other
other
server-based environments.
server-based environments.

The Type
The Type 2
2 hypervisor
hypervisor

•e It|tisis also
also known
known as as aa hosted
hosted hypervisor,
hypervisor, The
The type
type 22 hypervisor
hypervisor is
is aa software
software layer
layer or
or
framework that
framework that runs
runs onon aa traditional
traditional operating
operating system.
system.
•© It|t operates
operates by by separating
separating thethe guest
guest and
and host
host operating
operating systems.
systems. The
The host
host operating
operating system
system
schedules VM
schedules VM services,
services, which
which are
are then
then executed
executed onon the
the hardware.
hardware.
•e Individual
Individual users users who
who wish
wish to
to operate
operate multiple
multiple operating
operating systems
systems on on aa personal
personal computer
computer
should use
should use aa form
form 2 2 hypervisor.
hypervisor.

Benefits of
Benefits of hypervisors
hypervisors

Speed: The
Speed: The hypervisors
hypervisors allow
allow virtual
virtual machines
machines to
to be
be built
built instantly
instantly unlike
unlike bare-metal
bare-metal servers.
servers. This
This
makes provisioning
makes provisioning resources
resources for
for complex
complex workloads
workloads much
much simpler.
simpler.

Efficiency: Hypervisors
Efficiency: Hypervisors that
that run
run multiple
multiple virtual
virtual machines
machines onon the
the resources
resources of
of a
a single
single physical
physical
machine often
machine often allow
allow for
for more
more effective
effective use
use ofof a
a single
single physical
physical server.
server.

Flexibility: Since
Flexibility: Since the
the hypervisor
hypervisor distinguishes
distinguishes the
the OS
OS from
from the
the underlying
underlying hardware,
hardware, the
the program
program no
no
longer relies
longer relies on
on particular
particular hardware
hardware devices
devices or
or drivers,
drivers, bare-metal
bare-metal hypervisors
hypervisors enable
enable operating
operating
systems and
systems and their
their related
related applications
applications to
to operate
operate onon aa variety
variety of
of hardware
hardware types.
Portability: Multiple
Portability: Multiple operating
operating systems
systems can
can run
run on
on the
the same
same physical
physical server
server thanks
thanks to
to hypervisors
hypervisors
(host machine).
(host machine). The
The hypervisor's
hypervisor's virtual
virtual machines
machines are
are portable
portable because
because they
they are
are separate
separate from
from the
the
physical computer.
physical computer.

32. Explain
32. Explain the
the process
process of
of creating
creating a
a virtual
virtual machine.
machine.

2.4.1 To create a Virtual Machine using VMware Workstation

1. Launch VMware Workstation.

2. Click New Virtual Machine.

3. Select the type of virtual machine you want to create and click Next: —
Note : Your choice depends partially on the hardware version you want your virtual machine to have. For more informatie,
i

| ____ $ee Virtual machine hardware versions (1003746). = =


|

Custom : This gives you an option to create a virtual machine and choose its hardware compatibility. You a
choose from Workstation 14.x, Workstation 12.x, Workstation 11.x, Workstation 10.x, Workstation 9;
Workstation 8.x, Workstation 6.5 -7.x, Workstation 6, Workstation 5 and Workstation 4.
e Typical :This creates a virtual machine which has the same hardware version as the version of Workstation yo
are using. If you are using Workstation 8.x, it creates a virtual machine with hardware version 8. If you are using
Workstation 6.5.x or 7.x, a virtual machine with hardware version 7 is created.

1. Click Next.
2. Select your guest operating system (OS), then click Next. You can install the OS using :

(1) An installer disc (CD/DVD)

{011)- An installer disc image file (ISO)

{i) Click Next.

(ii) Enter your Product Key.

(iii) Create a user name and password.


(iv) Click Next.

(v) Enter a virtual machine name and specify a location for virtual machine files to be saved, click Next

(vi) Establish the virtual machine's disk size, select whether to store the virtual disk as a single file or spt
the virtual disk into 2GB files, click Next.

(vii) Verify the other configuration settings for your virtual machine.
* Memory: Change the amount of memory allocated to the virtual machine.
Processors : Change the number of processors, number of cores per processor, and the virtualization engine. |
—. mm ms Ab

¢ CD/DVD: With advanced settings where you can choose between SCSI, INE,
« Network adapter : Configure it to bridge, NAT, or Host-only mode, or customize where you can choose between 0
to 9 adapters

e USE Controller

e Soundcard

* Display: enable 3D graphics.

1. Click Finish,

2. When the virtual machine is powered on, the VMware Tools installation starts. You are prompted to restart
your virtual machine once the Tools installation com pletes.

You might also like