Posso executar um script de shell bash em muitas máquinas simultaneamente?

0

Eu gostaria de executar um script de shell bash em duas ou mais máquinas simultaneamente. Posso executar um script de shell bash em várias máquinas simultaneamente? Eu coloco este script de shell no centos 5.5 e outras máquinas executam isso simultaneamente.

    
por Sai Ye Yan Naing Aye 27.11.2012 / 08:52

1 resposta

2

Minha melhor aposta seria usar o ssh. Para isso, você provavelmente precisará trocar as chaves entre sua máquina mestre (aquela que hospeda o script original) e seus escravos (aqueles que devem rodar o script). Ou seja você precisa fazer ssh-keygen no master e anexar o conteúdo de ~ / .ssh / id_rsa.pub (ou id_dsa.pub) no master para ~ / .ssh / authorized_keys em cada escravo. Então você pode executar um script sentado no mestre em cada escravo assim:

ssh remote_user@slave_machine 'bash -s' < local_script.sh

(que é roubado de esta resposta ).
Se você tem uma lista de máquinas escravas, você pode repetir isso em cada uma assim:

slaves = slaveA slaveB ...
for slave in slaves; do
    ssh remote_user@${slave} 'bash -s' < local_script.sh
done

Espero que ajude.

    
por 27.11.2012 / 09:08