1 votos

Ejecutar los mismos comandos en varios hosts remotos

Tengo la necesidad de ejecutar algunos comandos simples en varios hosts remotos, luego ver la salida lado a lado. Por ejemplo, podría querer ejecutar:

cd /var/log/server
grep 'UUID: 12345-12345-12345' *.log

A continuación, compruebe que hay 15 líneas devueltas y que todas parecen iguales, a través de una docena de hosts remotos.

¿Qué herramientas están disponibles para ayudarme a hacer esto sin tener que cambiar entre varias pestañas y escribir o copiar/pegar un montón de comandos?

1voto

Si tiene %-% ssh acceso a todos los sistemas remotos, puede ejecutar

for h in user@server1 user@server2 user@server3; do
    echo "===== $h ====="
    ssh "$h" sh -c 'cd /var/log/server; grep "UUID: 12345-12345-12345" *.log'
done

para mostrar los datos en Terminal.

Para realizar automáticamente la comprobación, puede redirigir la salida de cada servidor a su propio archivo y luego usar diff %-% para comprobar si son iguales.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X