Ubuntu系統上集羣之間ssh實現無密碼登錄

準備條件:

安裝ssh-server
sudo apt-get install openssh-server
安裝ssh-client
sudo apt-get install openssh-client


這個操作是要讓Master節點可以無密碼SSH登陸到Slave節點上。

首先生成 Master 的公匙,在 Master 節點終端中執行:

cd ~/.ssh                # 如果沒有該目錄,先執行一次ssh localhost

ssh-keygen -t rsa              # 一直按回車就可以,生成的密鑰保存爲.ssh/id_rsa

Master 節點需能無密碼 ssh 本機,這一步還是在 Master 節點上執行:

cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys

完成後可以使用 ssh Master 驗證一下。接着將公匙傳輸到 Slave1 節點:

scp ~/.ssh/id_rsa.pubhadoop@Slave1:/home/hadoop/

scp時會要求輸入Slave1hadoop用戶的密碼(hadoop),輸入完成後會提示傳輸完畢。

接着在 Slave1節點 上將ssh公匙保存到相應位置,執行

cat ~/id_rsa.pub >>~/.ssh/authorized_keys

如果有其他 Slave 節點,也要執行將公匙傳輸到 Slave 節點、在 Slave 節點上加入授權這兩步。

最後在 Master 節點上就可以無密碼SSHSlave1節點了。

ssh Slave1


可能會遇到slave節點在登錄“~/.ssh”提示不是一個文件夾或者文件夾不存在的現象,可以先通過ssh-keygen -t rsa 一路回車,就可以在主機上創建一個文件夾,就可以實現登錄了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章