一、主機情況
如下圖所示,集群一共11台機器。編輯每台主機的hosts文件,添加如下內容,方便統一管理。
10.202.62.60 hadoop60
10.202.62.61 hadoop61
10.202.62.62 hadoop62
10.202.62.63 hadoop63
10.202.62.64 hadoop64
10.202.62.65 hadoop65
10.202.62.66 hadoop66
10.202.62.67 hadoop67
10.202.62.68 hadoop68
10.202.62.69 hadoop69
10.202.62.70 hadoop70
二、ssh配置
1.在hadoop60-hadoop70主機上都執行ssh-keygen -t rsa 生成密鑰
ssh-keygen -t rsa
2.將每台主機上將公鑰復制到其中一台主機上,依次登錄各個主機(包含目標主機本身),執行以下命令,機器名字根據自己的情況做調整。
針對以上集群,選擇hadoop60主機作為目標主機,然后依次從hadoop60主機開始到hadoop70,依次執行以下命令。
ssh-copy-id -i id_rsa.pub hadoop60
3.在步驟2指定的目標主機(hadoop60)上執行以下命令,將 authorized_keys 拷貝到除自身外其他所有主機上。
scp authorized_keys hadoop61:~/.ssh/authorized_keys
scp authorized_keys hadoop62:~/.ssh/authorized_keys
scp authorized_keys hadoop63:~/.ssh/authorized_keys
...
scp authorized_keys hadoop70:~/.ssh/authorized_keys
通過以上3個步驟,即可完成linux集群多個主機ssh互相認證。
驗證配置結果,選擇任意一台主機進行ssh認證,結果如下圖。
ssh hadoop62