#ansible #sftp #scp
#ansible #sftp #scp
Вопрос:
Иногда нам нужно загрузить журналы приложения, которые распределены между несколькими локальными машинами Unix, на сервер поставщика. Все машины являются частью одного и того же инвентаря и могут выполнять архивирование журналов и прямую загрузку архивов.
Сервер работает под управлением Unix и принимает только SCP и SFTP, поэтому synchronize
модуль (который использует rsync
) не будет работать.
Существует a net_put
-module, но, похоже, он предназначен для загрузки на специальные сетевые устройства — пытаясь его использовать, я получаю загадочные ошибки ansible_network_os
…
Я, конечно, могу использовать command
модуль, но разве нет чего-то специально предназначенного для SCP- и / или SFTP-серверов?
Комментарии:
1. Учитывая ваши требования, использование scp или sftp с командным модулем представляется наиболее подходящим решением.
Ответ №1:
Нет, нет модуля для scp или sftp, и я действительно не вижу, чтобы это принесло большую пользу. sftp и scp просты в использовании command
, и базовые команды на самом деле не поддерживают то, что может потребоваться модулю, например, пропустить загрузку, если файл на удаленном компьютере не изменится.
Комментарии:
1. Я мог видеть, как paramiko можно использовать разумно и пропускать загрузки на основе временных меток и размеров файлов (как
rsync
и раньше). Но, если никто еще этого не сделал, я буду использоватьcommand
🙁