Що таке віртуалізація kvm

Сьогодні складно уявити світ без комп`ютеризованих пристроїв. Років так 20 тому майже всі побутові прилади були електро-механічні, про використання комп`ютерних схем повсюдно не було навіть і мови. Найперші комп`ютери займали значні обсяги простору, і могли відносно не багато. Комп`ютерно-обчислювальні комплекси за останнім часом пройшли чималий шлях розвитку. Хоча, принципово комп`ютери нічим не змінилися, але обчислювальні потужності стрімко зросли. Наявність комп`ютера в простій родині тепер не є чимось особливим.

В даний момент, найчастіше велика кількість комп`ютерної техніки в приміщеннях може доставляти значно незручностей. З цієї причини стали з`являтися централізовані системи. Але централізовані системи часто не можуть вирішити тих проблем, які вирішує мережу з комп`ютерів. З цієї причини і була запропонована концепція віртуалізації, коли один центральний комп`ютер виконує роль мережі комп`ютерів.

KVM

Загальні відомості про віртуалізації

За своєю суттю, все ОС це в общем-то і так деяка віртуальне середовище, яка надається розробнику ПО, як засіб реалізації кінцевих завдань. Вже давно минув той час, коли програми писалися конкретно під апаратну частину комп`ютера за коштами апаратних кодів і запитів. Сьогодні ж, будь-який додаток - це в першу чергу додаток, написане на деякому API, який знаходиться під управлінням ОС. Завдання ж ОС - надати даними API безпосередньо доступ до апаратних ресурсів.

Власне видів віртуалізації існує декілька:

  • Програмна віртуалізація;
  • Апаратна віртуалізація;
  • Віртуалізація рівня операційної системи.

Віртуалізація в свою чергу буває повної і часткової.

програмна віртуалізація - вид віртуалізації, який задіює різні бібліотеки ОС, транслюючи виклики віртуальної машини в виклики ОС. (DOSBox, Virtualbox, VirtualPC)

апаратна віртуалізація - такий вид, який передбачає спеціалізовану інструкцію апаратної частини, а конкретно інструкцій процесора. Дозволяє виконувати запити в обхід гостьовий ОС, і виконувати прямо на апаратному забезпеченні. (Віртуалізація KVM, віртуалізація XEN, Parallels, VMware, Virtualbox)




Віртуалізація рівня операційної системи - віртуалізація тільки частини платформи, без повної віртуалізації апаратної частини. Має на увазі роботи декількох екземплярів середовища ОС. (Docker, LXC)

Дана стаття буде розглядати Апаратну віртуалізацію, а конкретно віртуалізацію KVM.

компоненти ВМ

Схема 1. - Взаємодія компонентів віртуальної машини з апаратною частиною

Особливості віртуалізації для ядра Linux

Для виконання прямих апаратних запитів в ОС повинна бути бібліотека, яка направляла б ці запити апаратної частини безпосередньо. На платформах бази Linux довгий час ніякої вбудованої системи віртуалізації (вбудованого гипервизора), просто не існувало. Кожен виробник ПО для віртуалізації, який підтримувало технологію апаратної віртуалізації, змушені були створювати власні модулі для ядра Linux (vboxdrv в Virtualbox, vmware-service в VMWare і ін.) Природно, це не могло тривати вічно, і компанія Qumranet, Inc, викуплених потім Radhat створила асоціацію Open Virtualization Alliance, яка була визнана вирішити проблему відсутності базового гипервизора для ядра Linux. Так і був створений гипервизор KVM або Kernel-based Virtual Machine.




Гипервизор KVM представляє з себе завантажуваний модуль ядра Linux, який призначений для забезпечення віртуалізації на платформі Linux x86. Сам модуль містить компонент власне віртуалізації (kvm.ko), і процесорної-специфічний завантаження модуль kvm-amd.ko або kvm-intel.ko.

Необхідною умовою для використання KVM є підтримка інструкцій віртуалізації - Intel VT або AMD, і ядро ​​Linux версії 2.6.20 і вище. Існує також порт KVM під Free-BSD. Для виклику KVM традиційно використовується QEMU, але також ведуться спроби додати підтримку KVM в Virtualbox.

Сам по собі KVM не виконує емуляції. Замість цього програма, що працює в просторі користувача, використовує інтерфейс / Dev / kvm для настройки адресного простору гостя віртуальної машини, через нього ж емулює пристрої введення-виведення і відеоадаптер.

KVM дозволяє віртуальним машинам використовувати немодифіковані образи дисків QEMU, VMware та інших, що містять операційні системи. Кожна віртуальна машина має своє власне віртуальне апаратне забезпечення: мережеві карти, диск, відеокарту і інші пристрої.

Використання

Для використання даного гипервизора існує безліч реалізацій. Деякі являють собою цілі спеціалізовані бібліотеки, інші мають вигляд простих графічних додатків.

Для наочності розглядається віртуалізація KVM на базі бібліотеки virt-manager.

Дана бібліотека Ви легко зможете зателефонувати різних гіпервізора, надаючи зручний інтерфейс для автоматизації процесу віртуалізації. Крім того, бібліотека має можливість роботи з мережевою інфраструктурою, що іноді важливо, при побудові клієнт-серверних робочих місць.

libvirt

Схема 2. - Взаємодія компонентів libvirt

QEMU дозволяє створити фрейм для виклику гипервизора на клієнтській системі. Дана програма налаштовується аргументами виклику командного рядка, є досить легкою і простий.

Існують крім того кілька графічних оболонок, таких як Gnome-Boxes.

висновок

Віртуалізація - невід`ємна частина сучасних корпоративних систем, вона дозволяє заощадити колосальні грошові та енергетичні ресурси. Розвиток технологій віртуалізації є пріоритетним напрямком багатьох організацій. Розвиваються такі технології як як VGAPassthrough (технологія "проброса" відеокарти хост-пристрої в віртуальну машину) і PCIPassthrough ( "кидок" PCI пристрої).

Поділися в соціальних мережах:

Схожі
Режим continuum і віддалений робочий стілРежим continuum і віддалений робочий стіл
Що таке вхідний / вихідний трафік?Що таке вхідний / вихідний трафік?
Що таке biosЩо таке bios
Комп`ютер з вашим характером: конфигуратор пк від compday.ru - швидка модернізація комп`ютерної…Комп`ютер з вашим характером: конфигуратор пк від compday.ru - швидка модернізація комп`ютерної…
Ремонт комп`ютерів і ноутбуків у санкт-петербурзіРемонт комп`ютерів і ноутбуків у санкт-петербурзі
Історія комп`ютерної клавіатуриІсторія комп`ютерної клавіатури
Чи є життя в світі без пкЧи є життя в світі без пк
Як з`єднати два комп`ютери по мережі?Як з`єднати два комп`ютери по мережі?
Як авторизувати комп`ютер в itunesЯк авторизувати комп`ютер в itunes
Потреб росіян в сучасних технічних пристрояхПотреб росіян в сучасних технічних пристроях
» » Що таке віртуалізація kvm