openstack.cloud.floating_ip – Добавить/Удалить плавающий IP-адрес из экземпляра
Примечание
Этот плагин входит в состав коллекции openstack.cloud (версия 1.2.1).
Для его установки используйте: ansible-galaxy collection install openstack.cloud.
Для использования в книге задач укажите: openstack.cloud.floating_ip.
Обзор
- Добавить или удалить плавающий IP-адрес для экземпляра.
- Возвращает плавающий IP-адрес при подключении только если wait=true.
Требования
Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.
- openstacksdk
- openstacksdk >= 0.12.0
- python >= 3.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_timeout целое число | Сколько времени должно ждать сокетное соединение перед истечением времени ожидания для вызовов API. Если этот параметр опущен, в библиотеку запросов ничего не будет передано. | |
| auth словарь | Словарь, содержащий информацию об авторизации, необходимую стратегии подключаемого модуля авторизации облака. Для стандартного подключаемого модуля password он должен содержать auth_url, username, password, project_name и любую информацию о доменных зонах (например, user_domain_name или project_domain_name), если облако их поддерживает. Для других подключаемых модулей этот параметр должен содержать необходимые параметры подключаемого модуля авторизации. Этот параметр не нужен, если указан именованное облако или переменные окружения OpenStack OS_*. | |
| auth_type строка | Имя подключаемого модуля авторизации для использования. Если облако использует что-то кроме парольной аутентификации, имя подключаемого модуля должно быть указано здесь, а содержимое параметра auth должно быть соответствующим образом обновлено. | |
| availability_zone строка | Игнорируется. Присутствует для обратной совместимости. | |
| ca_cert строка | Путь к пакету сертификатов CA, который может использоваться для проверки запросов API SSL. Псевдонимы: cacert | |
| client_cert строка | Путь к клиенту сертификату для использования в рамках транзакции SSL. Псевдонимы: cert | |
| client_key строка | Путь к ключу клиента для использования в рамках транзакции SSL. Псевдонимы: key | |
| cloud необработанный | Именованное облако или конфигурация облака для работы. Если cloud — строка, она ссылается на именованную конфигурацию облака, как определено в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если предоставлен auth или присутствуют переменные окружения OpenStack OS_*. Если cloud — словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml. | |
| fixed_address строка | К какому фиксированному IP-адресу сервера должен быть прикреплён плавающий IP-адрес. | |
| floating_ip_address строка | Адрес плавающего IP-адреса для подключения или отключения. Требуется только если state отсутствует. Когда state присутствует, может использоваться для указания адреса IP для подключения. | |
| interface строка |
| Тип URL конечной точки для извлечения из каталога служб. Псевдонимы: endpoint_type |
| nat_destination строка | Имя или идентификатор частной сети neutron, на которой находится фиксированный IP-адрес для подключения плавающего IP-адреса Псевдонимы: fixed_network, internal_network | |
| network строка | Имя или идентификатор внешней сети neutron или имя пула nova. | |
| purge булево |
| Когда state отсутствует, указывает, следует ли полностью удалить плавающий IP-адрес или только отсоединить его от сервера. По умолчанию выполняется только отсоединение. |
| region_name строка | Имя региона. | |
| reuse булево |
| Когда state присутствует, а floating_ip_address отсутствует, этот параметр можно использовать для указания, следует ли попытаться повторно использовать адрес плавающего IP-адреса, уже выделенного проекту. |
| server строка / обязательный | Имя или идентификатор экземпляра, которому должен быть назначен IP-адрес. | |
| state строка |
| Ресурс должен быть присутствующим или отсутствующим. |
| timeout целое число | По умолчанию: 60 | Время ожидания появления IP-адреса как подключенного. См. wait. |
| validate_certs булево |
| Следует ли проверять запросы API SSL. До Ansible 2.3 по умолчанию было yes.Псевдонимы: verify |
| wait булево |
| При подключении плавающего IP-адреса укажите, следует ли ждать, пока он появится как подключенный. Должно быть установлено значение yes для того, чтобы модуль вернул значение плавающего IP-адреса. |
Примечания
Примечание
- Можно использовать стандартные переменные окружения OpenStack, такие как
OS_USERNAME, вместо явного указания значений. - Информация об авторизации управляется openstacksdk, что означает, что значения могут быть взяты из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных окружения, а затем, наконец, из явных параметров в playbooks. Дополнительную информацию можно найти по адресу https://docs.openstack.org/openstacksdk/
Примеры
# Assign a floating IP to the first interface of `cattle001` from an existing
# external network or nova pool. A new floating IP from the first available
# external network is allocated to the project.
- openstack.cloud.floating_ip:
cloud: dguerri
server: cattle001
# Assign a new floating IP to the instance fixed ip `192.0.2.3` of
# `cattle001`. If a free floating IP is already allocated to the project, it is
# reused; if not, a new one is created.
- openstack.cloud.floating_ip:
cloud: dguerri
state: present
reuse: yes
server: cattle001
network: ext_net
fixed_address: 192.0.2.3
wait: true
timeout: 180
# Assign a new floating IP from the network `ext_net` to the instance fixed
# ip in network `private_net` of `cattle001`.
- openstack.cloud.floating_ip:
cloud: dguerri
state: present
server: cattle001
network: ext_net
nat_destination: private_net
wait: true
timeout: 180
# Detach a floating IP address from a server
- openstack.cloud.floating_ip:
cloud: dguerri
state: absent
floating_ip_address: 203.0.113.2
server: cattle001
Авторы
- OpenStack Ansible SIG
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/openstack/cloud/floating_ip_module.html