Spec-Zone.ru › Ansible 2.7

cv_server_provision – Настройка порта сервера путём применения или удаления шаблона конфигурации для портала Arista CloudVision, который применяется к коммутатору.

Новое в версии 2.4.

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

Обзор

  • Этот модуль позволяет команде серверного отдела настраивать сетевые порты серверов для новых серверов без необходимости доступа к Arista CVP или обращения к команде сетевых администраторов. Предоставьте информацию для подключения к CVP, стойке коммутатора, порту, к которому подключен новый сервер, необязательный VLAN и действие, и модуль применит конфигурацию к порту коммутатора через CVP. Действия: добавить (применяет шаблон конфигурации к порту), удалить (восстанавливает исходную конфигурацию интерфейса) и показать (возвращает текущую конфигурацию порта).

Требования

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

  • Jinja2
  • cvprac >= 0.7.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
action
-
    Варианты:
  • show ←
  • add
  • remove
Действие, которое должен выполнить модуль. Действия: add, которое применяет указанный шаблон конфигурации к порту, remove, которое сбрасывает указанную конфигурацию интерфейса, и show, которое вернёт текущую конфигурацию порта без изменений.
auto_run
boolean
    Варианты:
  • no ←
  • yes
Флаг, определяющий, будет ли модуль выполнять задачу CVP, запущенную в результате изменений в конфигурации коммутатора. При выполнении действия add или remove, приводящего к изменению конфигурации коммутатора, CVP запустит задачу, которую необходимо выполнить, чтобы конфигурация была применена к коммутатору. Если этот параметр имеет значение True, модуль определит номер задачи, созданной изменением конфигурации, выполнит её и дождётся завершения задачи. Если параметр имеет значение False, задача останется в состоянии «Ожидание» в CVP для проверки и выполнения сетевым администратором.
host
- / обязательно
Имя хоста или IP-адрес узла CVP, с которым устанавливается подключение.
password
- / обязательно
Пароль пользователя, который будет использоваться для подключения к CVP для API-вызовов.
port
-
Номер порта, который будет использоваться при выполнении API-вызовов узлу CVP. По умолчанию используется порт по умолчанию для указанного протокола. Порт 80 для http и порт 443 для https.
port_vlan
-
VLAN, который должен быть применён к порту для этого сервера. Этот параметр зависит от правильного шаблона, поддерживающего однозначное выделение VLAN. Если указанный порт VLAN не поддерживается указанным шаблоном, модуль завершится без изменений. Если шаблон требует указания порта VLAN, но порт VLAN не указан, модуль завершится без изменений.
protocol
-
    Варианты:
  • https ←
  • http
Протокол, который будет использоваться при выполнении API-вызовов узлу CVP. По умолчанию в CVP используется https, и более новые версии CVP больше не поддерживают http.
server_name
- / обязательно
Имя хоста или идентификатор сервера, порт коммутатора которого настраивается.
switch_name
- / обязательно
Имя хоста коммутатора, для которого настраивается конфигурация сервера.
switch_port
- / обязательно
Физический номер порта коммутатора, к которому подключен новый сервер.
template
- / обязательно
Путь к файлу шаблона в формате Jinja, содержащий блок конфигурации, который будет применён к указанному порту коммутатора. В этом шаблоне переменные поля будут заменены модулем перед применением к конфигурации коммутатора.
username
- / обязательно
Имя пользователя, который будет использоваться для подключения к CVP для выполнения API-вызовов.

Примеры

- name: Get current configuration for interface Ethernet2
  cv_server_provision:
    host: cvp_node
    username: cvp_user
    password: cvp_pass
    protocol: https
    server_name: new_server
    switch_name: eos_switch_1
    switch_port: 2
    template: template_file.j2
    action: show

- name: Remove existing configuration from interface Ethernet2. Run task.
  cv_server_provision:
    host: cvp_node
    username: cvp_user
    password: cvp_pass
    protocol: https
    server_name: new_server
    switch_name: eos_switch_1
    switch_port: 2
    template: template_file.j2
    action: remove
    auto_run: True

- name: Add template configuration to interface Ethernet2. No VLAN. Run task.
  cv_server_provision:
    host: cvp_node
    username: cvp_user
    password: cvp_pass
    protocol: https
    server_name: new_server
    switch_name: eos_switch_1
    switch_port: 2
    template: single_attached_trunk.j2
    action: add
    auto_run: True

- name: Add template with VLAN configuration to interface Ethernet2. Run task.
  cv_server_provision:
    host: cvp_node
    username: cvp_user
    password: cvp_pass
    protocol: https
    server_name: new_server
    switch_name: eos_switch_1
    switch_port: 2
    port_vlan: 22
    template: single_attached_vlan.j2
    action: add
    auto_run: True

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

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

Ключ Возвращаемое значение Описание
changed
boolean
успех
Указывает, были ли внесены изменения в конфигурацию configlet

Пример:
True
currentConfigBlock
строка
при action = show
Текущий блок конфигурации для указанного пользователем интерфейса

Пример:
interface Ethernet4 !
fullConfig
строка
при action = add или remove
Полная конфигурация configlet после обновления

Пример:
! interface Ethernet3 ! interface Ethernet4 !
newConfigBlock
строка
при action = add или remove
Новый блок конфигурации для указанного пользователем интерфейса

Пример:
interface Ethernet3 description example no switchport !
oldConfigBlock
строка
при action = add или remove
Текущий блок конфигурации для указанного пользователем интерфейса до внесения изменений

Пример:
interface Ethernet3 !
portConfigurable
boolean
успех
Указывает, есть ли у указанного пользователем порта запись в configlet, к которой Ansible имеет доступ

Пример:
True
switchConfigurable
boolean
успех
Указывает, применен ли configlet к указанному пользователем коммутатору, который CVP разрешено редактировать

Пример:
True
switchInfo
словарь
успех
Информация от CVP, описывающая коммутатор, который настраивается

Пример:
{'architecture': 'i386', 'bootupTimeStamp': 1491264298.21, 'complianceCode': '0000', 'complianceIndication': 'NONE', 'deviceInfo': 'Registered', 'deviceStatus': 'Registered', 'fqdn': 'veos1', 'hardwareRevision': '', 'internalBuildId': '12-12', 'internalVersion': '4.17.1F-11111.4171F', 'ipAddress': '192.168.1.20', 'isDANZEnabled': 'no', 'isMLAGEnabled': 'no', 'key': '00:50:56:5d:e5:e0', 'lastSyncUp': 1496432895799, 'memFree': 472976, 'memTotal': 1893460, 'modelName': 'vEOS', 'parentContainerId': 'container_13_5776759195930', 'serialNumber': '', 'systemMacAddress': '00:50:56:5d:e5:e0', 'taskIdList': [], 'tempAction': None, 'type': 'netelement', 'unAuthorized': False, 'version': '4.17.1F', 'ztpMode': 'false'}
taskCompleted
boolean
при action = add или remove, и auto_run = true, и изменения конфигурации
Указывает, успешно ли завершилась задача, созданная и выполненная

Пример:
True
taskCreated
boolean
при action = add или remove, и auto_run = true или false, и изменения конфигурации
Указывает, была ли создана задача из-за изменений в configlet

Пример:
True
taskExecuted
boolean
при action = add или remove, и auto_run = true, и изменения конфигурации
Указывает, выполнила ли автоматизация запущенную задачу

Пример:
True
taskId
строка
при action = add или remove, и auto_run = true или false, и изменения конфигурации
Идентификатор задачи, созданной CVP из-за изменений в configlet

Пример:
500
updateConfigletResponse
строка
при action = add или remove и изменения конфигурации
Ответ, возвращённый CVP при срабатывании обновления configlet

Пример:
Configlet veos1-server успешно обновлён и задача инициирована.


Статус

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

Авторы

  • EOS+ CS (ansible-dev@arista.com) (@mharista)

Подсказка

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

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

Spec-Zone.ru

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