Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Virtualisation

fjavierm
February 18, 2021

 Virtualisation

The second presentation of the series "Introduction to Cloud Computing and Technologies". Explanation about virtualisation tools.

fjavierm

February 18, 2021
Tweet

More Decks by fjavierm

Other Decks in Technology

Transcript

  1. virtualisation • Virtualisation creates a simulated, or virtual, computing environment

    as opposed to a physical environment. • Virtualisation often includes computer-generated versions of hardware, operating systems, storage devices and more. • A VM represents an isolated collection of emulated resources, behaving like an actual physical system. • Virtual Machines are created with the help of a hypervisor, that runs on a host machine. ◦ The hypervisor is a piece of software capable of creating multiple isolated virtual operating environments, each composed of emulated resources.
  2. Hypervisor Types Hypervisors are classified into two main categories: •

    Type-1 hypervisor (native or bare-metal) runs directly on top of a physical host machine's hardware, without the need for a host OS. Typically, they are found in enterprise settings. Examples of type-1 hypervisors: ◦ IBM z/VM ◦ Microsoft Hyper-V ◦ AWS Nitro • Type-2 hypervisor (hosted) runs on top of the host's OS. Typically, they are for end-users, but they may be found in enterprise settings as well. Examples of type-2 hypervisors: ◦ VirtualBox ◦ VMware Player ◦ Parallels Desktop for Mac. And then there are the exceptions - hypervisors matching both categories. They are Linux kernel modules that act as both. Examples are: • KVM • bhyve
  3. KVM • KVM (Kernel-based Virtual Machine) is a full virtualization

    solution for Linux. • Contains virtualization extensions (Intel VT or AMD-V). • KVM is a loadable virtualization module of the Linux kernel and it converts the kernel into a hypervisor capable of managing guest Virtual Machines. • Originally designed for the x86 hardware, but ported: ◦ FreeBSD ◦ S/390 ◦ PowerPC ◦ IA-64 ◦ ARM
  4. KVM Benefits • It is an open source solution, and,

    as such, free to customize. • Using KVM is efficient from a financial perspective as well, due to the lower costs associated with it. • It provides efficient hardware-assisted virtualization for an array of guest OSes, such as Linux, BSD, Solaris, Windows, Mac OS, ReactOS, and Haiku. • It provides para-virtualization of Ethernet cards, disk I/O controllers, and graphical interfaces for a set of guest OSes, such as Linux, OpenBSD, FreeBSD, and Windows. • It is highly scalable. • KVM employs advanced security features, utilizing SELinux. It provides MAC (Mandatory Access Control) security between Virtual Machines. KVM has received awards for meeting common government and military security standards and for allowing open virtualization for homeland security projects.
  5. VirtualBox • VirtualBox is a powerful x86 and AMD64/Intel64 virtualization

    product. • Open Source Software under the terms of the GNU General Public License (GPL) version 2. • It is an easy-to-use multi-platform type-2 hypervisor. • Long list of supported guest operating systems. I.e., Windows 10, Linux (2.4, 2.6, 3.x and 4.x), Solaris and OpenSolaris, OS/2, and OpenBSD. • VirtualBox is being actively developed with frequent releases. • VirtualBox is a community effort backed by a dedicated company.
  6. VirtualBox Benefits • It is an open source solution.It is

    free to use. • It runs on Linux, Windows, Mac OS X, and Solaris. • It provides two virtualization choices: software-based virtualization and hardware-assisted virtualization. • It is an easy-to-use multi-platform type-2 hypervisor.It provides the ability to run virtualized applications side-by-side with normal desktop applications.It provides teleportation - live migration.
  7. Vagrant • Vagrant - the command line utility for managing

    the lifecycle of virtual machines. • Using Virtual Machines in a development environment has numerous benefits: ◦ Reproducible environment ◦ Management of multiple projects, each in its isolated and restricted environment ◦ Sharing the environment with other teammates ◦ Keeping the development and deployment environments in sync ◦ Running consistently the same VM on different OSes leveraging hypervisors such as VirtualBox or KVM. • Vagrant is a cross-platform tool, as it can be installed on Linux, Mac OS X, and Windows. • Support for multiple plugins to extend support for custom providers, provisioners, commands, and hosts. • Vagrant has recently added support for Docker
  8. Vagrant Benefits • It automates the setup of one or

    more VMs, which results in saved time, increased productivity, and lower operational costs. • It introduces consistency in infrastructure provisioning through Vagrantfile. • It is a flexible cross-platform tool.It provides support for Docker, thus helping manage Docker containers in addition to VMs. • It is easy to install and to configure.It is very useful in multi-developer teams.
  9. Resources • This presentation has been created based on the

    edX course “Introduction to Cloud Infrastructure Technologies”. ◦ https://www.edx.org/course/introduction-to-cloud-infrastructure-technologies