說明:這次叢集配置都是在root使用者下進行
1、配置SSH
進入家目錄的.ssh目錄 cd .ssh/
生成秘鑰檔案(公鑰和私鑰)ssh-keygen -t rsa
把公鑰傳給其他客戶機
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