http://mtaalamu.ru
Делаем так:
Очищаем правила iptables:
iptables -F
Разрешаем клиенту с ip 46.4.180.227 и с mac адресом 11:11:11:11:11:11 и 2му клиенту с ip 46.4.180.228 и с mac адресом 22:22:22:22:22:22:]]>
Скачиваем архив с исходным кодом и распаковываем, например, в /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 можно настроить в консоли с помощью несложной утилиты:
]]>
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
Почитать]]>
Проект требует Python, скачать можно из SVN с помощью команды:
svn co https://openxenmanager.svn.sourceforge.net/svnroot/openxenmanager openxenmanager
Запускается командой ./runme
Кроме того, есть и web интерфейс:
]]>
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