You are on page 1of 22

CPUVIRTL

Storage Virtualization

SCHOOL OF COMPUTING JEIAN


JEIAN LOUELL
LOUELL NUEVA
NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Attendance Reminders

PLEASE SCAN QR CODE FOR ATTENDANCE


SLACK

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Storage Virtualization

SCHOOL OF COMPUTING JEIAN


JEIAN LOUELL
LOUELL NUEVA
NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
What is storage virtualization
Storage virtualization is the pooling of physical storage from multiple storage devices into what appears
to be a single storage device -- or pool of available storage capacity -- that is managed from a central
console. The technology relies on software to identify available storage capacity from physical devices
and to then aggregate that capacity as a pool of storage that can be used by traditional architecture
servers or in a virtual environment by virtual machines (VMs).

A "storage system" is also known as a storage array, disk array, or filer. Storage systems typically use
special hardware and software along with disk drives in order to provide very fast and reliable storage for
computing and data processing. Storage systems are complex, and may be thought of as a special
purpose computer designed to provide storage capacity along with advanced data protection features.
Disk drives are only one element within a storage system, along with hardware and special purpose
embedded software within the system.

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
How it works
A very basic form of storage virtualization is represented by a software virtualization layer between the
hardware of a storage resource and a host -- a personal computer (PC), a server or any device accessing
the storage -- that makes it possible for operating systems (OSes) and applications to access and use the
storage. Even a RAID array can sometimes be considered a type of storage virtualization. Multiple
physical drives in the array are presented to the user as a single storage device that, in the background,
stripes and replicates data to multiple disks to improve I/O performance and to protect data in case a
single drive fails.

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Communication between OS and Device
Device memory exposed as registers (command, status, data etc.)
• I/O happens by reading/writing this memory
• E.g., write command into device register to begin I/O
• OS can read/write device registers in two ways:
• Explicit I/O: in/out instructions in x86 can write to device memory
• Memory mapped I/O: Some memory addresses are assigned to device
memory and are not to RAM. I/O happens by reading/writing this memory.
• Accessing device memory (via explicit I/O or memory mapped I/O)
can be configured to trap to VMM
• Device raises interrupt when I/O completes (alternative to polling)
• Modern I/O devices perform DMA (Direct Memory Access) and copy data
from device memory to RAM before raising interrupt
• Device driver provides physical address of DMA buffers to device

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Emulation

SCHOOL OF COMPUTING JEIAN


JEIAN LOUELL
LOUELL NUEVA
NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Full Virtualization VMM Architecture

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Virtio Optimization

SCHOOL OF COMPUTING JEIAN


JEIAN LOUELL
LOUELL NUEVA
NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Virtio Optimization

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Device Passthrough

SCHOOL OF COMPUTING JEIAN


JEIAN LOUELL
LOUELL NUEVA
NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
SR-IOV
More efficient than device emulation
• Example: SR-IOV (Single Root IO Virtualization) in network devices
• Network card has one physical function (PF) and many virtual functions (VFs)
• PF managed by host OS, each VF assigned to one guest VM
• Each VF is like a separate NIC, and is bound to a guest VM
• Packets destined to the MAC address of VM are switched to corresponding VF

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
SR-IOV
R-IOV NIC communicates directly with device driver in guest OS
• Packets do not go to the host OS stack at all
• Packets switched at Layer-2 using VM virtual device’s MAC address
• Packets DMA’ed directly into guest VM memory, host OS not involved
• But, interrupts may still cause VM exit (interrupt can be for host too)
• Challenge: when guest device driver provides DMA buffers to VF, it
can only provide guest physical addresses (GPA) of the buffer
• NIC cannot access the DMA buffer memory using GPA alone
• SR-IOV capable NICs have an inbuilt MMU (IOMMU) to translate from
GPA to HPA

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Disk Management

SCHOOL OF COMPUTING JEIAN


JEIAN LOUELL
LOUELL NUEVA
NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Pooling

SCHOOL OF COMPUTING JEIAN


JEIAN LOUELL
LOUELL NUEVA
NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
What is Replication
It is a process of creating an exact copy ● Local replication
(replica) of data. ● Replicating data within the same array
or data center
● Remote replication
● Replicating data at remote site

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
SCHOOL OF COMPUTING JEIAN LOUELL NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
SCHOOL OF COMPUTING JEIAN LOUELL NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
SCHOOL OF COMPUTING JEIAN LOUELL NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
SCHOOL OF COMPUTING JEIAN LOUELL NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
SCHOOL OF COMPUTING JEIAN LOUELL NUEVA
© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved
Thank you!

SCHOOL OF COMPUTING JEIAN LOUELL NUEVA


© iACADEMY - Jeian Louell Nueva - 2021 - All Rights Reserved

You might also like