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 |
| Когда (Ложь) файл копируется с контроллера Ansible на устройство NXOS. Когда (Истина) файл копируется с удаленного сервера SCP на устройство NXOS. В этом режиме копирование файла инициируется с устройства NXOS. Если файл уже присутствует на устройстве, он будет перезаписан, поэтому операция НЕ идемпотентна. | |
| file_pull_timeout - добавлен в 2.7 | Значение по умолчанию: 300 | Используйте этот параметр для установки таймаута в секундах при передаче больших файлов или при медленном сетевом соединении. | |
| file_system - | Значение по умолчанию: "bootflash:" | Удаленная файловая система устройства. Если опущен, устройства, поддерживающие параметр file_system, будут использовать свои значения по умолчанию. | |
| local_file path | Когда (file_pull - Ложь), это путь к локальному файлу на контроллере Ansible. Локальный каталог должен существовать. Когда (file_pull - Истина), это имя файла, используемое на устройстве NXOS. | ||
| local_file_directory path добавлен в 2.7 | Когда (file_pull - Истина) файл копируется с удаленного сервера SCP на устройство NXOS и записывается в этот каталог на устройстве NXOS. Если каталог не существует, он будет создан в рамках file_system. Это необязательный параметр. Когда (file_pull - Ложь), это не используется. | ||
| provider - | Устаревший Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli. Этот параметр требуется только при использовании NX-API. Для получения дополнительной информации, пожалуйста, ознакомьтесь с руководством NXOS Platform Options. Объект типа dict, содержащий данные подключения. | ||
| auth_pass - добавлен в 2.5.3 | Значение по умолчанию: "none" | Указывает пароль для использования, если требуется переход в привилегированный режим на удаленном устройстве. Если authorize - ложь, то этот аргумент ничего не делает. Если значение не указано в задаче, используется значение переменной окружения 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 - / обязательно | Значение по умолчанию: "cli" | Настраивает транспортное соединение для подключения к удаленному устройству. Аргумент transport поддерживает подключение к устройству по cli (ssh) или nxapi. | |
| use_proxy boolean добавлен в 2.5 |
| Если no, переменные среды http_proxy и https_proxy будут проигнорированы. | |
| use_ssl boolean |
| Настраивает transport для использования SSL, если значение равно true, только когда transport=nxapi, в противном случае это значение игнорируется. | |
| username - | Настраивает имя пользователя для аутентификации подключения к удаленному устройству. Это значение используется для аутентификации входа в CLI или аутентификации nxapi в зависимости от используемого транспорта. Если значение не указано в задаче, используется значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| validate_certs boolean |
| Если no, сертификаты SSL не будут проверены. Это следует использовать только на контролируемых сайтах с использованием самозаверяющих сертификатов. Если аргумент transport не nxapi, это значение игнорируется. | |
| remote_file path | Когда (file_pull - Ложь), это удалённый путь к файлу на устройстве NXOS. Если опущен, используется имя локального файла. Удалённый каталог должен существовать. Когда (file_pull - Истина), это полный путь к файлу на удаленном сервере SCP, который должен быть скопирован на устройство NXOS. | ||
| remote_scp_server - добавлен в 2.7 | Адрес удалённого сервера scp, который используется для извлечения файла. Требуется, если file_pull - Истина. | ||
| remote_scp_server_password - добавлен в 2.7 | Пароль удалённого сервера scp, который используется для извлечения файла. Требуется, если file_pull - Истина. | ||
| remote_scp_server_user - добавлен в 2.7 | Имя пользователя удалённого сервера scp, который используется для извлечения файла. Требуется, если file_pull - Истина. | ||
Примечания
Примечание
- Тестировалось на 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 строка | успех | Путь к локальному файлу. Пример: /путь/к/локальному/файлу |
| 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.7/modules/nxos_file_copy_module.html