Подготовка и установка OpenStack
Запустите DeckCrew TUI с узла развёртывания.
Меню развёртывания
Создайте новое развёртывание типа OpenStack.
Если OpenStack планируется развернуть:
без Ceph, то создайте единственное развёртывание типа OpenStack.
с Ceph, то создайте сначала развёртывание Ceph, затем OpenStack.
Перейдите в меню вашего развёртывания.
Сетевые планы
При необходимости настройте приватные сетевые планы для вашего развёртывания.
В сетевой план обязан входить OpenVSwitch мост с именем br-ex, так как через него настраиваются все тенант-сети облака.
Можно использовать дефолтный сетевой план single_nic_vlans/single_nic_vlans.j2.
Роли/Узлы и Сети ролей
Настройте узлы.
Доступные роли:
Controller - узлы контроллеры
Compute - узлы виртуализации
PowerOfThree - совмещённая роль контроллера и узла виртуализации
Monitoring - узлы мониторинга (опционально, по умолчанию мониторинг поднимается на контроллерах)
Виртуальные IP-адреса
При необходимости можно зафиксировать или настроить самостоятельно виртуальные IP-адреса. По умолчанию они генерятся автоматически для сетей ctlplane, external, internal_api.
Пароли
Можно пропустить этот шаг или настроить пароли самостоятельно.
Здесь обратите внимание на поля:
AdminPassword - это пароль для пользователя admin в развёртываемом облаке
CephClientKey, CephClusterFSID - значения обязательные для связи сервисов OpenStack с Ceph.
Настройка точек подключения для сервисов облака
Можно пропустить этот шаг или настроить точки подключения самостоятельно, если:
Используется ssl подключение к API облака.
Требуется подключение по IP-адресам, а не доменным именам для сервисов.
Требуется использовать Ctlplane сеть для административного подключения к сервисам.
Настройки сервисов облака
Настройте NtpServers и DnsServers.
Подключите CephExternal если используется внешний Ceph кластер (в том числе развёрнутый через dctui).
Дополнительно можно настроить дополнительные сервисы:
Amano, Tram вместо OVN,
Designate,
Ironic, IronicInspector,
Octavia.
Включите опцию StandaloneMonitoring, если ранее был добавлен узел в роли Monitoring.
Также доступны настройки сервиса Keystone:
FederationOpenidc,
KeysoneLdapBackend,
KeystoneSecurityCompliance.
При определении бэкендов сервисов необходимо учитывать, что для Glance и Nova может быть выбран только один. Для сервиса Cinder может использоваться несколько разных бэкендов.
Добавление SSL/TLS для публичных сервисов API
В настройках для развёртывания зайти во вкладку Endpoint Data.
Под заголовком
TLSнажать кнопку< use >.Далее нажать кнопку
< Generate Map/Ctrl+A >.Далее зайти во вкладку Service Settings.
Добавить свойство
Tlsи заполнить значения для сертификата и ключа.Зайти в свойство CustomDomain и указать dns имя, используемое в сертификате, в поле
CloudName.Если сертификат планируется самоподписанный, то добавить свойство
TlsCustomCaи заполнить root сертификат.Если в сертификате используется IP-адрес, то зайдите из меню развёртывания во вкладку Virtual IPs, добавьте или измените запись для сети external и укажите IP-адрес в поле
IP Address.
Инструкция по добавлению SSL/TLS
Генерация самоподписанного сертификата
Создайте плейбук вида generate_cert.yml со следующим содержимым:
- hosts: localhost
vars:
ssl_dir: /etc/deckcrew/certs/acloud
tasks:
- import_role:
name: dc-cert
vars:
ssl_ca_common_name: novalocal
ssl_subject_dns: acloud.novalocal
ssl_subject_ip: 10.10.10.100
где ssl_subject_dns - это параметр CustomDomain/CloudName в настройках сервисов облака, ssl_subject_ip - виртуальный IP-адрес в сети external.
Запустите плейбук
ansible-playbook generate_cert.yml
Результат будет расположен в папке /etc/deckcrew/certs
[stack@undercloud ~]$ ls /etc/deckcrew/certs/acloud
ca.crt.pem ca.key.pem openstack.crt.pem openstack.key.pem