В этой статье не будет долгой и порой скучной теории о том, что такое OpenStack, зачем его использовать
Прежде, чем приступить сразу отметим цель этого руководства — установка OpenStack на личные компьютеры или облачные виртуальные машины. Мы не будем строить
Устанавливать 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 Гб памяти:
Конфигурация виртуальной машины
Сразу нужно заметить, что машина, на которую будет установлен DevStack, должна быть выделенной для него и только для него. Никаких других функций машина выполнять не должна. Желательно выполнять установку DevStack на чистую машину, на которую не устанавливалось другое ПО.
После создания виртуальной машины войдите на нее по ssh. Первым делом нам нужно создать
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
Пользователь stack создан
Войдите под пользователем stack и загрузите DevStack:
sudo su – stack
git clone https://github.com/openstack-dev/devstack.git -b stable/pike devstack/
DevStack склонирован
Данная команда клонировала релиз Pike. При желании вы можете загрузить более свежие релизы Rocky или Queens. Список релизов доступен по адресу https://releases.openstack.org/.
После клонирования сразу перейдите в каталог devstack:
cd devstack/
Теперь определим свой IP-адрес. Введите команду:
sudo ifconfig
Нас интересует адрес интерфейса ens. В нашем случае – это 46.229.220.153.
Определяем IP-адрес
Теперь пора создать файл 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
Замените значения, выделенные жирным.
Для установки и запуска OpenStack введите команду:
./stack.sh
Запасайтесь терпением. Весь процесс займет минут 20-30.
Когда все будет готово, вы должны увидеть следующий вывод:
Все готово!
Далее по хорошему стоит настроить брандмауэр, но мы пока его отключим:
sudo ufw disable
Осталось открыть браузер и войти в админку OpenStack. Используйте следующий адрес:
http://ваш_IP/dashboard
Для входа используйте имя пользователя admin и пароль, указанный в конфигурационном файле local.conf.
Вход в панель управления OpenStack
Панель управления OpenStack
На этом все. Как видите, создать свое облако в Ubuntu не так уж сложно, а большую часть времени занимает установка самого OpenStack, которая выполняется полностью в автоматическом режиме. В следующих статьях мы рассмотрим панель управления подробнее, а тем, кому «горит», можем порекомендовать руководство по панели управления OpenStack на английском языке.