Установка и настройка KVM в Debian Squeeze

Внимание! Чтобы после установки не было путаницы с правилами iptables, их лучше настроить заранее.

Устанавливаем необходимые пакеты:

1
aptitude install kvm libvirt-bin virtinst

Настраиваем сеть:

/etc/network/interfaces
1
2
3
4
5
6
7
8
9
10
11
12
iface eth0 inet manual

auto br0
iface br0 inet static
  address 172.16.0.100
  netmask 255.255.255.0
  network 172.16.0.0
  broadcast 172.16.0.255
  gateway 172.16.0.1
  bridge_ports eth0
  bridge_stp on
  bridge_maxwait 0
/etc/sysctl.conf
1
2
3
4
5
net.bridge.bridge-nf-call-ip6tables=0
net.bridge.bridge-nf-call-iptables=0
net.bridge.bridge-nf-call-arptables=0
net.ipv4.ip_forward=1
vm.swappiness=0
1
sysctl -p /etc/sysctl.conf

Перезагружаем хост.

Далее:

1
2
virsh net-autostart default
virsh net-start default

Вывод команды brctl show должен быть примерно таким:

1
2
3
bridge name     bridge id               STP enabled     interfaces
br0             8000.001cc029d65c       yes             eth0
virbr0          8000.000000000000       yes

Если все хорошо, то можно поднимать виртуальные машины. Создать новую и запустить в ней установку системы можно так:

1
2
3
4
5
6
7
8
9
10
virt-install --name=debian \
 --ram=1024 \
 --vcpus=2 \
 --cdrom=/mnt/_ISO/debian-6.0.5-amd64-netinst.iso \
 --os-type=linux \
 --os-variant=debiansqueeze \
 --disk path=/var/vms/debian.img,size=16 \
 --network bridge=br0 \
 --vnc \
 --noautoconsole

Чтобы получить доступ к консоли виртуальной машины, нужно запустить в одной консоли SSH-клиент:

1
ssh -L 5900:localhost:5900 user@kvm-host

А в другой — сам vncviewer:

1
vncviewer localhost:5900

Другой способ получить доступ к гостевой консоли (правда, только в текстовом режиме) — через последовательный порт. В гостевой системе для этого надо поправить /etc/inittab:

/etc/inittab
1
T0:12345:respawn:/sbin/agetty 115200 ttyS0

И запустить init q. Затем в консоли хоста можно использовать virsh console debian для подключения.

Комментарии