Você pode escrever seu próprio script para isso.
#!/bin/bash
ssh server 1 "service apache2 restart"
ssh server 2 "service apache2 restart"
ssh server 3 "service apache2 restart" etc....
Em seguida, basta executar o script.
Eu gostaria de encontrar um programa que mantém uma lista de comandos que podem ser alias para diferentes hosts. por exemplo, temos um servidor de banco de dados e quatro servidores da web. uma tarefa comum é entrar no servidor admin e reiniciar o mysql usando
# ssh dbserver "service mysql restart"
depois, reiniciamos cada um dos servidores da web executando
# ssh webserver1 "service apache2 restart"
# ssh webserver2 "service apache2 restart"
# ssh webserver3 "service apache2 restart"
# ssh webserver4 "service apache2 restart"
Eu gostaria de ter um pacote que rastreie esses comandos e eu possa executá-los da seguinte forma:
# blah dbserver,webserver1-4 "restartServices"
então ele passaria por cada host listado e executaria os comandos necessários para reiniciar os serviços nessas caixas.
Você pode escrever seu próprio script para isso.
#!/bin/bash
ssh server 1 "service apache2 restart"
ssh server 2 "service apache2 restart"
ssh server 3 "service apache2 restart" etc....
Em seguida, basta executar o script.
Isso pode ser feito de algumas maneiras.
Talvez a maneira mais simples seja usar pssh (ssh paralelo).
Se suas necessidades são mais complexas, você pode usar um framework como Fabric ou MCollective .
Parece-me que o que você quer é rundeck . Ele vem com uma interface web agradável, mas também funciona tão bem na linha de comando.
Tags ssh remote-access remote command aliases