Настройка кластера для запуска Cloud-окружений с использованием Ubuntu Enterprise Cloud


Для настройки сервера для запуска Cloud-окружений будем использовать
дистрибутив Ubuntu Enterprise Cloud (http://www.ubuntu.com/cloud/private) в
который интегрирована поддержка платформы Eucalyptus
(http://www.eucalyptus.com/). Будет создан один управляющий
cloud-инфраструктурой фронтэнд-сервер и несколько работающих под его началом
вспомогательных узлов.<!--more-->

Установленный на машинах процессор должен поддерживать средства аппаратной
виртуализации Intel VTx (vmx) или AMD-V (svm). Проверить поддержку можно
убедившись наличие соответствующих флагов в файле   /proc/cpuinfo:

egrep '(vmx|svm)' /proc/cpuinfo

Устанавливаем на сервер и вспомогательные узлы  Linux дистрибутив Ubuntu Server
9.10, выбрав в меню загрузчика "Install Ubuntu Enterprise Cloud". Далее
проводим инсталляцию с соответствие с личными предпочтениями, а в блоке "Cloud
Installation Mode" выбираем  для управляющего сервера значение по умолчанию
"Cluster", а при установке дополнительных узлов - "Node".

Настройка вспомогательных узлов Cloud-инфраструктуры.

Устанавливаем на узлах публичный SSH-ключ управляющего сервера:
1. Задаем пользователю eucalyptus на конечных узлах пароль:

sudo passwd eucalyptus

2. На стороне управляющего сервера запускаем команду копирования ssh-ключа на узлы:

sudo -u eucalyptus ssh-copy-id -i ~eucalyptus/.ssh/id_rsa.pub eucalyptus@IP_адрес_узла

3. Очищаем ранее установленный пароль для пользователя eucalyptus, чтобы
заходить можно было только по ключам шифрования:

sudo passwd -d eucalyptus

После того как аутентификация по ssh-ключам настроена на всех узлах запускаем
на стороне управляющего сервера процесс регистрации узлов:

sudo euca_conf --no-rsync --discover-nodes

Получаем и устанавливаем мандат для пользователей cloud-инфраструктуры.

На управляющем пользователе создаем директорию ~/.euca и генерируем
идентификационные параметры cloud-инфраструктуры:

mkdir -p ~/.euca
chmod 700 ~/.euca
cd ~/.euca
sudo euca_conf --get-credentials mycreds.zip
unzip mycreds.zip
cd -

Настройка EC2 API и AMI утилит.

На управляющем сервере запускаем скрипт для создания параметров окружения Eucalyptus:

~/.euca/eucarc

Для автоматизации запуска добавляем его вызов в ~/.bashrc:

echo "[ -r ~/.euca/eucarc ] &amp;&amp; . ~/.euca/eucarc" &gt;&gt; ~/.bashrc

Устанавливаем вспомогательный набор AMI утилит:

sudo apt-get install ec2-ami-tools ec2-api-tools

Для проверки, что все работает, запускаем:

. ~/.euca/eucarc
в ответ должно появиться:
euca-describe-availability-zones verbose

Настройка через управляющий web-интерфейс

В браузере открываем страницу https://IP_управляющего_сервера:8443
В качестве имени пользователя и пароля указываем "admin". После первого входа
будет сразу предложено поменять пароль и указать контактный email.

Установка образов пользовательских cloud-окружений.

В панели управления web-интерфейса выбираем вкладку "Store" и жмем кнопку
"Install" рядом с выбранным в списке образом системы. Сразу после нажатия
начнется загрузка из сети выбранного образа и затем его установка.

Запуск образов пользовательских cloud-окружений.

Перед первым стартом окружения на узле создаем для него SSH-ключ на управляющем узле:

touch ~/.euca/mykey.priv
chmod 0600 ~/.euca/mykey.priv
euca-add-keypair mykey &gt; ~/.euca/mykey.priv

На узле открываем 22 порт, запустив следующие команды:

euca-describe-groups
euca-authorize default -P tcp -p 22 -s 0.0.0.0/0

После этого можно запустить зарегистрированный образ окружения через
web-интерфейс: во вкладке "Store" выбираем ссылку "How to Run", в появившемся
окне будет отражена полная команда для запуска. Первый запуск может занять
довольно долго, так как потребуется время на его копирование в кеш.

За статусом запуска окружения можно наблюдать выполнив команду:

watch -n5 euca-describe-instances

Когда состояние "pending" заменится на "running", к окружению можно подключаться.

Для сохранения IP созданного окружения в переменной IPADDR и входа в него по ssh выполним команду:

IPADDR=$(euca-describe-instances | grep $EMI | grep running | tail -n1 | awk '{print $4}')
ssh -i ~/.euca/mykey.priv ubuntu@$IPADDR

Для принудительного завершения работы окружения:

INSTANCEID=$(euca-describe-instances | grep $EMI | grep running | tail -n1 | awk '{print $2}')
euca-terminate-instances $INSTANCEID

Полезная информация

Перезапуск управляющего сервера eucalyptus:

sudo service eucalyptus restart

Для перезапуска ПО на стороне узла:

sudo service eucalyptus-nc restart

Лог сохраняется в /var/log/eucalyptus
Файлы конфигурации находятся в директории /etc/eucalyptus
БД: /var/lib/eucalyptus/db
Ключи шифрования: /var/lib/eucalyptus и  /var/lib/eucalyptus/.ssh

Подробнее см. официальное руководство пользователя http://help.ubuntu.com/community/UEC

, Источник: http://www.serverwatch.com/tutorial...

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

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