Spec-Zone.ru › Ansible

Модуль openstack.cloud.router — Создание или удаление маршрутизаторов из OpenStack

Примечание

Этот модуль входит в коллекцию openstack.cloud (версия 2.2.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить её установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install openstack.cloud. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.

Чтобы использовать его в playbook, укажите: openstack.cloud.router.

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

Описание

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

Требования

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

  • python >= 3.6
  • openstacksdk >= 1.0.0
END_OF_DOCUMENT_MARKER

Параметры

Параметр

Комментарии

api_timeout

целое число

Сколько времени слой сокетов должен ожидать перед истечением времени ожидания для вызовов API. Если это опущено, ничего не будет передано библиотеке requests.

auth

словарь

Словарь, содержащий информацию об авторизации, необходимую стратегии плагина авторизации облака. Для стандартного плагина password он будет содержать auth_url, username, password, project_name и любую информацию о доменах (например, user_domain_name или project_domain_name), если облако их поддерживает. Для других плагинов этот параметр должен содержать любые параметры, необходимые этому плагину авторизации. Этот параметр не нужен, если предоставлен именованное облако или присутствуют переменные окружения OpenStack OS_*.

auth_type

строка

Имя плагина авторизации для использования. Если облако использует что-то кроме парольной аутентификации, здесь должно быть указано имя плагина, и содержимое параметра auth должно быть соответствующим образом обновлено.

ca_cert

псевдонимы: cacert

строка

Путь к пакету CA Cert, который может использоваться для проверки запросов API SSL.

client_cert

псевдонимы: cert

строка

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

client_key

псевдонимы: key

строка

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

cloud

любой

Именованное облако или конфигурация облака для работы с ним. Если cloud — строка, она ссылается на именованную конфигурацию облака, определенную в файле OpenStack clouds.yaml. Предоставляет значения по умолчанию для auth и auth_type. Этот параметр не нужен, если предоставлен auth или присутствуют переменные окружения OpenStack OS_* . Если cloud — словарь, он содержит полную конфигурацию облака, как в разделе clouds.yaml.

enable_snat

булево

Включить атрибут Source NAT (SNAT).

Варианты:

  • false
  • true

external_fixed_ips

список / элементы=словарь

Параметры IP-адреса для внешней сети шлюза. Каждый — словарь с именем или идентификатором подсети (subnet) и IP-адресом для назначения в подсети (ip_address). Если IP не указан, он автоматически назначается из этой подсети.

ip_address

псевдонимы: ip

строка

Фиксированный IP-адрес, который нужно попытаться выделить.

subnet_id

псевдонимы: subnet

строка / обязательный

Подсеть для подключения IP-адреса.

external_gateway_info

словарь

Информация об внешнем шлюзе маршрутизатора

enable_snat

булево

Уникальное имя или идентификатор внешней сети шлюза.

необходимы interfaces или enable_snat.

Варианты:

  • false
  • true

external_fixed_ips

список / элементы=словарь

Параметры IP-адреса для внешней сети шлюза. Каждый — словарь с именем или идентификатором подсети (subnet) и IP-адресом для назначения в подсети (ip_address). Если IP не указан, он автоматически назначается из этой подсети.

ip_address

псевдонимы: ip

строка

Фиксированный IP-адрес, который нужно попытаться выделить.

subnet_id

псевдонимы: subnet

строка / обязательный

Подсеть для подключения IP-адреса.

network

строка

Уникальное имя или идентификатор внешней сети шлюза.

необходимы interfaces или enable_snat.

interface

псевдонимы: endpoint_type

строка

Тип URL конечной точки для извлечения из каталога служб.

Варианты:

  • "admin"
  • "internal"
  • "public" ← (по умолчанию)

interfaces

список / элементы=любой

Список подсетей для подключения к внутреннему интерфейсу маршрутизатора. Шлюз по умолчанию, связанный с подсетью, будет автоматически подключен к внутреннему интерфейсу маршрутизатора. Для задания IP-адреса, отличного от шлюза по умолчанию, параметры передаются в виде словаря с ключами, представляющими собой имя или ID сети (net), имя или ID подсети (subnet) и IP-адрес порта (portip) из сети. Пользовательский portip часто требуется, когда несколько маршрутизаторов необходимо подключить к одной подсети, для которой шлюз по умолчанию уже используется.

is_admin_state_up

псевдонимы: admin_state_up

логическое

Желаемое административное состояние созданного или существующего маршрутизатора.

Варианты:

  • false
  • true ← (по умолчанию)

name

строка / обязательно

Имя, которое нужно присвоить маршрутизатору.

Это свойство маршрутизатора нельзя обновить.

network

строка

Уникальное имя или ID внешней сети шлюза.

Требуется, если указаны external_fixed_ips или enable_snat.

Это свойство маршрутизатора нельзя обновить.

project

строка

Уникальное имя или ID проекта.

Это свойство маршрутизатора нельзя обновить.

region_name

строка

Имя региона.

sdk_log_level

строка

Уровень ведения журнала OpenStackSDK

Варианты:

  • "INFO" ← (по умолчанию)
  • "DEBUG"

sdk_log_path

строка

Путь к файлу журнала OpenStackSDK. Если пусто, журнал не записывается

state

строка

Укажите желаемое состояние ресурса

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

timeout

целое число

Сколько времени Ansible должен ждать запрошенного ресурса.

По умолчанию: 180

validate_certs

псевдонимы: verify

логическое

Требуется ли проверка SSL-запросов API.

До Ansible 2.3 по умолчанию было true.

Варианты:

  • false
  • true

wait

логическое

Должен ли Ansible ждать, пока запрашиваемый ресурс завершит работу.

Варианты:

  • false
  • true ← (по умолчанию)

Примечания

Примечание

  • Можно использовать стандартные переменные среды 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 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 with one
# internal subnet interface.
- openstack.cloud.router:
    cloud: mycloud
    state: present
    name: router1
    network: ext_network1
    external_fixed_ips:
      - subnet: public-subnet
        ip_address: 172.24.4.2
    interfaces:
      - private-subnet

# Create a router with two internal subnet interfaces and a 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 a 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 a 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_address: 172.24.4.2
      - subnet: ipv6-public-subnet
        ip_address: 2001:db8::3

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

Значения возврата

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

Ключ

Описание

маршрутизатор

словарь

Словарь, описывающий маршрутизатор.

Возвращается: при успехе, когда состояние равно ‘present’

availability_zone_hints

список / элементы=строка

Подсказки зоны доступности

Возвращается: успех

availability_zones

список / элементы=строка

Зоны доступности

Возвращается: успех

created_at

строка

Дата и время создания маршрутизатора

Возвращается: успех

описание

строка

Примечания к описанию маршрутизатора

Возвращается: успех

external_gateway_info

словарь

Информация о внешнем шлюзе маршрутизатора.

Возвращается: успех

Пример: {"enable_snat": true, "external_fixed_ips": [{"ip_address": "10.6.6.99", "subnet_id": "4272cb52-a456-4c20-8f3c-c26024ecfa81"}]}

flavor_id

строка

Идентификатор флейвара маршрутизатора

Возвращается: успех

id

строка

Уникальный UUID.

Возвращается: успех

Пример: "474acfe5-be34-494c-b339-50f06aa143e4"

is_admin_state_up

логическое

Административное состояние сети

Возвращается: успех

is_distributed

логическое

Указывает на распределенный маршрутизатор.

Возвращается: успех

is_ha

логическое

Указывает на высокодоступный маршрутизатор.

Возвращается: успех

название

строка

Имя, присвоенное маршрутизатору.

Возвращается: успех

Пример: "router1"

project_id

строка

Идентификатор проекта, связанный с этим маршрутизатором.

Возвращается: успех

revision_number

целое число

Номер ревизии

Возвращается: успех

маршруты

список / элементы=строка

Дополнительная конфигурация маршрутов для L3 маршрутизатора.

Возвращается: успех

состояние

строка

Состояние маршрутизатора.

Возвращается: успех

Пример: "ACTIVE"

метки

список / элементы=строка

Список меток

Возвращается: успех

tenant_id

строка

Идентификатор арендатора-владельца

Возвращается: успех

updated_at

строка

Дата последнего обновления маршрутизатора

Возвращается: успех

Авторы

  • OpenStack Ansible SIG

Ссылки на сборку

  • Система отслеживания ошибок
  • Репозиторий (источники)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/openstack/cloud/router_module.html

Spec-Zone.ru

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