Установка/Настройка гипервизора KVM на Ubuntu Server
Вся установка проводилась на ubuntu-server 14.04
Для проверки аппаратной поддержки виртуализации
root@v6:/root# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
Устанавливаем KVM на ubuntu-server
root@v6:/root# aptitude install kvm libvirt-bin virtinst bridge-utils qemu-kvm
virtinst — нужна для создания виртуальных машин.
Настраиваем bridge (сетевой мост) для подключения виртуальных машин к нашей сети
Редактируем /etc/network/interfaces
Предположим eth0 это основной интерфейс сети, то наш файл будет выглядеть примерно так.
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 auto br0 iface br0 inet static bridge_ports eth0 bridge_stp off bridge_maxwait 0 bridge_fd 0 address 172.16.0.73 netmask 255.255.255.0 network 172.16.0.0 broadcast 172.16.0.255 gateway 172.16.0.1 dns-nameservers 8.8.8.8 8.8.4.4
Как добавить интерфейс в виртуальную машину на гипервизоре KVM
Это минимальная настройка гипервизора используя bridge. Для добавление к виртуальной машины необходимо добавить в XML файл следующие строки
<interface type='bridge'> <mac address='52:54:00:1c:a5:71'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface>
или при установке виртуальной машины через virt-install … ––bridge=bridge:br0
При необходимости в виртуальные машины раздавать различные vlan необходимо использовать Open vSwitch. Пример настройки сетевых интерфейсов для виртуальных машин.
Управление виртуальными машинами
кратко о virsh
virsh help | Краткая справка. |
virsh list ––all | Список всех виртуальных машин |
virsh create | Создать виртуальную машину из файла конфигурации XML и ее запуск |
virsh define | Определяет файл конфигурации XML для заданной виртуальной машины |
virsh start virt_name | Запустить неактивную виртуальную машину |
virsh shutdown virt_name | Корректно завершить работу виртуальной машины |
virsh destroy virt_name | Принудительно остановить работу виртуальной машины |
virsh suspend virt_name | Приостановить работу виртуальной машины |
virsh resume virt_name | Возобновить работу приостановленной виртуальной машины |
virsh undefine virt_name | Удалить все файлы виртуальной машины |
virsh migrate virt_name | Перенос виртуальной машины на другой гипервизор |