Система оркестрации для XEN server 7.x

Существует данный проект уже давно, но руки мои и сознание никак не добирались разобраться.

Сегодня кратко постараюсь описать процесс установки.

Стоит отметить что данная утилита не только дублирует функционал XenCenter но и дополняет его, а самое вкусное дополнение это возможности резервного копирования ВМ без костылей, скриптов и т.д. (есть даже инкрементация и дедупликация копий)

Установка:

Для установки нам потребуется ОС Debian 8.x (Тестировалось на 8.5)

В зависимости от необходимой нагрузки можно давать больше ядер и памяти или даже физический сервер. (в тестовой конфигурации для одного сервера 1cpu 1gb достаточно)

Установку Debian расписывать в красках смысла не вижу вообще, Гугл в помощь.

 

План полётов:

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

# apt-get install wget build-essential redis-server libpng-dev git python-minimal

 

  1. Выкачиваем и инсталлируем Node JS и NPM

# wget -c https://raw.githubusercontent.com/visionmedia/n/master/bin/n
# chmod u+x n
# ./n lts
# npm i -g npm

посмотреть версии можно командой:

# node -v
# npm -v

я использовал node v. 6.11.2 и npm v.3.10.10

 

    3.Далее нужно выкачать серверную часть и веб интерфейс для нее, можно сказать с сайта производителя либо из Git

# git clone -b stable http://github.com/vatesfr/xo-server
# git clone -b stable http://github.com/vatesfr/xo-web

Скачивать и запускать можно куда угодно, но желательно что-бы они лежали рядом т.к придётся прописывать пути руками.

 

  1. переходим в каталог xo-server и там собираем билд

cd xo-server
# npm install && npm run build

Чем быстрее ваше интернет соединение тем быстрее всё будет готово

 

  1. После окончания сборки нужно создать конфиг файл, его шаблон уже есть в папке с сервером, копируем его и переименовываем

# cp sample.config.yaml .xo-server.yaml

после этого нужно поменять один из путей (путь сервера к веб интерфейсу)

# nano .xo-server.yaml

Открыв через nano либо любой другой удобный вам текстовый редактор почти в самом низу находим строчку : ‘../xo-web/dist’ и вписываем ваш путь к веб интерфейсу. Сохраняем файл. (там же можно поменять порт доступа и вообще много чего, но будьте внимательны npm очень чувствителен к пробелам)

 

  1. Далее можно тестово запустить серверную часть и убедится что всё работает.

Прямо из каталога с сервером пишем

npm start

По идее всё должно запуститься без ошибок

 

  1. Проделываем подобные операции по сборке над веб интерфейсом

Переходим в его каталог и пишем оттуда:

$ npm install
$ npm run build

ждём……

 

  1. Снова возвращаемся к каталогу с сервером, он уже знает где находится веб и сам всё запустит но для начала запускаем серверную часть

$ npm start

Запускается обычно быстро

 

Можете написать простой скрипт который будет стартовать систему вместе с ОС (полёт фантазии)

 

После всего этого идёт в браузере на URL: Http://айпи адрес вашей машины

и видим страницу приветствия, там вводим стандартный логин и пароль

 

L: admin@admin.net

P: admin

 

Нас встречает Xen Orchestra!

P.S Для ленивых существует virtual appliance т.е уже собранное решение с возможностью автоматического обновления через интернет НО стоит от 70$  в месяц и более 😉 устанавливается в три клика, только вот это не наш метод. 

Возможно в дальнейшем напишу цикл статей о XenServer и построении архитектуры на этом гиппервизоре.