Как я могу выдавать параллельные команды удаленным узлам с разными аргументами?

Мне нужно выполнить приложение параллельно на нескольких серверах Ubuntu, предоставляя разные аргументы для разных серверов. Я попытался это сделать, но не смог найти возможное решение. Я даже экспериментировал с ssh / pdsh / parallel, но безуспешно.

Чтобы объяснить сценарий дальше, вот нерабочий пример (с pdsh ), где script.sh должен выполняться на всех трех серверах параллельно, но с разными аргументами. FYI, у меня уже есть открытый / закрытый ssh-key (без пароля).

 pdsh -w server1,server2,server3 -l username script.sh args 

Где args должно быть 1 для server1, 2 для server2 и т. Д.

Я был бы признателен, если кто-то может помочь мне в этом, используя pdsh или какой-либо другой инструмент, доступный в Ubuntu.

One Solution collect form web for “Как я могу выдавать параллельные команды удаленным узлам с разными аргументами?”

Вы можете использовать параллельную версию GNU

Например, для вызова echo с аргументами с 1 по 10 , отправки каждой команды echo на server.example.com или server2.example.net :

 seq 10 | parallel --sshlogin server.example.com,server2.example.net echo 
  • Сообщение SSH, источник команды приветствия после входа
  • rsync без запроса пароля
  • Копировать ввод в буфер обмена через SSH?
  • denyhosts блокирует доступ существующих пользователей от неизвестных (новых) IP-адресов
  • Войдите в систему по ssh, выполните одну команду, и я не хочу покидать bash
  • Почему замена процесса <() не работает с ssh -F
  • Как ускорить X по быстрому соединению? (особенно по ssh)
  • постоянные сеансы ssh без экрана или tmux
  • Как запустить сложный awk-скрипт на удаленной машине?
  • настройка ssh-agent
  • ssh-copy-id висит с 8192-битным ключом
  • Идентификация ключа SSH работает с / usr / sbin / ssh -d, а не с демоном?
  • Linux и Unix - лучшая ОС в мире.