Я хочу указать, на каком вычислительном узле будет находиться при создании экземпляра с помощью модуля Openstack ansible openstack.cloud.server
. На самом деле я хочу выполнить следующую команду:
$ openstack server create --flavor g2 --image Ubuntu-20.04 --network public2 --security-group default --hypervisor-hostname compute3 --os-compute-api-version 2.74 test
# OR
$ openstack server create --flavor g2 --image Ubuntu-20.04 --network public2 --security-group default --host compute3 --os-compute-api-version 2.74 test
Как я могу передать --host
или --hypervisor-hostname
аналог Openstack CLI в модуль openstack.cloud.server
в ansible???
Попробуйте использовать meta
.hostname
определите свой гипервизор:
- name: Create a new instance and attaches to a network and passes metadata to the instance
openstack.cloud.server:
......
meta:
hostname: test1
мета:
Список пар ключ-значение, которые должны быть предоставлены в качестве метаданных для нового экземпляра.
В другом случае он может использовать параметр доступности_зоны для выбора хостов:
- name: launch an instance in specific host
openstack.cloud.server:
......
availability_zone: nova:compute3001
См. также этот пример.
Я также нашел другое решение, настройка
openstack.cloud.server: availability_zone: nova:compute3001
решит проблему, можете ли вы добавить это и в свой ответ, чтобы я мог его принять?