1.介紹
使用集群同步腳本對配置文件同步分發
2.操作
1)在/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
2)修改腳本 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