天天看點

HADOOP叢集搭建 - 5 - 叢集檔案分發

說明:這次叢集配置都是在root使用者下進行

1、配置SSH

HADOOP叢集搭建 - 5 - 叢集檔案分發

進入家目錄的.ssh目錄 cd .ssh/

生成秘鑰檔案(公鑰和私鑰)ssh-keygen -t rsa

HADOOP叢集搭建 - 5 - 叢集檔案分發

把公鑰傳給其他客戶機

ssh-copy-id hostname(hostname是主機名),.ssh/目錄下生成authorized_keys檔案

2、scp 安全拷貝

基礎指令格式 scp -r localfile [email protected]:folder

-r 遞歸,localfile本地檔案 或檔案夾,username 目标使用者,hostname目标主機名,folder目标檔案夾

3、rsync 遠端同步工具,指令格式與scp類似

差別:rsync主要用于備份和鏡像,具有速度快、避免複制相同内容和支援符号連結的有點。

          rsync 和 scp 的差別:用 rsync 做檔案的複制要不scp速度快,rsync 隻對差異檔案做更新,scp 是把所有檔案都複制過去。 

4、一個簡單的叢集檔案分發腳本

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

#三台客戶機名稱是 hadoop03/hadoop04/hadoop05
for((host=03; host<=05; host++)); do
   rsync -rvl  $pdir/$fname [email protected]$host:$pdir
done
           

繼續閱讀