大資料 集群分發指令碼

2021-10-13 07:18:59 字數 1696 閱讀 2203

三颱機器已做好網域名稱解析(hadoop102、hadoop103、hadoop104)

scp定義:scp可以實現伺服器與伺服器之間的資料拷貝。(from server1 to server2)

基本語法

# 命令   遞迴       要拷貝的檔案路徑/名稱    目的使用者@主機:目的路徑/名稱

scp -r $pdir/$fname

$user@hadoop

$host

:$pdir/$fname

(3)案例實操

scp -r root@hadoop101:/opt/module root@hadoop103:/opt/module
基本語法

# 命令   選項引數   要拷貝的檔案路徑/名稱    目的使用者@主機:目的路徑/名稱

rsync -rvl $pdir/$fname

$user@hadoop

$host

:$pdir/$fname

選項引數說明選項

功能-r

遞迴-v

顯示複製過程

-l拷貝符號連線

案例實操

把hadoop101機器上的/opt/software目錄同步到hadoop102伺服器的root使用者下的/opt/目錄

rsync -rvl /opt/software/ root@hadoop102:/opt/software
注意:這裡需要安裝rsync命令

yum install

rsync

在/usr/bin目錄下xsync建立檔案,檔案內容如下:

#!/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=

103; host<

105; host++));

doecho ------------------- hadoop$host --------------

rsync -rvl $pdir/$fname

$user@hadoop

$host

:$pdir

done

然後修改檔案執行許可權:

chmod 777 xsync
然後測試一下:

xsync /usr/bin

集群分發指令碼

分發指令碼使用前提 需要讓linux01機器知道linux02和linux03代表的是哪個ip 1 在 usr local bin目錄下建立xsync檔案,檔案內容如下 cd usr local bin vim xsync bin bash 1 獲取輸入引數個數,如果沒有引數,直接退出 pcount...

集群分發指令碼

1 scp定義 scp可以實現伺服器與伺服器之間的資料拷貝。from server1 to server2 2 基本語法 scp r pdir fname user hadoop host pdir fname 命令 遞迴 要拷貝的檔案路徑 名稱 目的使用者 主機 目的路徑 名稱 注意 如果目標目錄...

xsync集群分發指令碼

作用 迴圈複製檔案到所有節點的相同目錄下 第一步cd home 使用者名稱 bin touch xsync vi xsync注意 如果將xsync放到 home 使用者名稱 bin目錄下仍然不能實現全域性使用,可以將xsync移動到 usr local bin目錄下。第二步 bin bash 1 獲...