Spec-Zone.ru › Ansible 2.10

openstack.cloud.os_router – Создание или удаление маршрутизаторов в OpenStack

Примечание

Этот плагин является частью коллекции openstack.cloud (версия 1.2.1).

Для его установки используйте: ansible-galaxy collection install openstack.cloud.

Для использования в книге задач укажите: openstack.cloud.os_router.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Создание или удаление маршрутизаторов в OpenStack. Хотя Neutron позволяет маршрутизаторам использовать одинаковое имя, этот модуль обеспечивает уникальность имен для большей удобства пользователя.

Требования

Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.

  • openstacksdk
  • openstacksdk >= 0.12.0
  • python >= 3.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
admin_state_up
boolean
    Варианты:
  • нет
  • да ←
Желаемое административное состояние созданного или существующего маршрутизатора.
api_timeout
целое число
Сколько времени должно ожидать сокетное соединение перед истечением времени ожидания для API-вызовов. Если этот параметр опущен, ничего не будет передано в библиотеку requests.
auth
словарь
Словарь, содержащий информацию об авторизации, необходимую стратегии подключаемого модуля авторизации облака. Для стандартного плагина пароль он должен содержать auth_url, имя пользователя, пароль, имя проекта и любую информацию о доменах (например, имя_домена_пользователя или имя_домена_проекта), если облако их поддерживает. Для других плагинов этот параметр должен содержать любые необходимые параметры плагина авторизации. Этот параметр не нужен, если указано имя облака или присутствуют переменные среды OpenStack OS_*.
auth_type
строка
Название плагина авторизации для использования. Если облако использует что-то, кроме парольной авторизации, здесь должно быть указано имя плагина, а содержимое параметра auth должно быть соответствующим образом обновлено.
availability_zone
строка
Игнорируется. Присутствует для обратной совместимости
ca_cert
строка
Путь к пакету сертификатов CA, который может использоваться для проверки запросов SSL API.

алиасы: cacert
client_cert
строка
Путь к клиенту сертификату для использования в рамках транзакции SSL.

алиасы: cert
client_key
строка
Путь к ключу клиента для использования в рамках транзакции SSL.

алиасы: key
cloud
сырой
Именованное облако или конфигурация облака для работы. Если cloud — строка, она ссылается на именованную конфигурацию облака, как определено в файле OpenStack clouds.yaml. Обеспечивает значения по умолчанию для auth и auth_type. Этот параметр не нужен, если указан auth или присутствуют переменные среды OpenStack OS_*. Если cloud — словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml.
enable_snat
boolean
    Варианты:
  • нет
  • да
Включить атрибут Source NAT (SNAT).
external_fixed_ips
список / элементы=словарь
Параметры IP-адреса для внешней сетевой шлюзовой точки. Каждый из них — словарь с именем или идентификатором подсети (subnet) и IP-адресом для присвоения в подсети (ip). Если IP не указан, он автоматически назначается из этой подсети.
ip
строка / обязательный
Фиксированный IP-адрес для попытки выделения.
subnet
строка
Подсеть для подключения IP-адреса.
interface
строка
    Варианты:
  • административный
  • внутренний
  • общедоступный ←
Тип URL конечной точки для извлечения из каталога сервиса.

алиасы: endpoint_type
interfaces
список / элементы=сырой
Список подсетей, которые нужно подключить к внутреннему интерфейсу маршрутизатора. Шлюз по умолчанию, связанный с подсетью, будет автоматически подключен к внутреннему интерфейсу маршрутизатора. Чтобы указать IP-адрес, отличный от шлюза по умолчанию, передаются параметры в виде словаря с ключами как имя или идентификатор сети (net), имя или идентификатор подсети (subnet) и IP-адрес порта (portip) из сети. Пользовательский определенный портип часто требуется, когда несколько маршрутизаторов необходимо подключить к одной подсети, для которой шлюз по умолчанию уже используется.
name
строка / обязательный
Имя, которое должно быть присвоено маршрутизатору
network
строка
Уникальное имя или ID внешней сетевой шлюзовой точки.
обязательно, если заданы interfaces или enable_snat.
project
строка
Уникальное имя или ID проекта.
region_name
строка
Имя региона.
state
строка
    Варианты:
  • present ←
  • absent
Указывает желаемое состояние ресурса
timeout
целое число
Значение по умолчанию:
180
Сколько времени Ansible должен ждать запрошенного ресурса.
validate_certs
boolean
    Варианты:
  • нет ←
  • да
Нужно ли проверять запросы SSL API.
До Ansible 2.3 это значение по умолчанию было yes.

алиасы: verify
wait
boolean
    Варианты:
  • нет
  • да ←
Ansible должен ждать завершения запрошенного ресурса.

Примечания

Примечание

  • Можно использовать стандартные переменные среды OpenStack, такие как OS_USERNAME, вместо явного указания значений.
  • Информация об авторизации управляется openstacksdk, что означает, что значения могут поступать из файла конфигурации yaml в /etc/ansible/openstack.yaml, /etc/openstack/clouds.yaml или ~/.config/openstack/clouds.yaml, затем из стандартных переменных среды, и, наконец, из явных параметров в задачах. Дополнительную информацию можно найти на https://docs.openstack.org/openstacksdk/

Примеры

# Create a simple router, not attached to a gateway or subnets.
- openstack.cloud.router:
    cloud: mycloud
    state: present
    name: simple_router

# Create a simple router, not attached to a gateway or subnets for a given project.
- openstack.cloud.router:
    cloud: mycloud
    state: present
    name: simple_router
    project: myproj

# Creates a router attached to ext_network1 on an IPv4 subnet and one
# internal subnet interface.
- openstack.cloud.router:
    cloud: mycloud
    state: present
    name: router1
    network: ext_network1
    external_fixed_ips:
      - subnet: public-subnet
        ip: 172.24.4.2
    interfaces:
      - private-subnet

# Create another router with two internal subnet interfaces.One with user defined port
# ip and another with default gateway.
- openstack.cloud.router:
    cloud: mycloud
    state: present
    name: router2
    network: ext_network1
    interfaces:
      - net: private-net
        subnet: private-subnet
        portip: 10.1.1.10
      - project-subnet

# Create another router with two internal subnet interface.One with user defined port
# ip and and another with default gateway.
- openstack.cloud.router:
    cloud: mycloud
    state: present
    name: router2
    network: ext_network1
    interfaces:
      - net: private-net
        subnet: private-subnet
        portip: 10.1.1.10
      - project-subnet

# Create another router with two internal subnet interface. one with  user defined port
# ip and and another  with default gateway.
- openstack.cloud.router:
    cloud: mycloud
    state: present
    name: router2
    network: ext_network1
    interfaces:
      - net: private-net
        subnet: private-subnet
        portip: 10.1.1.10
      - project-subnet

# Update existing router1 external gateway to include the IPv6 subnet.
# Note that since 'interfaces' is not provided, any existing internal
# interfaces on an existing router will be left intact.
- openstack.cloud.router:
    cloud: mycloud
    state: present
    name: router1
    network: ext_network1
    external_fixed_ips:
      - subnet: public-subnet
        ip: 172.24.4.2
      - subnet: ipv6-public-subnet
        ip: 2001:db8::3

# Delete router1
- openstack.cloud.router:
    cloud: mycloud
    state: absent
    name: router1

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие — поля, уникальные для данного модуля:

Ключ Возвращаемое значение Описание
router
сложный
При успехе, когда state — 'present'
Словарь, описывающий маршрутизатор.

admin_state_up
boolean
успешно
Административное состояние маршрутизатора.

Пример:
True
external_gateway_info
словарь
успешно
Параметры внешней шлюзовой точки.

Пример:
{'enable_snat': True, 'external_fixed_ips': [{'ip_address': '10.6.6.99', 'subnet_id': '4272cb52-a456-4c20-8f3c-c26024ecfa81'}]}
id
строка
успешно
Идентификатор маршрутизатора.

Пример:
474acfe5-be34-494c-b339-50f06aa143e4
name
строка
успешно
Имя маршрутизатора.

Пример:
router1
routes
список / элементы=строка
успешно
Дополнительная конфигурация маршрутов для L3 маршрутизатора.

status
строка
успешно
Статус маршрутизатора.

Пример:
ACTIVE
tenant_id
строка
успешно
Идентификатор арендатора.

Пример:
861174b82b43463c9edc5202aadc60ef


Авторы

  • 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/os_router_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API