четверг, 21 марта 2013 г.

proxmox: quick start

proxmox это система виртуализации, которая умеет как полную виртуализацию (HVM), так и контейнерную (openVZ). Увы, паравиртуалицазию (PV) оно не умеет, что частично компенсируется контейнерами. Для PV нужен xen. Впрочем, за счёт pv-ops для свежих версий линукса эта проблема не так актуальна.

Простая установка действительно простая: качаем ISO с офсайта (VE версия), и грузимся с него
Внимание! В системе должен быть только 1 диск, который будет целиком отдан под систему, никаких запросов о разбиении диска не будет!
Сама установка элементарна: вводим страну, выбираем таймзону, проверяем имя узла, настройки сети, задаём почту и пароль для рута... Вроде и всё.
После перезагрузки обращаемся браузером или через ssh на тот айпи, который был присвоен системе, это будет написано на экране даже без логина в систему, по http можно без указания порта, перекинет куда надо автоматом. Логин root, пароль тот, что вводили при установке.



Система построена на базе debian, поэтому можно в том числе поставить её даже на уже стоящий дебиан, это например полезно при установке на сервера в hetzner-е:
http://wiki.hetzner.de/index.php/Proxmox_VE/ru
http://www.doless.ru/ustanavlivaem-proxmox-na-server-v-dc-hetzner.html
http://www.wepoca.net/node/41
Ссылок несколько, потому что они под разные версии + там разные идеи и варианты.

По сути, proxmox это простая веб-обёртка на дебиан, причём не особо функциональная, хотя просто наблюдать за системой через неё нормально. А значит, нам понадобится и консоль. В частности, через веб невозможно создать кластер (или засунуто это в такие дебри, что день изучения ничего не дал). А создаётся кластер через команду
pvecm create <clustername>, причём имя макс 15 символов. Добавлять новые ноды к кластеру через pvecm add <masternode name or ip>
Мне непонятно, почему такой базовый функционал аж в версии 2.3 не реализован в интерфейсе. Автообновление нод, в том числе при добавлении ноды (см xenserver)? Мечтать не вредно.

Нюансы
Update (from 2.2 to 2.3)

http://pve.proxmox.com/wiki/Downloads
Можно поставить диск/ISO со свежей версией и загрузиться, будет опция обновления.
А можно просто сделать apt-get update, остановить все машины (смигрировать их на другие ноды) и сделать apt-get dist-upgrade.
Более старые версии обновлялись через специальные скрипты, с более свежими такой проблемы нет.


При обновлении нод могут быть сбои, (пример), и крайне желательно держать все ноды 1 версии, иначе при попытках добавить ноду к кластеру будут ошибки вида

   Loading kernel modules... FATAL: Error inserting configfs (/lib/modules/2.6.32-16-pve/kernel/fs/configfs/configfs.ko): Invalid module format
[FAILED]
waiting for quorum...

и это всего-лишь прокс 2.3 подключился к мастеру 2.2...
Надо поставить на новую ноду ту же версию, что на мастере, или обновить мастер до свежей, и через pveversion -v добиться одинаковости версий. Перезагрузить те ноды, которые обновляли. После этого на новой ноде /etc/init.d/cman start должен отработать без ошибок (без ругани на configfs.ko), и при необходимости снова добавляем ноду pvecm add 1.2.3.4 --force (можно попробовать pvecm updatecerts)

При переустановке новой ноды на нужную версию может потребоваться удалить отпавшую ноду, но так просто это не сделать -- скажет cluster not ready - no quorum?
Выставим expected в 1 и удалим (на мастере)
root@proxmox2:~# pvecm exp 1
root@proxmox2:~# pvecm delnode proxmox1

Load Balancing нет. #

HA взят у RedHat #

Что дальше?

Стоит подробнее изучить fencing
fencing - часть кластерной системы конфигурации. Эта технология блокирует доступ к узлу, с которым отсутствует связь, к общим ресурсам кластера.

Шаблоны
http://wiki.openvz.org/Download/template/precreated, класть в /vz/template/cache (не распаковывая!). Также можно добавить хранилище для шаблонов и класть туда.

О самостоятельном создании шаблонов

Живая миграция


Кластер из нод не в 1 ДЦ
Дело в том, что по умолчанию используется multicast, то есть "из коробки" не запустить 1 ноду в ДЦ, а 2 в офисе. Вдобавок нужно понимать, что нагруженная машина через канал в 10мбит при активной работе может не смигрировать никогда.
Если такое всё-же надо, надо или переходить на юникаст, или поднимать VPN.
http://pve.proxmox.com/wiki/Multicast_notes
http://pve.proxmox.com/wiki/Configuring_a_Proxmox_VE_2.x_cluster_running_over_a_private_OpenVPN_intranet

Комментариев нет:

Отправить комментарий