Unit 4 Cloud Computing
Unit 4 Cloud Computing
Definition of virtualization
Virtualization can be defined as the abstraction of the four computing
resources (storage, processing power, memory, and network or I/O). It is
conceptually similar to emulation, where a system pretends to be another
system, whereas virtualization is a system pretending to be two or more
of the same system.
Need of virtualization
Increased performance and computing capacity
•Nowadays, the average end-user desktop PC is powerful enough to
meet almost all the needs of everyday computing, with extra capacity
that is rarely used.
•Almost all these PCs have resources enough to host a virtual machine
manager and execute a virtual machine with by far acceptable
performance.
Greening Initiatives
•Recently, companies are increasingly looking for ways to reduce the
amount of energy they consume and to reduce their carbon footprint.
Virtualization technologies can provide an efficient way of consolidating
servers.
Virtualization: Pros
Portability
•Virtual machine instances are normally represented by one or more files
that can be easily transported with respect to physical systems.
Moreover, they also tend to be self-contained since they do not have
other dependencies besides the virtual machine manager for their use.
Portability and self-containment simplify their administration.
Support of privileged instructions.
Provides server consolidation, testing ad development, provision for
dynamic load balancing.
Virtualization: Cons
Types of Virtualization
OS virtualization:
Virtualization an operating system environment is the most common
form of virtualization.
It involves putting a second instance or multiple instances of an
operating system, like Windows, on single machine. It saves companies
cash on energy, cabling, hardware, rack space, and more, while still
allowing them to run the same quantity of applications
Application-server virtualization
Application-server virtualization is also referred to as 'advanced load
balancing, ‘as it spreads applications across servers and servers across
applications.
This enables IT departments to balance the workload of specific
software in an agile way that does not overload a specific server or under
load a specific application in the event of a large project or change. It
also allows for easier management of servers and applications since we
can manage them as a single instance.
Administrative virtualization
Administrative virtualization is one of the least-known forms of
virtualization, likely due to the fact that its primarily used in data
centers. The concept of administration, or 'management,' virtualization
means segmented admin roles through group and user policies.
Network virtualization
Network virtualization involves virtually managing IPs, and is
accomplished through tools like routing tables, NICs, switches, and
VLAN tags.
Storage virtualization
Storage virtualization is an array of servers that are managed by a virtual
storage system. The servers are not aware of exactly where their data is
stored.
VIRTUAL MACHINE
Virtualization provides multiple environments for execution termed as
virtual machines.
•Each virtual machine looks like an actual machine to its user, but it is
isolated and is in virtualized form of running the existent machine under
the supervision of a Virtual Machine Monitor (VMM).
•A Virtual machine :
•Provides an environment where non-trusted applications can be run
•Adopts isolation techniques
•Allows dynamic deployment of application (portability)
•Applies optimization in OS
•Manages as a single service.
Full Virtualization
Para Virtualization
•This is a not-transparent virtualization solution that allows
implementing thin virtual machine managers.
Partial Virtualization
•In general, these techniques are mostly concerned with partial file
systems, libraries, and operating system component emulation. Such
emulation is performed by a thin layer—a program or an operating
system component—that is in charge of executing the application.
•The dispatcher constitutes the entry point of the monitor and reroutes
the instructions issued by the virtual machine instance to one of the two
other modules.
Interpretation
Binary Translation
•The parent partition (also called the root partition) is the only one that
has direct access to the hardware. It runs the virtualization stack, hosts
all the drivers required to configure guest operating systems, and creates
child partitions through the hypervisor.
•Child partitions are used to host guest operating systems and do not
have access to the underlying hardware, but their interaction with it is
controlled by either the parent partition or the hypervisor itself.
Kernel-based Virtual Machine
1. Host Server: The physical server that runs the KVM hypervisor
software. The hypervisor allows multiple virtual machines to run
concurrently on the same hardware.
6. Storage: Virtual machine images, snapshots, and other data are stored
on the host server's storage subsystem. KVM supports various storage
options, including local storage, network-attached storage (NAS), and
storage area networks (SANs).
While VirtualBox offers flexibility and ease of use, it's worth noting that
it may not be as well-suited for production-level cloud deployments as
dedicated cloud platforms or hypervisors. These alternatives typically
offer better performance, scalability, and management features required
for enterprise-grade cloud computing. However, VirtualBox can still
play a valuable role in certain scenarios, especially for smaller-scale or
experimental deployments.