Ano ang KVM?

What Is Kvm



Ang virtualization ay tumutukoy sa paglikha ng isang simulate na mapagkukunan ng computing na gumagaya sa pag-uugali ng kaukulang tunay o pisikal na mapagkukunan. Maraming uri ng mapagkukunan ay maaaring ma-virtualize, mula sa software hanggang sa mga indibidwal na aparato ng hardware upang makumpleto ang mga platform ng hardware. Nakatuon ang post na ito sa mga virtual machine na binubuo ng mga aparato tulad ng CPU, memorya, network card, disk, graphics adapter, at operating system. Ang software na lumilikha at nagpapatakbo ng mga virtual machine ay tinatawag na isang hypervisor. Sa ibaba, tatalakayin namin ang mga tampok ng isang hypervisor na pinangalanan KVM .

Mga pakinabang ng virtualization

Noong nakaraan, ang pagiging homogenous ay ang modus operandi sa mga data center, development house, at sa bahay. Sa praktikal, ang lahat ng mga machine ay tatakbo sa parehong paglabas ng isang solong operating system, maging ito man ay Linux, Windows, o FreeBSD. Nagbago ang oras.







Ngayon, inaasahan namin ang iba't ibang mga OS tulad ng Linux at Windows, at kahit na iba't ibang mga bersyon ng isang OS (hal., Windows XP at 10) na magkakasamang mahahanap sa parehong kapaligiran sa computer. Nang walang mga virtual machine, maraming mga pisikal na machine ang dapat i-deploy at panatilihin, upang mapatakbo ang mga application sa maraming mga operating platform. Pinapagana ng virtualization ang pagpapatakbo ng maraming mga virtual machine, bawat isa ay potensyal na may iba't ibang OS, sa isang solong pisikal na makina.



Ang mga kalamangan ng mga virtual machine kaysa sa mga pisikal na makina ay kinabibilangan ng:



  1. Mas mahusay na paggamit ng mga mapagkukunan ng computer.
    Patuloy na nauuso ang presyo ng hardware habang patuloy na tataas ang kanilang lakas sa pagproseso. Sa ilalim ng katotohanang ito, maraming malalakas na makapangyarihang machine ngayon ang may posibilidad na maging under-utilised, na sinusukat ng mga idle CPU cycle, hindi nagamit na memorya, atbp. Ang pagsasama-sama ng mga virtual machine sa mas kaunting mga pisikal na makina ay nagreresulta sa mas kaunting mga mapagkukunang pisikal at samakatuwid ay mas mahusay.
  1. Pinagbuti ang I.T. kakayahang tumugon at pagiging produktibo.
    Ang pagbibigay ng bagong pisikal na hardware ay nangangailangan ng mahabang panahon ng paghihintay ng acquisition na sinusundan ng isang mahabang panahon ng pag-install at paglawak pagkatapos ng pagdating. Sa kaibahan, ang pagbibigay ng mga virtual machine ay maaaring awtomatiko at magagamit sa ilang minuto kaysa sa araw o kahit na mga linggo na kinakailangan ng tradisyunal na pagkuha ng makina.
  1. Makatipid ng gastos.
    Ang mga malalaking data center ay makatipid ng pera dahil sa mas mababang gastos sa pagpapatakbo. Ang pag-save ay dumating sa anyo ng nabawasan na mga singil sa enerhiya bilang isang resulta ng mas mababang paglamig at mga kinakailangan sa kuryente.

Ipinakikilala ang KVM

Ang Virtual Machine na nakabatay sa Kernel, o KVM sa madaling sabi, ay isang libre at open-source na solusyon sa hypervisor. Nakikipagkumpitensya sa isang mature na industriya na may mga alternatibong bukas na mapagkukunan tulad ng Xen , VirtualBox , pati na rin mga pagmamay-ari na produkto tulad ng VMware vSphere , Citrix XenServer , Ang Microsoft Hyper-V .





Bago ang 2005, ang mga solusyon sa hypervisor sa oras, tulad ng Xen at VirtualBox, ay nakabatay sa software. Ang arkitektura ng x86 ay walang probisyon para sa pagsuporta sa virtualization. Noong 2005, ang pagpapakilala ng mga itinakda ng pagtuturo ng mga extension ng Intel VT at AMD-V permanenteng binago ang virtualization landscape. Inilabas ng KVM ang unang bersyon nito noong 2006, at isa sa mga unang hypervisor na sinamantala ang bagong probisyon ng hardware upang ma-optimize ang pagganap ng virtualization.

Maaari mong mai-install ang KVM sa anumang 32-bit o 64-bit x86 na computer, ang 'host machine' sa hypervisory lingo, na sumusuporta sa Intel VT o AMD-V extension. Ngayon, karaniwang sinusuportahan ng mga modernong hypervisor ang hybrid virtualization: tinutulungan ng hardware kung posible at isang failover sa software-lamang para sa mas matandang mga chipset.



Ang KVM ay ikinategorya bilang isang uri-2 hypervisor, ibig sabihin ay tumatakbo ito sa loob ng isang host operating system. Tulad ng ipinahihiwatig ng pangalan nito, ang KVM ay batay sa kernel, at upang mas tumpak, ito ang Linux kernel. Kaya, hindi nakakagulat na ang KVM ay sumusuporta lamang sa Linux bilang host OS nito. (Kasunod na na-port ang KVM sa FreeBSD.) Kung nais mo ang isang open-source na multi-platform na uri-2 na hypervisor, ang VirtualBox ay isang mahusay na kandidato. Maaaring tumakbo ang VirtualBox nang natural sa Windows, Linux, Mac OS X, at Solaris.

Ang Xen, sa kaibahan, ay isang uri-1 hypervisor, na kilala rin bilang hubad na metal hypervisor, na direktang tumatakbo bilang firmware sa host machine. Ang bentahe ng uri-1 kaysa sa uri-2 ay ang kahusayan na nakuha dahil sa hypervisor na tumatakbo nang direkta sa pinagbabatayan ng hardware. Ang kawalan ay ang isang type-1 hypervisor na maaaring hindi suportahan ng malawak na hanay ng mga host device bilang host operating system ng isang type-2 hypervisor.

Habang ang mga hypervisor ay maaaring magkakaiba sa kung nangangailangan sila ng host OS at alin sa mga ito, halos magkatulad sila tungkol sa kung aling mga panauhing OS na sinusuportahan nila, ibig sabihin, ang OS na maaaring patakbuhin ng isang virtual machine. Sinusuportahan ng KVM ang virtualization ng mga sumusunod na OS na panauhin:

  • Ang mga pamamahagi ng Linux kabilang ang Debian, Ubuntu, Centos, Fedora, RedHat Enterprise Linux
  • Ang BSD tulad ng OpenBSD, FreeBSD, NetBSD
  • Solaris
  • Windows

Nagagawa ng KVM na magpatakbo ng hindi nabago na mga imahe ng bisita ng OS. Ang tampok na ito ay kilala bilang buong virtualization, taliwas sa para-virtualization kung saan ang panauhing OS ay binago para sa espesyal na paghawak ng mga pagpapatakbo na higit na mas mahirap patakbuhin sa virtual machine kaysa sa host machine.


Paano gumagana ang KVM

Ang KVM ay binubuo ng 2 mga bahagi ng teknolohiya: kernel at space-user. Ang sangkap ng kernel ay binubuo ng 2 naa-load na mga module ng kernel: kvm.ko, at alinman sa kvm-intel.ko o kvm-amd.ko. Nagbibigay ang kvm.ko module ng pangunahing pagproseso ng virtualization-independiyenteng virtualization. Ang mga kvm-intel.ko at kvm-amd.ko modules ay tumutugma sa mga module na tukoy sa Intel at AMD na tukoy. Ang mga modyul na ito ay isinama sa kernel ng Linux bilang ng kernel bersyon 2.6.20.

Ang masikip na pagsasama ng KVM sa Linux kernel ay may mga kalamangan. Ang KVM ay nakapagtalaga sa Linux upang gawin ang gawain ng pagngalit ng system, habang nakatuon ito sa paghawak ng mga bagong tagubilin sa virtualization na nakalantad ng hardware. Nakikinabang din ang KVM sa pamamagitan ng pagmamana ng anumang patuloy na pagpapabuti ng system mula sa upstream sa mas malaking pamayanan ng Linux.

Mahalaga na ang mga module ng kernel ay, hindi nila ginaya ang hardware ng virtual machine na pinapatakbo ng panauhing OS. Ang trabahong iyon ay kabilang sa puwang ng gumagamit. Gumagamit ang KVM QEMU , na tumatakbo sa puwang ng gumagamit, upang maitayo ang mga virtual machine na nakikipag-ugnay sa mga panauhing OS. Ang bawat virtual machine ay isang regular na proseso ng Linux. Ang isang malaking pakinabang ay maaari mong gamitin ang pamilyar na mga utos ng Linux tulad ng tuktok at pumatay upang subaybayan at pamahalaan ang mga virtual machine.


Buod at konklusyon

Ang KVM ay isang mahusay na solusyon na bukas na mapagkukunan para sa buong virtualization sa platform ng host ng Linux. Matapos ang 10+ taon ng aktibong pag-unlad, ang KVM ay naging de facto standard na tool sa antas ng virtualization sa antas ng makina sa maraming pamamahagi ng Linux.