nxos_file_copy – Копирование файла на удалённый устройство NXOS
Новая в версии 2.2.
Краткое описание
- Этот модуль поддерживает два различных рабочего процесса для копирования файла на флеш (или bootflash) устройств NXOS. Файлы могут быть (1) отправлены с контроллера Ansible на устройство или (2) скачаны с удалённого сервера SCP на устройство. Копирование файлов инициируется с устройства NXOS на удалённый сервер SCP. Этот модуль поддерживает только использование подключения
network_cliилиCliтранспорт с подключениемlocal.
Требования
Ниже приведены требования к хосту, на котором выполняется этот модуль.
- paramiko (необходимо, когда file_pull равен False)
- SCPClient (необходимо, когда file_pull равен False)
- pexpect (необходимо, когда file_pull равен True)
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| connect_ssh_port - добавлено в 2.5 | Значение по умолчанию: 22 | Порт SSH для подключения к серверу во время передачи файла | |
| file_pull boolean добавлено в 2.7 |
| Когда (False) файл копируется с контроллера Ansible на устройство NXOS. Когда (True) файл копируется с удалённого сервера SCP на устройство NXOS. В этом режиме копирование файла инициируется с устройства NXOS. Если файл уже присутствует на устройстве, он будет перезаписан, поэтому операция НЕ идемпотентна. | |
| file_pull_timeout - добавлено в 2.7 | Значение по умолчанию: 300 | Используйте этот параметр для установки таймаута в секундах при передаче больших файлов или при медленном сетевом соединении. | |
| file_system - | Значение по умолчанию: "bootflash:" | Удаленная файловая система устройства. Если опущено, устройства, поддерживающие параметр file_system, будут использовать свои значения по умолчанию. | |
| local_file путь | Когда (file_pull равно False), это путь к локальному файлу на контроллере Ansible. Локальный каталог должен существовать. Когда (file_pull равно True), это имя файла, используемое на устройстве NXOS. | ||
| local_file_directory путь добавлено в 2.7 | Когда (file_pull равно True) файл копируется с удалённого сервера SCP на устройство NXOS и записывается в этот каталог на устройстве NXOS. Если каталог не существует, он будет создан в файловой системе. Это необязательный параметр. Когда (file_pull равно False), этот параметр не используется. | ||
| provider словарь | Устарело Начиная с Ansible 2.5, мы рекомендуем использовать connection: network_cli. Этот параметр необходим только при использовании NX-API. Для получения дополнительной информации см. руководство NXOS Platform Options. Объект словаря, содержащий данные подключения. | ||
| auth_pass строка добавлено в 2.5.3 | Указывает пароль, который необходимо использовать для входа в привилегированный режим на удалённом устройстве. Если authorize равно false, то этот аргумент ничего не делает. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| authorize boolean добавлено в 2.5.3 |
| Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| host строка / обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта. | ||
| password строка | Указывает пароль, используемый для аутентификации подключения к удалённому устройству. Это общий аргумент, используемый для транспортов cli или nxapi. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| port целое число | Значение по умолчанию: "0 (использовать общий порт)" | Указывает порт, используемый при создании подключения к удалённому устройству. Это значение применяется к cli или nxapi. Значение порта по умолчанию будет установлено на соответствующий транспортный общий порт, если не указано другое значение в задаче. (cli=22, http=80, https=443). | |
| ssh_keyfile строка | Указывает SSH-ключ, используемый для аутентификации подключения к удалённому устройству. Этот аргумент используется только для транспорта cli. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout целое число добавлено в 2.3 | Значение по умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством при подключении или отправке команд. Если таймаут истечёт до завершения операции, модуль вернёт ошибку. NX-API может медленно реагировать на длительные команды (sh mac, sh bgp и т. д.). | |
| transport строка / обязательно |
| Настраивает транспортное соединение для подключения к удалённому устройству. Аргумент transport поддерживает подключение к устройству через cli (ssh) или nxapi. | |
| use_proxy boolean добавлено в 2.5 |
| Если no, переменные среды http_proxy и https_proxy будут игнорироваться. | |
| use_ssl boolean |
| Настраивает transport для использования SSL, если установлено yes, только когда transport=nxapi, в противном случае это значение игнорируется. | |
| username строка | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации входа в CLI или аутентификации nxapi в зависимости от используемого транспорта. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| validate_certs boolean |
| Если no, сертификаты SSL не будут проверены. Это следует использовать только на сайтах, контролируемых лично, использующих самозаверяемые сертификаты. Если аргумент transport не равен nxapi, это значение игнорируется. | |
| remote_file путь | Когда (file_pull равно False), это путь к удалённому файлу на устройстве NXOS. Если опущено, будет использовано имя локального файла. Удаленный каталог должен существовать. Когда (file_pull равно True), это полный путь к файлу на удалённом сервере SCP, который нужно скопировать на устройство NXOS. | ||
| remote_scp_server - добавлено в 2.7 | Адрес удалённого сервера scp, используемого для извлечения файла. Это требуется, если file_pull равно True. | ||
| remote_scp_server_password - добавлено в 2.7 | Пароль удалённого сервера scp, используемый для извлечения файла. Это требуется, если file_pull равно True. | ||
| remote_scp_server_user - добавлено в 2.7 | Имя пользователя удалённого сервера scp, используемого для извлечения файла. Это требуется, если file_pull равно True. | ||
Примечания
Примечание
- Проверено на NXOS 7.0(3)I2(5), 7.0(3)I4(6), 7.0(3)I5(3), 7.0(3)I6(1), 7.0(3)I7(3), 6.0(2)A8(8), 7.0(3)F3(4), 7.3(0)D1(1), 8.3(0)
- При отправке файлов (file_pull равно False) на устройство NXOS, необходимо включить функцию scp-server.
- При получении файлов (file_pull равно True) на устройство NXOS, функция scp-server не требуется.
- При получении файлов (file_pull равно True) на устройство NXOS, передача не произойдёт, если файл уже присутствует.
- Режим проверки покажет, будет ли скопирован файл.
- Для получения информации об использовании CLI и NX-API, см. Руководство по параметрам платформы NXOS.
- Для получения дополнительной информации об использовании Ansible для управления сетевыми устройствами, см. Сетевое руководство Ansible.
- Для получения дополнительной информации об использовании Ansible для управления устройствами Cisco, см. страницу интеграции Cisco здесь.
Примеры
# File copy from ansible controller to nxos device
- name: "copy from server to device"
nxos_file_copy:
local_file: "./test_file.txt"
remote_file: "test_file.txt"
# Initiate file copy from the nxos device to transfer file from an SCP server back to the nxos device
- name: "initiate file copy from device"
nxos_file_copy:
file_pull: True
local_file: "xyz"
local_filr_directory: "dir1/dir2/dir3"
remote_file: "/mydir/abc"
remote_scp_server: "192.168.0.1"
remote_scp_server_user: "myUser"
remote_scp_server_password: "myPassword"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| local_file строка | успех | Путь к локальному файлу. Пример: /path/to/local/file |
| remote_file строка | успех | Путь к удалённому файлу. Пример: /path/to/remote/file |
| transfer_status строка | успех | Указывает, был ли передан файл. "Нет передачи" или "Отправлено". Если file_pull успешен, устанавливается в "Получено". Пример: Отправлено |
Состояние
- Данный модуль не гарантирует обратную совместимость. [предварительная версия]
- Данный модуль поддерживается командой Ansible Network. [сеть]
Поддержка Red Hat
Дополнительную информацию о поддержке данного модуля Red Hat можно найти в этой статье базы знаний Red Hat.
Авторы
- Jason Edelman (@jedelman8)
- Gabriele Gerbino (@GGabriele)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 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/nxos_file_copy_module.html