====== KVM (Kernel-based Virtual Machine) ======
KVM (Kernel-based Virtual Machine) — программное решение, обеспечивающее виртуализацию в среде Linux на платформе x86, которая поддерживает аппаратную виртуализацию на базе Intel VT (Virtualization Technology) либо AMD SVM (Secure Virtual Machine).
Программное обеспечение KVM состоит из загружаемого модуля ядра (называемого ''kvm.ko''), предоставляющего базовый сервис виртуализации, процессорно-специфического загружаемого модуля ''kvm-amd.ko'' либо ''kvm-intel.ko'', и компонентов пользовательского режима (модифицированного [[qemu:qemu|QEMU]]). Все компоненты программного обеспечения KVM открыты. Компонент ядра, необходимый для работы KVM, включён в основную ветку ядра Linux начиная с версии 2.6.20 (февраль 2007 года). KVM был также портирован на [[freebsd:freebsd|FreeBSD]] как модуль ядра. Ведётся работа по включению модификаций, необходимых для работы с KVM, в основную ветку [[qemu:qemu|QEMU]].
Сам по себе KVM не выполняет эмуляции. Вместо этого программа, работающая в пространстве пользователя, использует интерфейс ''/dev/kvm'' для настройки адресного пространства гостя виртуальной машины, через него же эмулирует устройства ввода-вывода и видеоадаптер.
http://www.linux-kvm.org/
====== Установка ======
Debian 8:
apt-get install qemu-kvm \
libvirt-bin \
bridge-utils \
virtinst
Debian 9:
apt-get install qemu-kvm \
libvirt-clients \
libvirt-daemon-system \
virtinst \
bridge-utils
====== Настройка ======
FIXME
* qemu-kvm — гипервизор
* ibvirt-clients — набор библиотек [[#libvirt]] для взаимодействия с гипервизором
* libvirt-daemon-system — демон libvirtd
* bridge-utils — сетевые утилиты
* [[#virtinst]] — инструменты и библиотеки для управления виртуальными машинами
* virt-manager — [[virt-manager:virt-manager|Virtual Machine Manager]]
#!/bin/bash
path=/mnt/kvm
#chgrp libvirt-qemu $path
chown -R libvirt-qemu $path
chmod -R 600 $path
chgrp -R libvirt-qemu $path
chmod 6770 $path
===== MAC адреса =====
Используется диапазон адресов: ''52:54:00:xx:xx:xx''
===== Настройка сетевых интерфейсов =====
[[network_interfaces:network_interfaces|Настройка сетевых интерфейсов]]
FIXME
auto eno1
allow-hotplug eno1
iface eno1 inet manual
auto br1
iface br1 inet static
address 10.10.0.3
netmask 255.255.255.0
gateway 10.10.0.1
dns-search domain.ru
dns-nameservers 10.10.0.1
bridge_ports eno1
bridge_stp on
bridge_fd 0.0
===== libvirt =====
[[libvirt:libvirt|libvirt]]
''/etc/libvirt''
===== virtinst =====
FIXME
Список ОС:
virt-install --os-variant list
===== virsh =====
FIXME
Основные команды для работы с пулами
virsh pool-define-as --name kvm --type dir --target /home/kvm
virsh pool-list --all
virsh pool-start guest_images
virsh pool-autostart guest_images
Основные команды для работы с гостевым доменом:
|Список и статус доменов|virsh list
|
|Запуск|virsh start ИМЯ_ГОСТЕВОГО_ДОМЕНА
|
|Остановка|virsh destroy ИМЯ_ГОСТЕВОГО_ДОМЕНА
|
|Перезагрузка|virsh reboot ИМЯ_ГОСТЕВОГО_ДОМЕНА
|
|Удаление|virsh undefine ИМЯ_ГОСТЕВОГО_ДОМЕНА
|
====== libguestfs-tools ======
FIXME
guest disk image management system - tools
====== Драйверы VirtIO ======
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/
====== Ссылки ======
https://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine
https://ru.wikipedia.org/wiki/KVM
https://wiki.debian.org/ru/KVM
[[https://habrahabr.ru/post/260791/|Howto Qemu-kvm Debian 8]]
[[http://rus-linux.net/MyLDP/vm/kvm-v-debian.html|Работа с KVM в Debian или Ubuntu из командной строки]]
[[https://www.ibm.com/support/knowledgecenter/linuxonibm/liaat/liaatbestpractices_pdf.pdf|Best practices for KVM - IBM]]
[[https://habr.com/post/260791/|Howto Qemu-kvm Debian 8]]
[[https://kamaok.org.ua/?p=187|Установка и настройка KVM на Debian]]
[[https://www.hiroom2.com/2017/06/26/debian-9-install-kvm/|Debian 9: Install KVM for virtualization]]
[[https://khashtamov.com/ru/kvm-setup-server/|Используем KVM для создания виртуальных машин на сервере]]
**[[https://blog.bissquit.com/unix/debian/ustanovka-gipervizora-kvm/|blog.bissquit.com : Установка гипервизора KVM]]**
**[[https://blog.bissquit.com/unix/debian/ustanovka-windows-na-kvm/|blog.bissquit.com : Установка Windows на KVM ]]**
[[https://rajudev.gitlab.io/markdown/2017/10/24/creating-a-debian-kvm-machine-using-virt-manager.html|Creating a Debian KVM machine using virt-manager]]
[[https://www.server-world.info/en/note?os=Debian_9&p=kvm&f=2| Server World — Debian 9 Stretch : KVM : Create Virtual Machine#1]]
[[https://askubuntu.com/questions/581771/kvm-create-a-virtual-machine-with-2-bridges-interfaces|KVM - Create a virtual machine with 2 bridges interfaces]]
[[https://ivirt-it.ru/raw-qcow2-lvm/|iVirt-it.ru - RAW, QCOW2, LVM — что выбрать?]]
[[https://serveradmin.ru/kvm-backup/|Live (горячий) бэкап виртуальных машин KVM]]
**[[https://blog.famzah.net/2010/01/09/kvm-qemu-virtio-storage-and-network-drivers-for-32-bit64-bit-windows-7-windows-vista-windows-xp-and-windows-2000/|KVM-Qemu Virtio storage and network drivers for 32-bit/64-bit Windows 7, Windows Vista, Windows XP and Windows 2000]]**
[[https://wiki.libvirt.org/page/SSHPolicyKitSetup|SSHPolicyKitSetup]]
[[https://www.poftut.com/use-virt-manager-libvirt-normal-user-without-root-privileges-without-asking-password/|How To Use Virt-Manager, Libvirt With Normal User Without Root Privileges and Without Asking Password]]
{{tag> Virtualization}}