Облако в Ubuntu своими руками

5 Ноября 2018

В этой статье не будет долгой и порой скучной теории о том, что такое OpenStack, зачем его использовать и т. д. Мы сразу приступим к самому интересному — к установке OpenStack в Ubuntu 16.04.

Прежде, чем приступить сразу отметим цель этого руководства — установка OpenStack на личные компьютеры или облачные виртуальные машины. Мы не будем строить продакшн-среду, а просто покажем процесс установки OpenStack в Ubuntu.

  1. Создание виртуальной машины

Устанавливать OpenStack можно, как на физический компьютер, например, на личный ноутбук или на виртуальную машину в облаке. Мы будем использовать собственные виртуальные машины.

Как минимум, понадобится машина с двумя процессорами, 4 Гб «оперативки», доступом к Интернету, а также доступными извне портами 22 и 80. Для установки OpenStack мы будем использовать DevStack, который предоставляет набор инструментов для установки основных сервисов OpenStack из исходников, необходимых для разработки и тестирования. Так вот, DevStack поддерживает Ubuntu 16.04/17.04, Fedora 24/25, CentOS 7, а также некоторые версии Debian и OpenSUSE. Если у вас нет особых предпочтений, то наиболее тщательно тестировалась работа DevStack на Ubuntu 16.04, именно поэтому данная версия и выбрана в качестве целевой (хотя уже доступна 18.04).

Конфигурация нашей виртуальной машины будет превышать минимальные системные требования — 4 процессора, 8 Гб памяти:

1.png

Конфигурация виртуальной машины

Сразу нужно заметить, что машина, на которую будет установлен DevStack, должна быть выделенной для него и только для него. Никаких других функций машина выполнять не должна. Желательно выполнять установку DevStack на чистую машину, на которую не устанавливалось другое ПО.

  1. Добавляем пользователя для DevStack

После создания виртуальной машины войдите на нее по ssh. Первым делом нам нужно создать не-root пользователя и предоставить ему права sudo. Сделаем это:

sudo useradd -s /bin/bash -d /opt/stack -m stack
echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack

Первая команда создает пользователя с именем stack. Вторая – предоставляет ему sudo-права.

В результате вы должны увидеть вывод:

stack ALL=(ALL) NOPASSWD: ALL

2.png

Пользователь stack создан

  1. Загрузка DevStack

Войдите под пользователем stack и загрузите DevStack:

sudo su – stack
git clone https://github.com/openstack-dev/devstack.git -b stable/pike devstack/

3.png

DevStack склонирован

Данная команда клонировала релиз Pike. При желании вы можете загрузить более свежие релизы Rocky или Queens. Список релизов доступен по адресу https://releases.openstack.org/.

После клонирования сразу перейдите в каталог devstack:

cd devstack/

Если облака для вас
не просто теория
Широкий спектр услуг
по выделенным северам
и мультиклауд-решениям
Конфигурация VPS и бесплатный тест уже через 2 минуты
Организация вашей IT-инфраструктуры на основе мультиклауд-решения
  1. Определяем свой IP-адрес

Теперь определим свой IP-адрес. Введите команду: 

sudo ifconfig 

Нас интересует адрес интерфейса ens. В нашем случае – это 46.229.220.153.

4.png

Определяем IP-адрес

  1. Настройка DevStack

Теперь пора создать файл local.conf, содержащий ваш IP-адрес и пароль. Для простоты мы сделаем так, чтобы все пароли были одинаковыми. Вы же можете задать четыре разных паролей – так будет менее удобно, но правильнее с точки зрения безопасности:

cat >  local.conf <<EOF
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=\$ADMIN_PASSWORD
RABBIT_PASSWORD=\$ADMIN_PASSWORD
SERVICE_PASSWORD=\$ADMIN_PASSWORD
HOST_IP=46.229.220.153
RECLONE=yes
EOF

Замените значения, выделенные жирным.

  1. Установка и запуск OpenStack

Для установки и запуска OpenStack введите команду:

./stack.sh

Запасайтесь терпением. Весь процесс займет минут 20-30.

Когда все будет готово, вы должны увидеть следующий вывод:

5.png

Все готово!

Далее по хорошему стоит настроить брандмауэр, но мы пока его отключим:

sudo ufw disable

  1. Входим в админку

Осталось открыть браузер и войти в админку OpenStack. Используйте следующий адрес:

http://ваш_IP/dashboard

Для входа используйте имя пользователя admin и пароль, указанный в конфигурационном файле local.conf.

6.png

Вход в панель управления OpenStack

7.png

Панель управления OpenStack

На этом все. Как видите, создать свое облако в Ubuntu не так уж сложно, а большую часть времени занимает установка самого OpenStack, которая выполняется полностью в автоматическом режиме. В следующих статьях мы рассмотрим панель управления подробнее, а тем, кому «горит», можем порекомендовать руководство по панели управления OpenStack на английском языке.

Получить консультацию специалиста
Персональный ассистент
Cloud.Xelent