Установка виртуального KVM-сервера на Debian 7

Авг 5th, 2013 | Posted by | Filed under Debian, Hardware, Linux, PC, Software

Ставим базовую систему, убираем опции установки графического окружения и сервера печати, добавляем сервер ssh.

Проверяем наличие поддержки виртуализации процессором:
# cat /proc/cpuinfo | egrep ‘(vmx|svm)’
Замечательно, у меня в системе 8 поддерживающих виртуализацию процессоров 🙂

Что делать, если их нет? Копаемся в BIOS-е, включаем виртуализацию, перешиваем свежий BIOS. Если процессор принципиально не поддерживает виртуализацию, берём другой сервер.

С другим сервером никак? Долго плачем, жалуемся начальнику на тяжёлую жизнь и на то, что пользователи нас побьют и т.д… Не помогло? Ставим qemu:

# aptitude install qemu

Установка в серверной завершена, перезагружаем сервер. Уходим из серверной.

Ставим разные (не)нужные штуки:
# aptitude install qemu-kvm bridge-utils libvirt-bin virtinst mc htop lshw sockstat traceroute virt-manager lxde-core xrdp

Последние три ставим для того, чтобы можно было из M$ Windows заходить терминальным клиентом и рулить виртуальным сервером без установки клиента на рабочем месте администратора. Если у администратора рабочее место с Linux, можно поставить virt-manager там. xrdp удобен тем, что не запускает графический интерфейс до тех пор, пока пользователь не захочит подключиться для удалённого управления сервером, а так же тем, что клиенты rdp имеются практически под любую os и платформу, включая мобильные.

Проверяем, появился ли модуль виртуализации:
# lsmod | grep kvm
Ответ есть — и ок.

Включаем форвардинг arp-запросов, чтобы виртуальные машины адекватно видели сеть, для этого в файл /etc/sysctl.conf добавляем строки:

net.ipv4.conf.all.forwarding=1
net.ipv4.conf.all.proxy_arp=1

и применяем настройки командой sysctl -p

Настраиваем сетевой мост, для этого редактируем /etc/network/interfaces:
# nano /etc/network/interfaces
Находим настройку сетевой платы, обычно что-то типа:

allow-hotplug eth0
iface eth0 inet static
        address .....

и добавляем мост, изменяя настройку на такую:

auto eth0
iface eth0 inet manual
auto br0
iface br0 inet static
        bridge_ports eth0
        address .....

(разумеется, у вас может быть сетевой интерфейс не eth0, учтите это!)

Перезапускаем сеть:
# /etc/init.d/networking restart
Если удалённый коннект отвалился, бежим в серверную и проверяем, что не так 🙂

Проверяем состояние сетевого моста:
# brctl show
Ответ, в котором фигурирует сетевой интерфейс eth0 есть — и ок.

Рулить всем этим будем из линукса нативной программой virt-manager, а из виндов — подключаться терминалом на xrdp и рулить ею же в удалённом рабочем столе lxde.
Для этого добавляем нашего пользователя в группу libvirt:
# nano /etc/group
в строчке libvirt:… в конце дописываем имя нашего пользователя (несколько пользователей пишутся списком через запятую), сохраняем.

Создаём файл автостарта virt-manager:
$ touch ~/.xsessionrc
$ nano ~/.xsessionrc

/usr/bin/virt-manager&

Проверяем возможность подключиться терминалом из виндов.

Готово!

  1. вы
    Ноя 23rd, 2015 at 23:52
    Reply | Quote | #1

    подключиться терминалом из виндов ….. КАК ??????

  2. admin
    Ноя 27th, 2015 at 15:28
    Reply | Quote | #2

    mstsc.exe /v:IP
    где IP — адрес виртуального сервера

Cancel reply