以下所介紹的安裝方式都是在線安裝方式,如果你需要連網請參考:Linux:宿主機通過橋接方式連接的VMware內部Linux14.04虛擬機(靜態IP)實現上網方案
- 環境:
OS:Linux Ubuntu14.04 Server X64;
服務器列表:
192.168.1.200 master
192.168.1.201 node1
192.168.1.202 node2
192.168.1.203 node3
- 安裝SSH服務
測試是否安裝了SSH:
sudo ps -e | grep ssh
如果返回包含sshd的進程,就表示已經安裝過openssh-server服務,否則未安裝。
安裝openssh-server服務:
sudo apt-get install openssh-server
如果提示安裝失敗,請執行更新命令:
sudo apt-get update
不過本人在更新過程中遇到問題,執行安裝ssh也出現問題:Package openssh-server is not available, but is referred to by another package.
解決方案請參考:Linux:安裝OpenSSH-Server E:Package openssh-server has no installation candidate
ssh 服務操作命令:
備注:
為了實現各個子節點都可以使用putty連接,把Master,node1,node2,node3都安裝了ssh服務。
而事實上,要是master可以無密碼登錄各個子節點,其他子節點(node1,node2,node3)也必須安裝ssh服務。
- 為Master機器配置SSH無密碼登錄
1)設置master的ssh為無需密碼自動登錄
切換到hadoop賬戶下(保證用戶hadoop可以無需密碼登錄,應為我們后邊安裝hadoop屬於的賬戶是hadoop賬戶)
su - hadoop cd /home/hadoop ssh-keygen -t rsa
然后會遇到三次讓輸入的時候,第一次直接回車,第二次和第三次分別是:讓輸入密碼和確認密碼,我們這里是要實現無密碼登錄。所以以上三次輸入都直接回車,不設置什么密碼,也就是空密碼登錄。
2)之后再/home/hadoop/下會產生一個.ssh的文件夾;ls查看:
3)將公鑰追加到authorized_keys文件中
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
4)master本機使用ssh localhost測試:
第一次會提示是否“Are you sure you want to continue connecting(yes/no)?”,直接輸入yes,下一次輸入ssh localhost就不會在提示了。
5)修改各個節點(master,node1,node2,node3)的hosts:
統計添加如下host列表:
目的,為后邊實現ssh連接使用,不用輸入ip,使用機器名就可以。
6)為了確保master可以無需密碼自動登錄到node1,node2和node3,現在node1,node2和node3上生成authorized_keys。
(依次為三個子節點node1,node2,node3)執行命令:
su hadoop cd /home/hadoop ssh-keygen -t rsa
一路回車,和master安裝方式一樣。
7)復制master上的authorized_keys到三個子節點上(node1,node2,node3):
首先,為了避免權限問題,我們可以事先設置文件和目錄權限:
#設置authorized_keys權限 $ chmod 600 authorized_keys #設置.ssh目錄權限 $ chmod 700 -R .ssh
然后拷貝master上的authorized_keys到三個子節點上(node1,node2,node3)
這里會提示輸入密碼,輸入hadoop賬號密碼就可以了。
8)測試:ssh node1、ssh node2和ssh node3(第一次需要輸入yes)
如果不需要輸入密碼,就表示配置成功,否則配置失敗。
參考資料:
ssh-keygen 的 詳解 :http://blog.csdn.net/wh_19910525/article/details/7433164
Hadoop集群配置(最全面總結):http://blog.csdn.net/hguisu/article/details/7237395