xcall.sh集群命令执行脚本

此篇博客介绍如何使用bash脚本批量SSH登录到Hadoop集群的多个节点,执行JPS命令查看进程情况,适用于Hadoop管理员日常监控任务。

#!/bin/bash
for i in haotian@hadoop102 haotian@hadoop103 haotian@hadoop104
do
echo “=========== $i ===========”
ssh $i ‘/opt/module/jdk1.8.0_144/bin/jps’
done

尚硅谷提供的 `xcall` 脚本是一个用于在多台服务器之间批量执行命令的工具,通常用于大数据环境中的集群管理。该脚本的核心功能是通过 SSH 在多台机器上并行执行指定的命令,从而简化集群操作。 ### 功能与使用方法 `xcall` 脚本通常的使用方式如下: ```bash xcall 命令 ``` 例如,可以使用如下命令在所有配置的节点上执行 `jps`: ```bash xcall jps ``` 该命令会在所有配置的远程主机上执行 `jps`,并返回每个主机的输出结果。 ### 脚本配置步骤 1. **拷贝脚本**:将 `xcall.sh` 拷贝到 `/usr/local/bin` 目录下,这样可以在任意路径下调用 `xcall` 命令。 2. **设置权限**:为 `xcall.sh` 添加可执行权限。可以使用如下命令: ```bash chmod 777 xcall.sh ``` 3. **远程拷贝**:将 `xcall.sh` 文件远程拷贝到其它虚拟机的 `/usr/local/bin` 目录下,确保所有节点都具有相同的脚本文件[^1]。 ### 示例脚本内容 以下是一个典型的 `xcall.sh` 脚本内容示例: ```bash #!/bin/bash # 定义要执行的命令 cmd=$@ # 定义主机列表 hosts=("hadoop102" "hadoop103" "hadoop104") # 遍历主机列表并执行命令 for host in ${hosts[@]} do echo ==================== $host ==================== ssh $host "$cmd" done ``` 在该脚本中,`hosts` 数组定义了所有需要执行命令的主机名或 IP 地址,`ssh` 命令用于在远程主机上执行指定的命令。 ### 注意事项 - 在使用 `xcall` 之前,确保所有节点之间的 SSH 免密登录已经配置完成。 - 如果执行脚本时遇到 `command not found` 错误,请在命令前加上 `./`,例如 `./xcall jps` [^5]。 ### 下载链接与资料 尚硅谷的 `xcall` 脚本通常作为课程资料的一部分提供,具体下载方式可能包括: - 从尚硅谷官方提供的百度网盘链接下载,例如在 Kafka 教程中提到的资源链接:[https://pan.baidu.com/s/1cYSSpIlIqBRHlYPxJUmttg](https://pan.baidu.com/s/1cYSSpIlIqBRHlYPxJUmttg) [^2]。 - 在尚硅谷的 GitHub 或 Gitee 仓库中查找相关课程的配套资料。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值