大家好,又见面了,我是你们的朋友全栈君。
1、安装rsync:yum -y install rsync
2、创建xsync文件并进行编辑(最好放到配置过环境变量的目录下)
输入命令:vi /usr/local/spark/spark-standalone/bin/xsync
#! /bin/bash #1 获取输入参数个数,如果没有参数,直接退出 pcount=$# if [ $pcount -lt 1 ] then echo No Enough Arguement! exit; fi
#2. 遍历集群所有机器 for host in spark-master spark-slave-1 spark-slave-2 do echo ==================== $host ==================== #3. 递归遍历所有目录 for file in $@ do #4 判断文件是否存在 if [ -e $file ] then #5. 获取全路径 pdir=$(cd -P $(dirname $file); pwd) echo pdir=$pdir #6. 获取当前文件的名称 fname=$(basename $file) echo fname=$fname #7. 通过ssh执行命令:在$host主机上递归创建文件夹(如果存在该文件夹) ssh $host “source /etc/profile;mkdir -p $pdir” #8. 远程同步文件至$host主机的$USER用户的$pdir文件夹下 rsync -av $pdir/$fname $USER@$host:$pdir else echo $file Does Not Exists! fi done done
注意:这里写映射的主机名称
3、修改脚本 xsync 具有执行权限: chmod -R 777 xsync
4、集群分发 xsync text
5、如果遇到“xsync: /bin/bash^M: 坏的解释器: 没有那个文件或目录”问题
解决方法:https://blog.csdn.net/madman0526/article/details/114664381
6、自己写的一个xsync,需要的可以直接下载,xsync下载。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/137090.html原文链接:https://javaforall.cn