Linux xcall ejecuta los mismos comandos en lotes en el clúster

Breve introducción

Si desea iniciar un determinado servicio en todo el clúster en lotes, no puede cambiar el software del terminal uno por uno para ejecutar el comando, estará agotado, así que escriba un script y ejecute el comando en el servidor principal, para que cada máquina pueda ejecutarse al mismo tiempo Este pedido ha terminado.

Empezar a escribir

archivo xcall

#!/bin/bash
#在集群的所有机器上批量执行同一条命令

if(($#==0))
then
	echo 请输入您要操作的命令!
	exit
fi

echo 要执行的命令是$*

#循环执行此命令
#我服务器名字是 zjj101 zjj102 zjj103  这里调整你们自己的服务器名字.
for((i=101;i<=103;i++))
do
	echo ---------------------zjj$i-----------------
	ssh zjj$i $*
done 
 

Empieza a usar

zjj101 ejecutar el comando jps

[root@zjj101 soft]# sh xcall jps            
要执行的命令是jps
---------------------zjj101-----------------
22353 NodeManager
90933 DataNode
67060 Jps
41974 RunJar
22105 ResourceManager
90808 NameNode
---------------------zjj102-----------------
18164 Jps
---------------------zjj103-----------------
21151 Jps
[root@zjj101 soft]# ls

Resolución de errores

Si el shell de ejecución aparece en la línea 4: hay un error de sintaxis cerca del símbolo inesperado `` $ '\ r' ', vea el enlace a continuación para
agregar una descripción del enlace

Supongo que te gusta

Origin blog.csdn.net/qq_41489540/article/details/109094840
Recomendado
Clasificación