Настройка XenWebManager в Ubuntu 10.04

XenWebManager — это web вариант GUI клиента OpenXenManager.

Скачиваем архив с исходным кодом и распаковываем, например, в /opt:

sourceforge.net/projects/xenwebmanager/files/

Или получаем из svn:

cd /opt
svn co https://xenwebmanager.svn.sourceforge.net/svnroot/xenwebmanager xenwebmanager


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

apt-get install python-cherrypy3 python-pybabel python-mako python-simplejson graphviz


Правим cherry.conf… Нам не помешает поддержка https:

Раскоментируем и редактируем пути к сертификату и ключу:

server.ssl_certificate = 'ssl/server.crt'
server.ssl_private_key = 'ssl/server.key'


Также нужна http авторизация:

tools.basic_auth.on = True


Создаем директорию для ключей в директории с XWM и создаем их:

mkdir ./ssl
cd ./ssl


openssl genrsa -out server.key 1024
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt


Для настройки http авторизации создаем md5 хэш желаемого пароля:

echo -n password | md5sum
5f4dcc3b5aa765d61d8327deb882cf99  -


Правим config.py, указав наш хеш:

users = {"admin": "5f4dcc3b5aa765d61d8327deb882cf99"}


Добавляем непривилегированного пользователя, например, user:

useradd -M -d /opt/xenwebmanager/ user -s /sbin/nologin -r


Создаем директории, выставляем права:

mkdir /var/log/xenwebmanager
mkdir /var/lib/xenwebmanager
chmod 770 /var/log/xenwebmanager
chmod 770 /var/lib/xenwebmanager
chown user:user -R /var/log/xenwebmanager/
chown user:user -R /var/lib/xenwebmanager/
chown user:user -R /opt/xenwebmanager/


Создаем в /opt/xenwebmanager/ скрипт start.sh:

#!/bin/sh
cd /opt/xenwebmanager
python ./frontend.py


Назначаем права:

chmod 755 ./start.sh


Запустить XWM от имени пользователя user можно так:

sudo -u user /opt/xenwebmanager/start.sh


Если видим ошибку 500 с текстом:

File "/usr/lib/pymodules/python2.6/cherrypy/__init__.py", line 301, in __getattr__
return getattr(child, name)
AttributeError: 'Response' object has no attribute 'i18n'

Редактируем i18n_tool.py, на 231 строке комментируя:

if 'Content-Language' not in cherrypy.response.headers:
        cherrypy.response.headers['Content-Language'] = str(
                cherrypy.response.i18n.locale)

XVP - веб менеджер для XCP и XenServer

xvp — web менеджер для серверов Citrix XenServer и Xen Cloud Platform, главной особенностью которого является возможность гибкой настройки прав доступа для нескольких пользователей к определенным виртуальным машинам, пулам и пр. VNC консоль также присутствует.



На сайте можно скачать виртуальную машину, после запуска которой xvp можно настроить в консоли с помощью несложной утилиты:

Bug: XenCenter и Xen Cloud Platform 1.0 - не создаются виртуальные машины

XenCenter выдает вот такую ощибку:

MEMORY_CONSTRAINT_VIOLATION - Memory limits must satisfy: static_min ≤ dynamic_min ≤ dynamic_max ≤ static_max


На сервере XCP в /etc/xensource/xapi_version_override добаляем:

5.6.199


Рестартуем сервисы:

/etc/init.d/xapi restart
/etc/init.d/xapissl restart


Почитать

OpenXenManager: управление серверами XenServer или Xen Cloud Platform в Linux

OpenXenManager — GUI клиент для XenServer (работает также с Xen Cloud Platform) для Linux. Эдакая замена XenCenter в Windows.



Проект требует Python, скачать можно из SVN с помощью команды:

svn co https://openxenmanager.svn.sourceforge.net/svnroot/openxenmanager openxenmanager


Запускается командой ./runme

Кроме того, есть и web интерфейс:

Хранилище iso образов для XenServer и Xen Cloud Platform

Для того, чтобы создать собственное хранилище iso образов и затем просто выбирать их из списка, например в XenCenter или OpenXenManager нужно для начала создать в LVM том нужного размера (назовем его host):

lvcreate --size 50G VG_XenStorage-xxxxxxx --name host


Создаем файловую систему:

mkfs.ext3 /dev/VG_XenStorage-xxxxxxx/host


Монтируем в /mnt/host:

mount /dev/VG_XenStorage-xxxxxxx/host /mnt/host


Создаем поддиректорию iso и скачиваем в нее образы

mkdir /mnt/host/iso


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

echo "/mnt/host/iso/ *(rw,no_root_squash,sync)" > /etc/exports
service nfs start
service portmap start
chkconfig --level 345 nfs on
chkconfig --level 345 portmap on


Монтируем:

xe-mount-iso-sr 127.0.0.1:/mnt/host/iso/




Чтобы при загрузке монтировался lvm том, можно прописать в /etc/rc.local:

lvchange --available y /dev/VG_XenStorage-xxxxxxx/host
mount /dev/VG_XenStorage-xxxxxxx/host /mnt/host 
/etc/init.d/nfs restart

Небольшой мануал по установке Ganeti 2.4.1 и Xen 4.0.1 в Ubuntu 10.04

Ganeti — это программное обеспечение для управления кластером Xen или KVM серверов. Проект очень хорошего качества, но хотел-бы предупредить — пока нет смысла пытаться использовать веб интерфейс для Ganeti Ganeti Web Manager, проект очень сырой (версия 0.6, возможно в будущем будет лучше).

Все нижеперечисленные инструкции необходимо выполнить на всех серверах (нодах) кластера, один из серверов будет главным (мастер). Там, где необходимо что-то настраивать на мастер-ноде будет отдельное примечание.

Также, для Ganeti желательно использовать LVM (хотя диски виртуальных машин могут храниться и в виде файлов). Группа томов должна называться xenvg, тогда не нужно будет все время указывать название.

Начнем конечно-же с установки Xen в Ubuntu 10.04…

Установка XEN 4.0.1 в Ubuntu 10.04:

Основано на данном wiki с некоторыми изменениями.

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

( Читать дальше )

ConVirt: управление xen и kvm серверами

ConVirt поддерживает управление несколькими серверами, управление XEN (полная и паравиртуализаци и KVM), в web-интерфейсе есть VNC и ssh консоли, симпатичный мониторинг ресурсов, поддержка шаблонов ОС.



Мануал по установке в redhatоподобных дистрибутивах:

www.convirture.com/wiki/index.php?title=C2_fedora_installation

Создаем темплейт CentOS 5.6 для запуска в HyperVM

Про HyperVM я писал ранее. В этом топике я создам темплейт CentOS 5.6 для запуска в режиме паравиртуализации в HyperVM.

Создаем логический раздел lvm объемом 10 Гб с файловой системой ext3:

lvcreate -L 10G -n template-centos-disk vg0
mkfs.ext3 /dev/vg0/template-centos-disk


Монтируем:

( Читать дальше )

HyperVM: мини хостинг своими руками

HyperVM — интегрированная платформа для предоставления хостинга на базе виртуализации xen или openvz. Ставится без проблем на CentOS 5.6. Вот небольшая инструкция. Т.к. я использовал сервер на хостинге Hetzner, при разметке диска я создал lvm с группой томов, в которой было 2 логических раздела — под / и под swap. Эти 2 раздела не должны занимать весь диск, т.к. должно остаться место для создания дисков виртуальных машин. HyperVM работает в режиме паравиртуализации, так что необходимы специально подготовленные образы. И, кстати, HyperVM платный — 0,5 $ за каждый vps в месяц. По-умолчанию до 5 включительно — бесплатно (вроде как на 2 месяца — нигде нет внятной информации про это, хотя проект вроде живой).

На свежеустановленном CentOS обновляем все и вся и устанавливаем xen:

yum update
yum install xen


Правим /boot/grub/grub.conf, чтобы сделать xen ядро загружаемым по-умолчанию. Для этого мне пришлось исправить опцию default с 1 на 0:

( Читать дальше )

Karesansui: web интерфейс для xen виртуализации

Karesansui — элегантный проект, предназначенный для обеспечения xen сервера простым и понятным web интерфейсом для управления виртуальными машинами. К сожалению, пока не поддерживается полная виртуализация и для установки какого-либо дистрибутива на созданных виртуальных машинах нужно использовать загрузку ядра по сети через FTP/HTTP. К слову, проект работает на Python.



Устанавливал я сие чудо в CentOS 5.6. Скачиваем архив вида karesansui-2.0.1-install-pack.tar.gz отсюда.

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

( Читать дальше )