Spec-Zone.ru › Ansible 2.8

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

Новая версия 2.0.

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

Обзор

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

Требования

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

  • openstacksdk
  • python >= 2.7

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
admin_state_up
boolean
    Варианты:
  • нет
  • да ←
Желаемое административное состояние созданного или существующего маршрутизатора.
api_timeout
целое число
Сколько времени слой сокетов должен ждать перед таймаутом для вызовов API. Если это опущено, библиотеке запросов ничего не будет передано.
auth
словарь
Словарь, содержащий информацию об авторизации, необходимую стратегии подключаемого модуля авторизации облака. Для стандартного подключаемого модуля password он будет содержать auth_url, username, password, project_name и любую информацию о доменах (например, os_user_domain_name или os_project_domain_name), если облако их поддерживает. Для других подключаемых модулей этот параметр должен содержать любые параметры, которые требуются подключаемому модулю авторизации. Этот параметр не нужен, если указано имя облака или присутствуют переменные среды OpenStack OS_*.
auth_type
строка
Имя подключаемого модуля авторизации для использования. Если облако использует что-то кроме аутентификации по паролю, имя подключаемого модуля должно быть указано здесь, а содержимое параметра auth должно быть соответствующим образом обновлено.
availability_zone
-
Игнорируется. Присутствует для обратной совместимости
ca_cert
строка
Путь к пакету CA Cert, который может использоваться для проверки запросов 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-адреса для внешней сетевой шлюза. Каждый - это словарь с именем или ID подсети (subnet) и IP-адресом для назначения в подсети (ip). Если IP не указан, он автоматически назначается из этой подсети.
interface
строка
добавлено в 2.3
    Варианты:
  • admin
  • internal
  • public ←
Тип URL конечной точки для извлечения из каталога служб.

псевдонимы: endpoint_type
interfaces
-
Список подсетей, которые необходимо подключить к внутреннему интерфейсу маршрутизатора. Шлюз по умолчанию, связанный с подсетью, будет автоматически подключен к внутреннему интерфейсу маршрутизатора. Чтобы предоставить IP-адрес, отличающийся от шлюза по умолчанию, параметры передаются в виде словаря с ключами в виде имени или ID сети (net), имени или ID подсети (subnet) и IP-адреса порта (portip) из сети. Пользовательский заданный portip часто требуется, когда несколько маршрутизаторов необходимо подключить к одной подсети, для которой шлюз по умолчанию уже используется.
name
- / обязательно
Имя маршрутизатора
network
-
Уникальное имя или ID внешней сетевой шлюза.
обязательно, если предоставлены interfaces или enable_snat.
project
-
добавлено в 2.2
Уникальное имя или 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, затем из стандартных переменных среды, а затем из явных параметров в playbooks. Более подробная информация доступна по адресу https://docs.openstack.org/openstacksdk/

Примеры

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

# Create a simple router, not attached to a gateway or subnets for a given project.
- os_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.
- os_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.
- os_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.
- os_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.
- os_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.
- os_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
- os_router:
    cloud: mycloud
    state: absent
    name: router1

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

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

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

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

Пример:
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


Статус

  • Данный модуль не гарантирует обратной совместимости интерфейса. [preview]
  • Данный модуль поддерживается сообществом Ansible. [community]

Авторы

  • David Shrewsbury (@Shrews)

Подсказка

Если вы заметили какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/os_router_module.html

Spec-Zone.ru

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