日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

集群分发脚本xsync

發(fā)布時(shí)間:2024/1/3 综合教程 30 生活家
生活随笔 收集整理的這篇文章主要介紹了 集群分发脚本xsync 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

編寫集群分發(fā)腳本xsync

1)scp 安全拷貝

1)定義:

scp可以實(shí)現(xiàn)服務(wù)器與服務(wù)器之間的數(shù)據(jù)拷貝

2)特點(diǎn)

scp會(huì)把整個(gè)文件對(duì)象賦值到目標(biāo)服務(wù)器上

3)基本語法

scp    -r          $pdir/$fname              $user@$host:$pdir/$fname
命令   遞歸       要拷貝的文件路徑/名稱    目的用戶@主機(jī):目的路徑/名稱
例如
scp -r /opt/module/hadoop/*   atguigu@hadoop102:/opt/module

2)rsync(推薦使用)

注:想使用rsync命令,必須提前安裝

安裝語法

yum install rsync

1)特點(diǎn)

只會(huì)對(duì)差異文件進(jìn)行更新,而scp是把所有文件都復(fù)制過去

2)基本語法

rsync    -av       $pdir/$fname              $user@hadoop$host:$pdir/$fname
命令   選項(xiàng)參數(shù)   要拷貝的文件路徑/名稱    目的用戶@主機(jī):目的路徑/名稱
例如
rsync -av /opt/software/* atguigu@hadoop103:/opt/software(這里要寫父目錄的路徑)

選項(xiàng)參數(shù)說明

選項(xiàng) 功能
-a 歸檔拷貝(類似于遞歸)
-v 顯示復(fù)制過程

編寫集群分發(fā)腳本(重點(diǎn))

1)需求:需要將當(dāng)前文件或目錄同步到當(dāng)前集群所有節(jié)點(diǎn)

2)思路

使用原始命令需要發(fā)送N次,可以使用shell腳本,把原始命令放在循環(huán)內(nèi),可以重復(fù)使用

采用rsync實(shí)現(xiàn),因?yàn)閞sync只會(huì)發(fā)送有差異的數(shù)據(jù)

3)實(shí)現(xiàn)腳本

#!/bin/bash
#1. 判斷參數(shù)個(gè)數(shù)
if [ $# -lt 1 ]
then
  echo Not Enough Arguement!
  exit;
fi
#2. 遍歷集群所有機(jī)器
for host in hadoop102 hadoop103 hadoop104
do
  echo ====================  $host  ====================
  #3. 遍歷所有目錄,挨個(gè)發(fā)送
  for file in $@
  do
    #4. 判斷文件是否存在
    if [ -e $file ]
    then
      #5. 獲取父目錄
      pdir=$(cd -P $(dirname $file); pwd)
      #6. 獲取當(dāng)前文件的名稱
      fname=$(basename $file)
      ssh $host "mkdir -p $pdir"
      rsync -av $pdir/$fname $host:$pdir
    else
      echo $file does not exists!
    fi
  done
done

1)修改腳本xsync具有執(zhí)行權(quán)限

[atguigu@hadoop102 bin]$ chmod +x xsync

2)將腳本復(fù)制到/bin中,以便全局調(diào)用

如果當(dāng)前用戶沒有bin目錄,可以手動(dòng)創(chuàng)建

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

腳本編寫完成,可以測試了

總結(jié)

以上是生活随笔為你收集整理的集群分发脚本xsync的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。