DevStack настроен на отдельную общедоступную сеть, но к экземплярам нельзя получить доступ извне
Как и в предыдущем вопросе, я пытаюсь развернуть DevStack в ОС Ubuntu 18.04 Server на виртуальной машине. Узел devstack имеет два сетевых адаптера (ens160, ens192); первый предназначен для доступа к виртуальной машине стека разработчиков - SSH и Horizon (10.20.30.40), второй - под управлением OpenStack Neutron (10.21.30.0/23). Итак, согласно документации
Если у вас есть 2 или более интерфейса на вашем сервере стека разработки, вы можете выделить интерфейс для нейтрона для полного управления. Это не должен быть тот же интерфейс, который вы используете для ssh на самом сервере devstack. Это делается путем установки с помощью атрибута PUBLIC_INTERFACE. Это переведет весь трафик уровня 2 от ваших гостей в основную сеть. При работе в этом режиме правило ip masq не добавляется в ваш стек разработчика, вы несете ответственность за маршрутизацию в вашей локальной сети.
Я понимаю, что маршрутизация должна выполняться впоследствии в соответствии с развертыванием стека разработчиков, но моя сеть уже определена и не может быть легко изменена. Итак, вотlocal.conf
файл, который я подготовил:
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
PUBLIC_INTERFACE=ens192
HOST_IP=10.20.30.40
FLOATING_RANGE=10.21.30.0/23
Теперь происходит следующее: после развертывания ни мои экземпляры не имеют доступа к внешнему миру (Интернету), ни я не могу получить доступ к своим экземплярам извне узла стека разработки (конечно, решение из моего предыдущего вопроса не сработало). Проблема, которую я вижу, заключается в том, что шлюз уже определен в сети (10.21.30.1), но это развертывание приводит кbr-ex
получение этого IP-адреса.
Вот вопрос:
Как я могу развернуть DevStack с доступными экземплярами на "выделенном гостевом интерфейсе", как предлагает документация?