Tengo una lista de máquinas Linux, unas 90 aproximadamente.
Estos se guardan en un archivo como Host,USR,PW.
¿Hay alguna manera de leer esta lista y luego conectarme a cada host y ejecutar los comandos X, Y, Z?
En el pasado toqué cada máquina por separado y simplemente ejecuté los comandos a mano.
Toma PARA SIEMPRE. Debe haber una mejor manera.
Respuesta1
El modo por lotes SSH debería ser suficiente. Discutido aquí:http://www.thegeekstuff.com/2009/10/how-to-execute-ssh-and-scp-in-batch-mode-only-when-passwordless-login-is-enabled/
ssh -o "BatchMode yes" ramesh@remote-host who
Para utilizar nombres de usuario y contraseñas, es posible que deba trabajar un poco con expect. Se requiere el uso de claves precompartidas para el modo por lotes.
Respuesta2
Respuesta3
Respuesta4
Echa un vistazo aMColectivode Puppet Labs y el complementoagente shellcmd.