Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Mastering KVM Virtualization

You're reading from   Mastering KVM Virtualization Design expert data center virtualization solutions with the power of Linux KVM

Arrow left icon
Product type Paperback
Published in Oct 2020
Publisher Packt
ISBN-13 9781838828714
Length 686 pages
Edition 2nd Edition
Tools
Concepts
Arrow right icon
Authors (4):
Arrow left icon
Humble Devassy Chirammal Humble Devassy Chirammal
Author Profile Icon Humble Devassy Chirammal
Humble Devassy Chirammal
Prasad Mukhedkar Prasad Mukhedkar
Author Profile Icon Prasad Mukhedkar
Prasad Mukhedkar
Vedran Dakic Vedran Dakic
Author Profile Icon Vedran Dakic
Vedran Dakic
Anil Vettathu Anil Vettathu
Author Profile Icon Anil Vettathu
Anil Vettathu
Arrow right icon
View More author details
Toc

Table of Contents (22) Chapters Close

Preface 1. Section 1: KVM Virtualization Basics
2. Chapter 1: Understanding Linux Virtualization FREE CHAPTER 3. Chapter 2: KVM as a Virtualization Solution 4. Section 2: libvirt and ovirt for Virtual Machine Management
5. Chapter 3: Installing KVM Hypervisor, libvirt, and oVirt 6. Chapter 4: Libvirt Networking 7. Chapter 5: Libvirt Storage 8. Chapter 6: Virtual Display Devices and Protocols 9. Chapter 7: Virtual Machines: Installation, Configuration, and Life Cycle Management 10. Chapter 8: Creating and Modifying VM Disks, Templates, and Snapshots 11. Section 3: Automation, Customization, and Orchestration for KVM VMs
12. Chapter 9: Customizing a Virtual Machine with cloud-init 13. Chapter 10: Automated Windows Guest Deployment and Customization 14. Chapter 11: Ansible and Scripting for Orchestration and Automation 15. Section 4: Scalability, Monitoring, Performance Tuning, and Troubleshooting
16. Chapter 12: Scaling Out KVM with OpenStack 17. Chapter 13: Scaling out KVM with AWS 18. Chapter 14: Monitoring the KVM Virtualization Platform 19. Chapter 15: Performance Tuning and Optimization for KVM VMs 20. Chapter 16: Troubleshooting Guidelines for the KVM Platform 21. Other Books You May Enjoy

Open source virtualization projects

The following table is a list of open source virtualization projects in Linux:

Figure 1.3 – Open source virtualization projects in Linux

Figure 1.3 – Open source virtualization projects in Linux

In the upcoming sections, we will discuss Xen and KVM, which are the leading open source virtualization solutions in Linux.

Xen

Xen originated at the University of Cambridge as a research project. The first public release of Xen was in 2003. Later, the leader of this project at the University of Cambridge, Ian Pratt, co-founded a company called XenSource with Simon Crosby (also from the University of Cambridge). This company started to develop the project in an open source fashion. On 15 April 2013, the Xen project was moved to the Linux Foundation as a collaborative project. The Linux Foundation launched a new trademark for the Xen Project to differentiate the project from any commercial use of the older Xen trademark. More details about this can be found at https://xenproject.org/.

The Xen hypervisor has been ported to a number of processor families, such as Intel IA-32/64, x86_64, PowerPC, ARM, MIPS, and so on.

The core concept of Xen has four main building blocks:

  • Xen hypervisor: The integral part of Xen that handles intercommunication between the physical hardware and virtual machine(s). It handles all interrupts, times, CPU and memory requests, and hardware interaction.
  • Dom0: Xen's control domain, which controls a virtual machine's environment. The main part of it is called QEMU, a piece of software that emulates a regular computer system by doing binary translation to emulate a CPU.
  • Management utilities: Command-line utilities and GUI utilities that we use to manage the overall Xen environment.
  • Virtual machines (unprivileged domains, DomU): Guests that we're running on Xen.

As shown in the following diagram, Dom0 is a completely separate entity that controls the other virtual machines, while all the other are happily stacked next to each other using system resources provided by the hypervisor:

Figure 1.4 – Xen

Figure 1.4 – Xen

Some management tools that we're going to mention a bit later in this book are actually capable of working with Xen virtual machines as well. For example, the virsh command can be easily used to connect to and manage Xen hosts. On the other hand, oVirt was designed around KVM virtualization and that would definitely not be the preferred solution to manage your Xen-based environment.

KVM

KVM represents the latest generation of open source virtualization. The goal of the project was to create a modern hypervisor that builds on the experience of previous generations of technologies and leverages the modern hardware available today (VT-x, AMD-V, and so on).

KVM simply turns the Linux kernel into a hypervisor when you install the KVM kernel module. However, as the standard Linux kernel is the hypervisor, it benefits from the changes that were made to the standard kernel (memory support, scheduler, and so on). Optimizations for these Linux components, such as the scheduler in the 3.1 kernel, improvement to nested virtualization in 4.20+ kernels, new features for mitigation of Spectre attacks, support for AMD Secure Encrypted Virtualization, Intel iGPU passthrough in 4/5.x kernels, and so on benefit both the hypervisor (the host OS) and the Linux guest OSes. For I/O emulations, KVM uses a userland software, QEMU; this is a userland program that does hardware emulation.

QEMU emulates the processor and a long list of peripheral devices such as the disk, network, VGA, PCI, USB, serial/parallel ports, and so on to build a complete piece of virtual hardware that the guest OS can be installed on. This emulation is powered by KVM.

You have been reading a chapter from
Mastering KVM Virtualization - Second Edition
Published in: Oct 2020
Publisher: Packt
ISBN-13: 9781838828714
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime