L07-Basics of Virtualization

Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Advanced Certificate Program In

Software Architectures
FOUNDATION MODULE 3: VIRTUALIZATION

L07 – Basics of
Virtualization

Confidential Document
talentsprint.com
Topic

1. Importance of Deployment View


2. Reference Application on Traditional Servers
3. Pros & Cons of Traditional Servers
4. Introduction to Virtualization
5. Reference Application with Virtualization
6. Types of Virtualization
7. Hypervisor Overview
8. Types of Hypervisors
9. CAP Theorem
10. Infrastructure Automation Tools <next session>

© Copyright, TalentSprint
2
Importance of Deployment View

Hardware Allocation: It specifies how software components are allocated to hardware components, such as servers, nodes, or devices. This
helps in optimizing resource utilization and ensuring that the system meets performance requirements.

Scalability Planning: By understanding the deployment view, architects can plan for scalability requirements. They can determine how the
system will scale horizontally (adding more instances) or vertically (increasing resources on existing instances) to handle increased loads.

Performance Considerations: Deployment view helps in analyzing and optimizing the performance of the system. It allows architects to identify
potential bottlenecks in the deployment topology and make necessary adjustments to improve performance.

Reliability and Fault Tolerance: It enables architects to design for reliability and fault tolerance by considering redundancy, failover
mechanisms, and disaster recovery strategies in the deployment topology.

Security Planning: Deployment view aids in planning security measures such as firewalls, access controls, encryption, and network
configurations to protect the system from unauthorized access and attacks.

Maintenance and Management: Understanding the deployment view helps in planning for system maintenance, updates, and management

© Copyright, TalentSprint
tasks. It ensures that deployment configurations are conducive to efficient monitoring, logging, and debugging of the system.

Compliance and Regulatory Requirements: Certain industries have strict compliance and regulatory requirements regarding data handling,
storage, and access. Deployment view facilitates designing the system architecture to meet these requirements effectively

3
Reference Application

Building a notification system with a UI, a centralised security system, modules to provide various
types of notifications such as SMS, email, and push notifications, and the ability to extend it in the
future. Consider it as a monolithic application initially, supported by a persistence layer with the option
of SQL or NoSQL technology."

© Copyright, TalentSprint
4
Traditional Server

1. Servers are viewed as an integral


computing unit including the
hardware, the OS, the storage, and
the applications.
2. Servers often identified and referred
to by their function - File server,
Database server, SQL server, Web
server, Exchange server, so on
3. Each component is directly

© Copyright, TalentSprint
configured into the server

5
Pros & Cons of Traditional Server

Pros:
1. Ease of configuration and conceptualization
2. Ease of deployment
3. Backup is manageable
4. The client-server paradigm is well-suited for a variety of applications and services.
Cons:
1. High acquisition, maintenance and repair cost
2. Replication is challenging
3. Redundancy is costly and difficult to implement

© Copyright, TalentSprint
4. Scalability may be a limiting factor
5. Highly vulnerable to hardware failures
6. Often, utilization is low
6
Introduction to Virtualization

Virtualization is technology that you can use to create virtual


representations of servers, storage, networks, and other physical
machines. Virtual software mimics the functions of physical
hardware to run multiple virtual machines simultaneously on a
single physical machine. Businesses use virtualization to use their
hardware resources efficiently and get greater returns from their
investment. It also powers cloud computing services that help
organizations manage infrastructure more efficiently.

© Copyright, TalentSprint
7
Introduction to Virtualization

1. Virtualization – The process of creating a virtual version of a


physical object.
2. Virtual Machine – Visual representation of a physical
machine.
3. Virtual Machine Monitor (VMM) or Hypervisor – A process
that separates a computer’s operating system and
applications from the underlying physical hardware. –
Hypervisor monitors and manages running virtual machines
4. Host Machine – The physical machine that a virtual machine

© Copyright, TalentSprint
is running on.
5. Guest Machine – The virtual machine, running on the host
machine.
8
Reference Application with Virtualization
Virtualization Properties
Isolation
Fault Isolation
Software Isolation
Performance Isolation (via scheduling and resource allocation)
Encapsulation
All VM state can be captured into a file (operate on VM by operating on
file – cp, rm)
Complexity is proportional to virtual HW model and independent of
guest software configuration

© Copyright, TalentSprint
Interposition
All guest actions go through the virtualizing software which can inspect,
modify, and deny operations
9
Types of Virtualization

© Copyright, TalentSprint
10
Hypervisor (Virtual Machine Monitor - VMM)

• A hypervisor is software that creates, runs and manages virtual machines (VMs).

• The hypervisor treats resources—like CPU, memory, and storage—as a pool that can be easily

reallocated between existing guests or to new virtual machines.

• All hypervisors need some operating system-level components (memory manager, process scheduler

etc.) to run VMs.

• The hypervisor gives each virtual machine the resources that have been allocated and manages the

scheduling of VM resources against the physical resources.

© Copyright, TalentSprint
• The key benefit is, multiple different operating systems can run alongside each other and share the same

virtualized hardware resources with a hypervisor.

11
Types of Hypervisor
Type 1 - Native Hypervisors Type 2: Hosted Hypervisors

Runs directly on the host machine and shares Runs as an application inside an OS and supports

resources among guest machines. E.g., Microsoft VMs running as individual processes. E.g., VMware

Hyper-V, and VMware vSphere Workstation and Oracle VirtualBox.

© Copyright, TalentSprint
12
CAP Theorem

13

© Copyright, TalentSprint
Thank You

talentsprint.com

You might also like