zoukankan      html  css  js  c++  java
  • CentOS7使用集群同步脚本对文件同步分发

    1.介绍

    使用集群同步脚本对文件同步分发

    2.操作

    1)安装rsync

    [root@hadoop101 ~]$ yum install rsync

    2)在/root目录下创建bin目录,并在bin目录下创建文件xsync,文件内容如下:

    [root@hadoop101 ~]$ mkdir bin
    [root@hadoop101 ~]$ cd bin/
    [root@hadoop101 bin]$ vi xsync

    在该文件中编写如下代码(其中第5步需要按自己集群情况配置分发范围

    #!/bin/bash
    #1 获取输入参数个数,如果没有参数,直接退出
    pcount=$#
    if((pcount==0)); then
    echo no args;
    exit;
    fi
    
    #2 获取文件名称
    p1=$1
    fname=`basename $p1`
    echo fname=$fname
    
    #3 获取上级目录到绝对路径
    pdir=`cd -P $(dirname $p1); pwd`
    echo pdir=$pdir
    
    #4 获取当前用户名称
    user=`whoami`
    
    #5 循环
    for((host=102; host<104; host++)); do
        echo ------------------- hadoop$host --------------
        rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
    done

    3)修改脚本 xsync 具有执行权限

    [root@hadoop101 bin]$ chmod 777 xsync

    3.使用示例

    1)将hadoop101中的JDK和环境变量分发到hadoop102、hadoop103两台主机

    [root@hadoop101 opt]# xsync /opt/module/
    [root@hadoop101 opt]# xsync /etc/profile

    分别在hadoop102、hadoop103上source一下

    [root@hadoop102 ~]$ source /etc/profile
    [root@hadoop103 ~]# source /etc/profile

    2)同步/etc/selinux/config配置文件

    [root@hadoop101 ~]# xsync /etc/selinux/config

    重启hadoop101、hadoop102、hadoop103主机

    [root@hadoop101 ~]# reboot
    [root@hadoop102 ~]# reboot
    [root@hadoop103 ~]# reboot
  • 相关阅读:
    AirFlow性能调优
    AirFlow通过账号密码➕角色权限控制来登陆
    通过Supervisor管理airflow的webserver进程和scheduler进程
    CSS基础一
    html学习
    Linux下MySQL远程链接配置
    搭建Firekylin博客
    Vuejs开发环境搭建及热更新
    templates页面超链接访问Controller方法
    Chrome搜索设置
  • 原文地址:https://www.cnblogs.com/uestc2007/p/14271651.html
Copyright © 2011-2022 走看看