Linux集群实用脚本

现有三台虚拟机,例如:node2、node3、node4

三台虚拟机配置了免密登录,安装了hadoop等软件。

相关集群实用脚本命令

统一执行jps命令

jpsall

#!/bin/bash
​
for host in node2 node3 node4
do
        echo =============== $host ===============
        ssh $host jps 
done
​

Linux集群实用脚本_第1张图片

统一执行命令

集群统一执行命令,执行的命令通过参数的执行传入,更具有灵活性。

same.sh

#!/bin/bash
​
# 1.获取参数个数,小于1个参数报错
if [ $# -lt 1 ]
then
    echo "No Args command Input..."
    exit ;
fi
​
# 2.获取当前机器的路径
currDir=$pwd
​
# 3.ssh到每一台机器,切换到执行脚本机器的当前目录并执行相应命令,这里执行的命令只支持3个参数,可自己根据实际情况扩展,一般用于查看路径或文件内容
for host in node2 node3 node4
do
        echo =============== $host ===============
        ssh $host "cd $currDir;$1 $2 $3;" 
done
​

例如:统一使用ls命令查看三台机器的/home目录,命令如下

Linux集群实用脚本_第2张图片

统一关机脚本

guanji.sh

#!/bin/bash
​
for host in node4 node3 node2
do
        echo =============== $host ===============
        ssh $host sudo init 0; 
done
​

Linux集群实用脚本_第3张图片

注意:

1.脚本名称可以自定义,但不要与原有命令重复;

2.需要给脚本添加可执行权限;

3.为了能更加方便使用脚本,将脚本所在目录添加到环境变量中。

完成!enjoy it!

你可能感兴趣的:(小技巧,Linux,Hadoop,linux,脚本)