Veja: clusterssh
Só estou querendo saber se existe algum administrador de sistema com a necessidade de executar um comando em vários servidores. Se sim, que técnica você está usando?
Eu cansei de ssh-ing para 3-5 servidores e executei a mesma coisa várias vezes, então estou pensando em tornar minha vida mais fácil.
Além disso, acho que devo criar chaves para não precisar mais digitar senhas (embora esteja usando o root). Depois de 2 anos fazendo isso, eu meio que desenvolvi uma preguiça.
Eu pesquisei no Google, eu sei sobre cssh, pssh, tentakel (este parece legal), e o mais pró-gênero - Puppet (do qual eu acabei de ouvir, não investiu tempo para ler os docs) .
BTW, eu estou usando o XP + putty, então se houver algum putty-cool-thingy disponível, também é bem-vindo. Se não, eu sempre posso ssh para um servidor e de lá começar minha conquista de resto-dos-servidores :) * mal *
Me acerte. Obrigado.
Se você é uma pessoa Ruby, vale a pena considerar Capistrano . Se você está interessado na idéia de Puppet, então cfengine e bcfg2 também merecem uma olhada.
Eu estou realmente gostando de Capistrano para tarefas regulares, embora eu não tenha certeza se estou usando muito bem e provavelmente me beneficiaria de algum treinamento. Para mais tarefas pontuais, recomendo clusterssh.
Dê uma olhada:
É um wrapper em torno do PuTTy que executa uma função semelhante ao Cluster SSH.
O dssh ou o pssh podem fornecer o que você precisa.
Se você tiver as chaves ssh configuradas e instaladas e quiser algo simples:
#!/bin/bash
SRVLST="server1 server2"
for SRV in $SRVLST
do
echo Logging into root\@$SRV
ssh root@$SRV "$1"
done
No entanto, se você realmente quiser controlar as coisas corretamente, deve procurar um utilitário como o Puppet
Se você precisa apenas executar os mesmos comandos em um conjunto de servidores, então eu sugiro clusterssh: eu o uso rotineiramente e funciona muito bem.