aos_external_router - Управление внешним маршрутизатором AOS
Новая версия 2.3.
Обзор
- Модуль Apstra AOS External Router позволяет легко управлять внешним маршрутизатором. Вы можете создавать и удалять внешние маршрутизаторы по имени, ID или с помощью JSON-файла. Этот модуль идемпотентен и поддерживает режим *проверки*. Он использует REST API AOS.
Требования (к хосту, на котором выполняется модуль)
- aos-pyez >= 0.6.0
Параметры
| параметр | обязателен | значение по умолчанию | возможные значения | комментарии |
|---|---|---|---|---|
| asn | нет | Идентификатор ASN внешнего маршрутизатора. | ||
| content | нет | Структура данных для создания внешнего маршрутизатора. Формат определяется параметром *content_format*. Это та же структура данных, что возвращается при успешном выполнении в *value*. | ||
| id | нет | ID AOS внешнего маршрутизатора для управления (нельзя использовать для создания нового внешнего маршрутизатора). Только один из параметров *name*, *id* или *content* может быть задан. | ||
| loopback | нет | IP-адрес интерфейса Loopback внешнего маршрутизатора. | ||
| name | нет | Имя внешнего маршрутизатора для управления. Только один из параметров *name*, *id* или *content* может быть задан. | ||
| session | да | Существующая сессия AOS, полученная с помощью модуля aos_login. | ||
| state | нет | present |
| Указывает ожидаемое состояние внешнего маршрутизатора (есть или нет). |
Примеры
- name: "Create an External Router"
aos_external_router:
session: "{{ aos_session }}"
name: "my-external-router"
loopback: 10.0.0.1
asn: 65000
state: present
- name: "Check if an External Router exist by ID"
aos_external_router:
session: "{{ aos_session }}"
name: "45ab26fc-c2ed-4307-b330-0870488fa13e"
state: present
- name: "Delete an External Router by name"
aos_external_router:
session: "{{ aos_session }}"
name: "my-external-router"
state: absent
- name: "Delete an External Router by id"
aos_external_router:
session: "{{ aos_session }}"
id: "45ab26fc-c2ed-4307-b330-0870488fa13e"
state: absent
# Save an External Router to a file
- name: "Access External Router 1/3"
aos_external_router:
session: "{{ aos_session }}"
name: "my-external-router"
state: present
register: external_router
- name: "Save External Router into a file in JSON 2/3"
copy:
content: "{{ external_router.value | to_nice_json }}"
dest: external_router_saved.json
- name: "Save External Router into a file in YAML 3/3"
copy:
content: "{{ external_router.value | to_nice_yaml }}"
dest: external_router_saved.yaml
- name: "Load External Router from a JSON file"
aos_external_router:
session: "{{ aos_session }}"
content: "{{ lookup('file', 'resources/external_router_saved.json') }}"
state: present
- name: "Load External Router from a YAML file"
aos_external_router:
session: "{{ aos_session }}"
content: "{{ lookup('file', 'resources/external_router_saved.yaml') }}"
state: present
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантирует обратной совместимости.
Для помощи в разработке модулей, если вам это нужно, ознакомьтесь с Информацией сообщества и участием в разработке, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/aos_external_router_module.html