当前位置:   article > 正文

Hadoop集群搭建--创建分发脚本xsync_hadoop xsync

hadoop xsync

关注微信公共号:小程在线

关注CSDN博客:程志伟的博客

一、SCP命令拷贝

1. 在hadoop102上,将hadoop102中/opt/module/jdk1.8.0_212目录拷贝到hadoop103上。

scp -r /opt/module/jdk1.8.0_212 atguigu@hadoop103:/opt/module

输入yes,在输入103的密码。

2.在hadoop103上,将hadoop102中/opt/module/hadoop-3.1.3目录拷贝到hadoop103上。

scp -r atguigu@hadoop102:/opt/module/hadoop-3.1.3 /opt/module/

输入yes,在输入102的密码。

3. 在hadoop103上操作,将hadoop102中/opt/module目录下所有目录拷贝到hadoop104上。

输入102的密码,输入yes,在输入104的密码。

二、创建xsync文件

1.在/home/atguigu/bin目录下创建xsync文件

 添加如下内容:

#!/bin/bash

#1. 判断参数个数

if [ $# -lt 1 ]

then

    echo Not Enough Arguement!

    exit;

fi

#2. 遍历集群所有机器

for host in hadoop102 hadoop103 hadoop104

do

    echo ====================  $host  ====================

    #3. 遍历所有目录,挨个发送

    for file in $@

    do

        #4. 判断文件是否存在

        if [ -e $file ]

            then

                #5. 获取父目录

                pdir=$(cd -P $(dirname $file); pwd)

                #6. 获取当前文件的名称

                fname=$(basename $file)

                ssh $host "mkdir -p $pdir"

                rsync -av $pdir/$fname $host:$pdir

            else

                echo $file does not exists!

        fi

    done

done

 2. 修改脚本 xsync 具有执行权限

[atguigu@hadoop102 bin]$ chmod +x xsync

3.测试脚本

[atguigu@hadoop102 bin]$ xsync /home/atguigu/bin

可以看到在103的机器上新增了bin文件

4. 将脚本复制到/bin中,以便全局调用

[atguigu@hadoop102 bin]$ sudo cp xsync /bin/

5. 同步环境变量配置

sudo /home/atguigu/bin/xsync /etc/profile.d/my_env.sh

此处输入的是root的密码

 让环境变量生效

在103/104上执行:source /etc/profile

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/520004
推荐阅读
相关标签
  

闽ICP备14008679号