Aquí hay algunos ejemplos que usan los comandos mencionados en otras respuestas:
Puede tomar rangos numéricos, las salidas con el nombre de host primero, parecen realmente mantenidas :
versión más simple:
pdsh -w hostname echo done
salida:
hostname: done
Ejemplo más complicado:
pdsh -w username@hostname[7-8],username@otherhost "sleep 5 && echo done"
salida:
hostname8: done
hostname7: done
otherhost: done
Mac: brew install pdsh
dsh -m user@host,user@host --remoteshell ssh --concurrent-shell -- "sleep 5 && echo done"
necesita una configuración de shell remota; de lo contrario, usará "rsh", que puede o no estar disponible.
Mac: brew install dsh
pssh -i -H user@host -H user@host "sleep 5 && echo done"
Todos pueden tomar una lista de máquinas de un archivo, opcionalmente, también.
Siéntase libre de agregar más ejemplos aquí, es un wiki comunitario
Mac: brew install pssh
El clúster SSH (la "versión solo para Mac" aparentemente tiene dos versiones y la otra está aquí ) en realidad abre "terminales reales" con un terminal grande en la parte inferior que envía información a todos los demás. Entonces es como una interfaz de usuario que lo envía a múltiples.
Ex:
csshX hostname0[1-2] hostname3
luego escriba en el cuadro rojo y se dirige a cada ventana de terminal, una por host, que aparece.
mac: brew install csshx
(una versión anterior pero aún funciona)
también hay un brew install ansible
FWIW