LinuxParty
NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.
Si está administrando varios servidores Linux y desea ejecutar varios comandos en todos los servidores Linux, pero no tiene idea de cómo hacerlo. No hay necesidad de preocuparse, en esta sencilla guía de administración de servidores, le mostraremos cómo ejecutar múltiples comandos en múltiples servidores Linux simultáneamente.
Para lograrlo, puede utilizar el programa pssh (parallel ssh) , una utilidad de línea de comandos para ejecutar ssh en paralelo en varios hosts. Con él, puede enviar información a todos los procesos ssh, desde un script de shell.
Requisitos
- 4 herramientas útiles para ejecutar comandos en múltiples servidores Linux
- o también...
- Instale Pssh para ejecutar comandos en varios servidores Linux remotos
Y después.
Crear un script de shell
Por lo tanto, debe comenzar preparando un script que contenga los comandos de Linux que desea ejecutar en los diferentes servidores. En este ejemplo, escribiremos un script que recopilará la siguiente información de varios servidores:
- Comprobar el tiempo de actividad de los servidores
- Comprobar quién ha iniciado sesión y qué está haciendo
- Enumere los 5 principales procesos en ejecución según el uso de la memoria.
Primero cree un script llamado comandos.sh con su editor favorito.
# vi comandos.sh
A continuación, agregue los siguientes comandos al script como se muestra.
#!/bin/bash
############################################## ############################
#Nombre del script: commands.sh
#Descripción: ejecuta múltiples comandos en múltiples servidores
#Autor: Aaron Kili Kisinga
#Correo electrónico: Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
############################################## ############################
echo
# mostrar el tiempo de actividad del sistema
uptime
echo
# mostrar quién está conectado y qué está haciendo
who
echo
# mostrar los 5 mejores procesos por uso de RAM
ps -eo cmd,pid,ppid,%mem,%cpu --sort=-%mem | head -n 6
exit 0
Guarde el archivo y ciérrelo. Luego haga que el script sea ejecutable como se muestra.
# chmod a+x comandos.sh
Crear archivo de hosts PSSH
A continuación, agregue la lista de servidores en los que desea ejecutar los comandos, en un archivo hosts.txt , en el formato [user@]host[:port]
o simplemente proporcione las direcciones IP del servidor.
Pero le sugerimos que use alias ssh que se pueden especificar en el archivo .ssh/config como se explica en cómo configurar conexiones ssh personalizadas para simplificar el acceso remoto.
Este método es más eficiente y confiable, le permite especificar opciones de configuración (como nombre de host, archivo de identificación, puerto, nombre de usuario, etc.) para cada servidor remoto.
A continuación se muestra nuestro archivo de alias de hosts ssh de muestra, también conocido como archivo de configuración ssh específico del usuario.
# vi ~/.ssh/config

Archivo de alias de hosts SSH
Luego, cree un archivo hosts.txt , aquí simplemente puede especificar los alias (nombres definidos usando la palabra clave Host en el archivo .ssh/config ) como se muestra.
# vi hosts.txt
Agregue los alias del servidor.
servidor1 servidor2 servidor3
Ejecute comandos a través de un script en varios servidores Linux
Ahora ejecute el siguiente comando pssh especificando el archivo hosts.txt junto con el script que contiene varios comandos para ejecutar en varios servidores remotos.
# pssh -h hosts.txt -P -I<./comandos.sh
Significado de las banderas utilizadas en el comando anterior:
-h
– Lee el archivo hosts.-P
– Le dice a pssh que muestre la salida a medida que llega.-I
– Lee la entrada y la envía a cada proceso ssh.

Ejecutar múltiples comandos en servidores remotos
¡Eso es todo! En este artículo, mostramos cómo ejecutar múltiples comandos en múltiples servidores en Linux. Puede compartir cualquier pensamiento relacionado con este tema a través de la sección de comentarios a continuación.

-
Linux
- Cambiar la hora en Linux con Chrony
- Cómo instalar y habilitar la finalización automática de Bash
- Cómo configurar FirewallD en distribuciones basadas en RHEL, Fedora, Alma Linux, CentOS, y demás
- Aprenda a usar el comando 'fuser' con ejemplos en Linux
- The Silver Searcher: la herramienta alternativa para búsquedas internas, más rápida que grep en Linux
- Cómo enviar un mensaje a usuarios registrados en la terminal de Linux
- Cómo compilar el kernel de Linux
- Diez años de KaOS Linux
- KaOS Linux celebra 10 años con una nueva versión ISO que incluye una versión preliminar de KDE Plasma 6
- Cómo copiar permisos y propiedad de archivos a otro archivo en Linux
- Agregue colores del arcoíris a la salida de comandos de Linux también cámara lenta
- 7 características y herramientas útiles de seguridad de Linux para principiantes
- LinuxParty ha crecido un 22% el último mes del primer trimestre con respecto al año pasado y ya somos la quinta fuente de Linux
- Crear archivos de dispositivo en Linux usando el comando mknod
- Cómo ejecutar múltiples comandos por lotes en múltiples servidores Linux