官术网_书友最值得收藏!

3.4.2 無密鑰登錄操作步驟

Hadoop集群需要確保在每一個節點上都能無密鑰登錄到其他節點。

本例在第2章的基礎上繼續使用hadoop用戶進行操作,使用三個節點(centos01、centos02和centos03)配置無密鑰登錄,無密鑰登錄架構如圖3-7所示。

圖3-7 無密鑰登錄架構

具體配置方式有兩種:手動復制和命令復制,下面分別進行講解。

1. 手動復制方式

(1)將各節點的公鑰加入到同一個授權文件中。

1)在centos01節點中,生成密鑰文件,并將公鑰信息加入到授權文件中,所需命令如下:

其中.ssh文件夾為系統隱藏文件夾,若無此目錄,可以執行一次ssh localhost命令,則會生成該目錄。或者直接手動創建該目錄。

2)在centos02節點中,生成密鑰文件,并將公鑰文件遠程復制到centos01節點的相同目錄,且重命名為id_rsa.pub.centos02,相關命令如下:

3)在centos03節點中,執行與centos02相同的操作(生成密鑰文件,并將公鑰文件遠程復制到centos01節點的相同目錄,且重命名為id_rsa.pub.centos03),相關命令如下:

4)回到centos01節點,將centos02和centos03節點的密鑰文件信息都加入到授權文件中,相關命令如下:

(2)復制授權文件到各個節點。

將centos01節點中的授權文件遠程復制到其他節點的相同目錄,命令如下:

(3)測試無密鑰登錄。

接下來可以使用ssh命令測試從一個節點無密鑰登錄到另一個節點。例如,從centos01節點無密鑰登錄到centos02節點,命令如下:

成功登錄后,記得執行exit命令退出登錄。

如果登錄失敗,可能的原因是授權文件authorized_keys權限分配問題,分別在每個節點上執行以下命令,更改文件權限:

到此,各節點的SSH無密鑰登錄就配置完成了。

2. 命令復制方式

ssh-copy-id命令可以把本地主機的公鑰復制并追加到遠程主機的authorized_keys文件中,該命令也會給遠程主機的用戶主目錄(home)、~/.ssh目錄和~/.ssh/authorized_keys設置合適的權限。

(1)分別在三個節點中執行以下命令,生成密鑰文件:

(2)分別在三個節點中執行以下命令,將公鑰信息復制并追加到對方節點的授權文件authorized_keys中:

命令執行過程中需要輸入當前用戶的密碼。

(3)測試SSH無密鑰登錄。

仍然使用ssh命令進行測試登錄即可。具體見本節手動復制方式的步驟(3)。

注意

如果不配置無密鑰登錄,Hadoop集群也是可以正常運行的,只是每次啟動Hadoop都要輸入密碼以登錄到每臺計算機的DataNode(存儲數據的節點)上,而一般的Hadoop集群動輒數百甚至上千臺計算機,因此配置SSH無密鑰登錄是必要的。

主站蜘蛛池模板: 巴楚县| 昌黎县| 沅陵县| 罗城| 江安县| 遂溪县| 阿克陶县| 江达县| 苏尼特右旗| 尼玛县| 弥渡县| 太保市| 五寨县| 商城县| 伊宁市| 凌源市| 桓台县| 新津县| 邻水| 上饶县| 石狮市| 邮箱| 格尔木市| 成安县| 习水县| 工布江达县| 邢台县| 都江堰市| 梁平县| 云阳县| 长宁区| 福州市| 榆林市| 航空| 桂平市| 龙海市| 昭苏县| 宝应县| 嵩明县| 塔城市| 香河县|