Depth practice KVM (chapters 1-8)

The first chapter Enterprise Virtualization with KVM selection introduction

1.1 KVM Past and Present

  1. The evolution of virtualization technology

    Software simulation -> virtualization layer Translation -> container virtualization    

    The virtualization layer can be translated into:

      (1) translation software to capture that whole virtualization software

      (2) the transformation of the virtual machine system kernel plus virtualization layer translation, that is paravirtualized

      (3) hardware support for virtualization layer translation, that is, full hardware support for virtualization

    • Simulation software: completely simulate CPU, chipset, disks, network cards and other hardware, computer software, as shown below:

       

           Software simulation features: can simulate any hardware, but very inefficient, generally used only for research and testing scenarios.

      • The virtualization layer translation technology:

         

        (1) Full virtualization software programs: virtualization engine, the virtual machine instruction to capture and process. Of course, also a physical machine instruction is divided regions. (low efficiency)

        (2) paravirtualization scheme: the operating system kernel virtual machine to transform the virtual machine to make changes to their own special set of instructions, and then work with the virtualization layer. (General efficiency)

         (3) hardware support full virtualization technical solution: a CPU instruction transformation, i.e. VT-x or AMD-v, hardware I / 0 communications solutions, i.e., VT-d,
        the network communications hardware solutions, namely VT-c.

         

      • Container virtualization technology: Based CGroups, Namespace technologies such as process isolation, each process is like a separate virtual machine, as have isolated themselves out of resources, also has its own root directory, the number separate process, isolated memory space.

  2. KVM architecture

     

 

       As shown in FIG:

        KVM is a kernel module, the user space provided by Qemu analog hardware to the virtual machine, a virtual machine is an ordinary linux process, through the management of this process, to complete management of virtual machines.

        Because of the cumbersome process management, RedHat has released an open-source tool Libvirt, there is a set of API and command line tools. Most management platform is through libvirt come to KVM virtual machine management, such as openstack, cloudstack, opennebula and so on.

  

  3. QEMU given KVM

    QEMU is an open source project, is actually a hardware simulator can simulate multi-CPU, network cards, IDE devices, graphics cards, sound cards, USB devices, sound cards, Bluetooth devices and so on. Also built-in DHCP, DNS, SMB, TFTP server. The disadvantage is that pure software simulation, very slow.

    KVM is a kernel module, no user-space management tools, KVM virtual machine can use QEMU management tools to manage, as
  QEMU accelerator to improve the performance of virtual machines.

 

  4. Libvirt and KVM

    Libvirt is an open source virtualization management tool that provides a set of API's lib library that supports editing mainstream languages such as C \ Python \ Ruby, libvirtd provide services, provides a command-line utility virsh. Manage the virtual machines, such as virtual machine creation, startup, shutdown, pause, resume, migration, destruction,
  and a variety of equipment virtual machine network card, hard disk, CPU, memory and other hot-add. Also support the management of the remote host.

    Libvirt will manage the virtual machine is divided into the following areas:

    First, the management of storage pool resources to support the local file system directory, raw device, LVM, nfs, iscsi etc., to support qcow2, vmdk, raw format on the virtual machine disk format.

    Second, network resource management, support for Linux bridge, vlan, multi-NIC teaming management, a relatively new version also supports open vswitch. Nat also supports routing and
  network mode, you can pass through the firewall allows the virtual machine to communicate networking channels and external network through the host.

 

1.2 KVM compared with commonly used enterprise-class virtualization product

  Enterprise-class virtualization product has four models: vmware, hyperv, xen, kvm

name product Features
vmware

Individual users win platform: vmware workstation (free)

Individual user Apple platform: vmware Fusion

Enterprise: VMware ESXI (surcharge)

Management Suite: VMware vSphere

Product line is very comprehensive, product maturity, stability, compatibility is not bad, not only virtualization solution

In IaaS \ SaaS \ PaaS layer has its own product, network, storage-related aspects

solution

hyperv

System environment: Windows Server2012R2

Cluster Tool: SCVMM

Technical requirements: windows domain, windows server clusters

Fee-based products

Development of faster, better performance
xen

Free Open Source

Management Tools: xenserver

Launched a long time, compatibility and stability are good
sq

Free Open Source

openstack

No historical baggage, excellent performance

 

Guess you like

Origin www.cnblogs.com/flytor/p/11587954.html