Установка Proxmox 1.5
by Bozaro on Май.16, 2010, under Серверный софт
Proxmox VE – гипервизор для OpenVZ и KVM на базе Debian с адекватным графическим интерфейсом.
Ранее я уже успел познакомиться с OpenVZ и KVM, но моя кустарная установка не имела дружественных средств управления виртуальными машинами.
Собирать конструктор не очень-то хотелось, посему решил попробовать что-нибудь из коробки. По описаниям Proxmox меня устраивал, но все оказалось не так просто, как мне того хотелось.
Установка с USB-флешки
Первые грабли были идиотскими до предела – образ, скачанный сфициального сайта, при загрузке ругался на отсутствие CD-привода, с которого он загружался. С чем это было вызвано, разбираться не стали.
Решение было простое:
- установить Debian Lenny 64bit с USB (http://www.debian.org/devel/debian-installer/);
- на свежеустановленный Debian установить Proxmox (http://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Lenny).
Разбивка диска и установка Debian Lenny
Здесь все согласно мануалу: http://www.debian.org/devel/debian-installer/. Естественно, устанавливается 64-битная версия операционной системы.
При разбивке диска надо учесть следующие особенности:
- все виртуальные машины и ISO-образы лежат в директории /var/lib/vz/, для этой директории имеет смысл сделать отдельный раздел на диске.
Нужно это в первую очередь для того, чтобы в случае, если виртуальные машины сожрут все дисковое пространство, гипервизор вел себя адекватно
- если мы хотим, чтобы при резервном копировании виртуальных машин они не останавливались, то нужно соблюдать следующие правила:
- виртуальные машины должны лежать на Logic Volume в LVM
Это требование вызвано тем, что для создания горячей резервной копии исползуется механизм Snapshot-ов LVM. Плюс с LVM проще менять размеры разделов. - в Volume Group, содержащем Logic Volume с виртуальными машинами, должно быть свободное место для создания Snapshot-ов.
Оно должно быть достаточно для создания Snapshot-ов. Размер места под Snapshot-ы должен быть достаточен для сохранения изменений Logic Volume с виртуальными машинами на время резервного копирования. По-умолчанию vzdump резервирует под Snapshot-ы 1GB, но этот параметр можно поменять в /etc/vzdump.conf (см. man vzdump). - резервное копирование должно производиться куда угодно, но не на тот же Logic Volume, на котором установлены виртуальные машины.
Это связано с тем, что в противном случае, место используемое под резервную копию будет скопировано в Snapshot. Это сильно снизит производительность дисковой подсистемы и потребует размер Snapshot-а существенно больший, чем размер резервной копии.
- виртуальные машины должны лежать на Logic Volume в LVM
- при создании отдельного раздела для гипервизора, нужно учесть, что при заливке образа через WEB-интерфейс, он зачем-то копируется и в /tmp, и в /var/tmp. После заливки образ попадает /var/lib/vz/templates/iso
То есть у гипервизора всегда должно быть около 10Гб свободного места (чтобы хватило на две копии DVD-образа). Если ему не хватит места, то WEB-морда отрапортует об успешной закачке образа, но образ будет «обрезан». Из-за этой проблемы я достаточно долго не мог понять, почему у меня в KVM не загружается Kubuntu с LiveCD.
Таким образом, у меня получилась следующая схема разбивки дисков для более чем 1-ого диска с использованием программного RAID-а:
- sdX1 – 256MB – разделы под загрузчик, объединены в RAID1 (зеркало);
- md0 – ext3 – /boot
- sdX2 – 2GB – SWAP;
- sdX3 – оставшееся место, объединено в RAID10 или другой по вкусу;
- md1 – LVM
- SYSTEM – 16GB – ext3 – /
- STORAGE – 70% – ext3 – /var/lib/vz/
- BACKUPS – 30% – ext3 – /mnt/backups/
- <свободное место> – 16GB
- md1 – LVM
Естественно, что резервные копии должны копироваться/создаваться на другой компьютер.
Установка Proxmox
Здесь все согласно мануалу: http://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Lenny, но надо учесть следующие особенности:
- в мануале предлагается ставить версию 2.6.18, но я установил версию 2.6.24. Решение принималось из-за следующих особенностей:
- 2.6.18 – стабильная версия, рекомендуемая разработчиком. Работает OpenVZ и KVM. При установке в KVM гостевой системы Windows XP, гостевая операционная система видит каждое виртуальное ядро как отдельный процессор (для Windows XP допустимо максимум два процессора);
- 2.6.24 – работает OpenVZ и KVM. Проблем с ядрами/процессорами в гостевых системах KVM нет;
- 2.6.32 – работает только KVM.
- при установке сети через WEB-морду надо включить физический интерфейс в Bridge, а настройки IP-адреса прописать у самого моста. Иначе контейнеры OpenVZ будут сидеть без сети.
Особенности установки гостевых систем
Установка гостевой системы Windows XP
У меня, при установке гостевой системы Windows XP (SP2, SP3) процесс установки стопорился на окончании поиска устройств. Визуально все работало (мышь двигалась, индикатор прогресса переливался), но надпись «до конца установки осталось 33 минуты» висела минут 20.
Проблема полечилась просто – перезагрузил виртуальную машину и процесс установки пошел дальше.
Так же на гостевой машине сильно тормозила дисковая подсистема. Полечилось это выключением кэша. Для этого в файле /etc/qemu-server/230.conf я изменил строку:
ide0: local:230/vm-230-disk-1.raw,cache=none
Июнь 15th, 2010 on 21:53
А можно немного подробней про: «при установке сети через WEB-морду надо включить физический интерфейс в Bridge, а настройки IP-адреса прописать у самого моста. Иначе контейнеры OpenVZ будут сидеть без сети.»
Спасибо
Июнь 17th, 2010 on 15:33
Configuration > System > Network:
Включаем интерфейс vmbr0, добавляем в него eth0 и указываем у vmbr0 IP-адрес и маску.
/etc/network/interfaces при этом принимает вид:
# network interface settings
auto lo
iface lo inet loopback
iface eth0 inet manual
auto vmbr0
iface vmbr0 inet static
address 172.16.0.2
netmask 255.255.0.0
gateway 172.16.0.1
bridge_ports eth0
bridge_stp off
bridge_fd 0
Август 17th, 2010 on 00:31
Прошло много времени, нет ли проблем с ядром 2.6.24 ?
Сентябрь 27th, 2010 on 07:05
С ядром 2.6.24 проблем не было.
Недавно вышел Proxmox 1.6. В нем OpenVZ поддерживается в ядре 2.6.32.
Сентябрь 28th, 2010 on 21:56
С ядром 2.6.32 проблем никаких нет.
Для лучшей работы сетевой подсистемы в гостевую XP можно/нужно поставить дрова http://kvm.qumranet.com/kvmwiki/VirtioWindowsDrivers
Ноябрь 9th, 2010 on 13:50
Доброго здравия.
Не подскажите, сколько хостовой системе (гипервизору)нужно под swap?
Да и нужен он ей вообще?
Ноябрь 10th, 2010 on 13:11
swap лишним не будет. У меня размер свопа равен размеру оперативы.
Параметр /proc/sys/vm/swappiness установил в 20, но на истину в последней инстанции не претендую.
Ноябрь 10th, 2010 on 15:01
В каком случае Хостовая система использует swap?
Она как-нибудь предоставляет его гостевым системам?
У меня в качестве гостей в основном будут работать win2003 и XP.
Ноябрь 25th, 2010 on 15:50
У Proxmox, есть 1 существенный недостаток. Он очень медленно работает с имиджами qcow2 которые умеют динамически расширятся, что актуально для эмуляции win . Libvirt таких недостатков не имеет .