KVM (или Kernel-based Virtual Machine)
KVM (или Kernel-based Virtual Machine) — это программное решение, поддерживает аппаратную виртуализацию на базе Intel VT (Virtualization Technology) либо AMD SVM (Secure Virtual Machine).
Всё что будет написано ниже проверено и 100% работает на Debian 7.Х
Проверить поддержку виртуализации процессором можно так:
ХОСТ система:
— OS: Debian 7.4 (Wheezy)
— IP: 192.168.0.2
Установлю необходимые пакеты:
PPS подключиться к виртуальной машине можно с помощью любого VNC-клиента, по адресу 192.168.0.2, порт — 60606, пароль — mypass
Всё что будет написано ниже проверено и 100% работает на Debian 7.Х
Проверить поддержку виртуализации процессором можно так:
cat /proc/cpuinfo | egrep '(vmx|svm)'если вывод не пустой, можно смело продолжать.
ХОСТ система:
— OS: Debian 7.4 (Wheezy)
— IP: 192.168.0.2
Установлю необходимые пакеты:
aptitude install qemu-kvm bridge-utils libvirt-bin virtinstвключаю возможность форвардинга и проксирования arp запросов
echo "net.ipv4.conf.all.forwarding=1" >> /etc/sysctl.conf echo "net.ipv4.conf.all.proxy_arp=1" >> /etc/sysctl.confприменяю настройки:
sysctl -pНастраиваю сеть (bridge)
nano /etc/network/interfacesБыло так:
root@debian:~# cat /etc/network/interfaces |grep -v \# auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 auto eth0 iface eth0 inet static address 192.168.0.2 netmask 255.255.255.0Стало так:
root@kvm01:~# cat /etc/network/interfaces |grep -v \# auto lo iface lo inet loopback auto eth0 iface eth0 inet manual auto kvmbr0 iface kvmbr0 inet static address 192.168.0.2 netmask 255.255.255.0 bridge_ports eth0Обновляю настройки сети:
root@kvm01:~# brctl show bridge name bridge id STP enabled interfaces root@kvm01:~# /etc/init.d/networking restart Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces ... (warning). Reconfiguring network interfaces... Waiting for kvmbr0 to get ready (MAXWAIT is 32 seconds). done. root@kvm01:~# brctl show bridge name bridge id STP enabled interfaces kvmbr0 8000.002590a06d6e no eth0Создам ВМ для atslog-2.1.1:
- HDD виртуальной машины будет здесь /mnt/disk4tb02/kvm.data/
- Гостевая ОС: Denbian 7.4.0
cd /mnt/disk4tb02/kvm.data/iso wget http://cdimage.debian.org/debian-cd/7.4.0/amd64/iso-cd/debian-7.4.0-amd64-netinst.isoсоздаю HDD
cd /mnt/disk4tb02/kvm.data/ dd if=/dev/zero of=/mnt/disk4tb02/kvm.data/vm04_atslog_debian740.img bs=1024k count=10000 10000+0 записей считано 10000+0 записей написано скопировано 10485760000 байт (10 GB), 55,7215 c, 188 MB/cсоздаю ВМ
virt-install -n vm04_atslog_debian740 \ -r 512 \ --disk path=/mnt/disk4tb02/kvm.data/vm04_atslog_debian740.img,size=10 \ --cdrom=/mnt/disk4tb02/kvm.data/iso/debian-7.4.0-amd64-netinst.iso \ --serial dev,path=/dev/ttyS0 \ --accelerate --os-type=linux --os-variant=debianwheezy -w bridge:kvmbr0 \ --autostart \ -v \ --graphics vnc,listen=192.168.0.2,port=60606,password=mypassНемного о написаном
- -n vm04_atslog_debian740 — хост имя вирт машины
- -r 512 — выделяемый объем ОЗУ
- —disk /mnt/disk4tb02/kvm.data/vm04_atslog_debian740.img — HDD для виртуалки
- ,size 10 — объем этого диска в гигабайтах
- —cdrom /mnt/disk4tb02/kvm.data/iso/debian-7.4.0-amd64-netinst.iso — диск подключаемый как виртуальный cdrom
- —serial dev,path=/dev/ttyS0 — —serial dev,path=HOSTPATH. Host device. For serial devices, this could be /dev/ttyS0. For parallel devices, this could be /dev/parport0
PPS подключиться к виртуальной машине можно с помощью любого VNC-клиента, по адресу 192.168.0.2, порт — 60606, пароль — mypass
[…] всё что будет написано ниже, 100% работает на Debian 7.4., в виртуальной машине. Исходные данные (которые не по-умолчанию): пароль для […]
Добрый день,
интересует один вопрос по установки KVM во многих стаей указывается разные команды по установки KVM «install kvm bridge-utils libvirt-bin virtinst» или как указано в вашей стать «install qemu-kvm bridge-utils libvirt-bin virtinst» можете разъяснить в чем разница qemu-kvm и kvm
kvm — Сам по себе KVM не выполняет эмуляции. Вместо этого программа, работающая в пространстве пользователя, использует интерфейс /dev/kvm для настройки адресного пространства гостя виртуальной машины, через него же эмулирует устройства ввода-вывода и видеоадаптер. (WiKi)
Программное обеспечение KVM состоит из загружаемого модуля ядра (называемого kvm.ko), предоставляющего базовый сервис виртуализации, процессорно-специфического загружаемого модуля kvm-amd.ko либо kvm-intel.ko, и компонентов пользовательского режима модифицированного QEMU -> qemu-kvm
Спасибо
Добрый день,
А возможно ли подключить к ВМ физический диск с уже имеющейся файловой системой и файлами на ней, а не виртуальный диск?
да, как практически любое физическое устройство тем или иным способом.
с диском всё просто. например так —disk path=/dev/sdf1
или снять образ dd
Спасибо
Добрый день, хотел спросить можно ли установить всё это в домашних условиях, но когда поставиться пк в дц, то изменить настройки. И можно по подробнее за счёт создание нескольких виртуальных машин. Заранее благодарен
можно ли установить всё это в домашних условиях, но когда поставиться пк в дц, то изменить настройки — конечно можно. Главное что-бы был доступ к хост-машине
по подробнее на счёт создание нескольких виртуальных машин — не совсем понял суть вопроса…
5 виртуальных машин можно создать так:
/kvm01.data/vhdd/ - здесь лежат HDD по 10Гб
/kvm01.data/iso/debian-8.2.0-amd64-netinst.iso - установочный диск
192.168.0.2 - адрес хост-машины
6060$i - порт VNC
переменная s - количество создаваемых машин (5)