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

Мне нужно выполнить приложение параллельно на нескольких серверах 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 на серверы по имени хоста без имени домена?
  • Меню Zenity Shell для более 50 серверов, как оставаться в меню сервера?
  • Почему SSH запрашивает мой пароль личного ключа каждый раз
  • ping работает, но не ssh?
  • используя SSH для подключения к удаленному серверу CentOS 5.6, где Firefox работает на сервере очень медленно
  • Способы входа в систему Linux
  • Как длина и ширина терминала передаются через SSH и telnet?
  • CentOS 7 добавляет нового пользователя с привилегиями root
  • undefined symbol в /usr/lib64/libGL.so.1 при использовании ssh
  • Выполняются ли команды через SSH прозрачно администратору удаленного хоста?
  • Время соединения SSH для сервера через брандмауэр?
  • Linux и Unix - лучшая ОС в мире.