Spec-Zone.ru › Ansible

community.network.cv_server_provision модуль – Подготовка портов сервера путем применения или удаления конфигурации шаблона в конфигулете портала Arista CloudVision, применяемого к коммутатору.

Примечание

Этот модуль является частью коллекции community.network (версия 5.0.3).

Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.network. Для использования этого модуля требуются дополнительные компоненты, см. Требования для получения подробной информации.

Для использования в playbook, укажите: community.network.cv_server_provision.

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

Краткое описание

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

Псевдонимы: network.cloudvision.cv_server_provision

Требования

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

  • Jinja2
  • cvprac >= 0.7.0

Параметры

Параметр

Комментарии

action

строка

Действие, которое должен выполнить модуль. Действиями являются add, который применяет указанную конфигурацию шаблона к порту, remove, который возвращает указанную конфигурацию интерфейса по умолчанию, и show, который вернет текущую конфигурацию порта без изменений.

Варианты:

  • "show" ← (по умолчанию)
  • "add"
  • "remove"

auto_run

логическое

Флаг, определяющий, будет ли модуль выполнять задачу CVP, созданную в результате изменений в конфигулете коммутатора. Когда выполняется действие add или remove, приводящее к изменению конфигулета коммутатора, CVP создает задачу, которую необходимо выполнить для применения конфигурации к коммутатору. Если этот параметр имеет значение True, то модуль определит номер задачи, созданный изменением конфигурации, выполнит его и будет ждать завершения задачи. Если параметр имеет значение False, то задача останется в состоянии «Ожидание» в CVP для проверки и выполнения администратором сети.

Варианты:

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

host

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

Имя хоста или IP-адрес узла CVP, к которому осуществляется подключение.

password

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

Пароль пользователя, который будет использоваться для подключения к CVP для вызовов API.

port

строка

Номер порта, который следует использовать при выполнении вызовов API к узлу CVP. По умолчанию будет использоваться порт по умолчанию для указанного протокола. Порт 80 для http и порт 443 для https.

port_vlan

строка

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

protocol

строка

Протокол, который следует использовать при выполнении вызовов API к CVP. CVP по умолчанию использует https, а более новые версии CVP больше не поддерживают http.

Варианты:

  • "https" ← (по умолчанию)
  • "http"

server_name

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

Имя хоста или идентификатор сервера, сетевой порт которого подготавливается.

switch_name

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

Имя хоста коммутатора, который настраивается для подготавливаемого сервера.

switch_port

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

Номер физического порта на коммутаторе, к которому подключен новый сервер.

template

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

Путь к файлу шаблона в формате Jinja, который содержит блок конфигурации, который будет применен к указанному порту коммутатора. В этом шаблоне переменные поля будут заменены модулем перед применением к конфигурации коммутатора.

username

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

Пользователь, который будет использоваться для подключения к CVP для выполнения вызовов API.

Примеры

- name: Get current configuration for interface Ethernet2
  community.network.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.
  community.network.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.
  community.network.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.
  community.network.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

Указывает, были ли внесены изменения в конфиглет

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

Пример: true

currentConfigBlock

string

Текущий блок конфигурации для указанного пользователем интерфейса

Возвращается: когда action = show

Пример: "interface Ethernet4\n!\n"

fullConfig

string

Полная конфигурация конфиглета после обновления

Возвращается: когда action = add или remove

Пример: "!\ninterface Ethernet3\n!\ninterface Ethernet4\n!\n"

newConfigBlock

string

Новый блок конфигурации для указанного пользователем интерфейса

Возвращается: когда action = add или remove

Пример: "interface Ethernet3\n    description example\n    no switchport\n!\n"

oldConfigBlock

string

Текущий блок конфигурации для указанного пользователем интерфейса до внесения каких-либо изменений

Возвращается: когда action = add или remove

Пример: "interface Ethernet3\n!\n"

portConfigurable

boolean

Указывает, имеет ли указанный пользователем порт запись в конфиглете, к которому у Ansible есть доступ

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

Пример: true

switchConfigurable

boolean

Указывает, применен ли к указанному пользователем коммутатору конфиглет, который CVP может редактировать

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

Пример: true

switchInfo

dictionary

Информация из 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": null, "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, и изменения конфигурации

Пример: true

taskExecuted

boolean

Указывает, выполнила ли автоматизация запущенную задачу

Возвращается: когда action = add или remove, и auto_run = true, и изменения конфигурации

Пример: true

taskId

string

Идентификатор задачи, созданный CVP из-за изменений конфиглета

Возвращается: когда action = add или remove, и auto_run = true или false, и изменения конфигурации

Пример: "500"

updateConfigletResponse

string

Ответ, возвращаемый CVP, когда инициируется обновление конфиглета

Возвращается: когда action = add или remove и изменения конфигурации

Пример: "Configlet veos1-server successfully updated and task initiated."

Авторы

  • EOS+ CS (@mharista)

Ссылки на коллекцию

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

© 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/community/network/cv_server_provision_module.html

Spec-Zone.ru

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