更新時間:2020-12-22 來源:黑馬程序員 瀏覽量:
通過前面的操作,已經(jīng)完成了三臺虛擬機Hadoop01、Hadoop02和Hadoop03的安裝和網(wǎng)絡(luò)配置,雖然這些虛擬機已經(jīng)可以正常使用了,但是依然存在下列問題。
(1)實際工作中,服務(wù)器被放置在機房中,同時受到地域和管理的限制,開發(fā)人員通常不會進入機房操作直接上機操作,而是通過遠程連接服務(wù)器,進行相關(guān)操作。
(2)在集群開發(fā)中,主節(jié)點通常會對集群中各個節(jié)點頻繁的訪問,就需要不斷輸入目標服務(wù)器的用戶名和密碼,這種操作方式非常麻煩并且還會影響集群服務(wù)的連續(xù)運行。
為了解決上述問題,可以通過配置SSH服務(wù)來分別實現(xiàn)遠程登錄和SSH免密登錄功能。接下來,就分別對這兩種服務(wù)配置和說明進行詳細講解。
1.SSH遠程登錄功能配置
SSH為Secure Shell的縮寫,它是一種網(wǎng)絡(luò)安全協(xié)議,專為遠程登錄會話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。通過使用SSH服務(wù),可以把傳輸?shù)臄?shù)據(jù)進行加密,有效防止遠程管理過程中的信息泄露問題。
為了使用SSH服務(wù),服務(wù)器首先必須安裝并開啟相應(yīng)的SSH服務(wù)。在CentOS系統(tǒng)下,可以先執(zhí)行“rpm -qa | grep ssh”指令查看當前機器是否安裝SSH服務(wù),同時使用“ps -e | grep sshd”指令查看SSH服務(wù)是否啟動,如圖1所示。
圖1 查看是否安裝和開啟SSH服務(wù)
從圖1可以看出,CentOS虛擬機已經(jīng)默認安裝并開啟了SSH服務(wù),所以不需要進行額外安裝,就可以進行遠程連接訪問(如果沒有安裝,CentOS系統(tǒng)下可以執(zhí)行“yum install openssh-server”指令進行安裝)。
在目標服務(wù)器已經(jīng)安裝SSH服務(wù),并且支持遠程連接訪問后,在實際開發(fā)中,開發(fā)人員通常會通過一個遠程連接工具來連接訪問目標服務(wù)器。本教材就介紹一個實際開發(fā)中常用的SecureCRT遠程連接工具來演示遠程服務(wù)器的連接和使用。
SecureCRT是一款支持SSH的終端仿真程序,它能夠在Windows操作系統(tǒng)上遠程連接Linux服務(wù)器執(zhí)行操作。本書采用SecureCRT 7.2版本進行介紹說明,讀者可以通過地址 https://www.vandyke.com/download/securecrt/7.2/index.html,自行下載安裝。下載安裝完成后,按照以下操作進行遠程連接訪問。
(1)打開SecureCRT遠程連接工具,單擊導航欄上的【File(文件)】à【Quick Connect(快速連接)】創(chuàng)建快速連接,并根據(jù)虛擬機的配置信息進行設(shè)置,如圖2所示。
圖2 創(chuàng)建快速鏈接
在圖2所示的快速連接設(shè)置中,主要是根據(jù)要連接遠程服務(wù)器設(shè)置了目標主機名為192.168.121.134(即Hadoop01虛擬機的IP地址)和登錄用戶root,而其他相關(guān)設(shè)置通常情況下使用默認值即可。
(2)設(shè)置完快速連接配置后,單擊圖2中的“Connect(連接)”按鈕,會彈出“New Host Key(新建主機秘鑰)”對話框(主要用于秘鑰信息發(fā)送確認),如圖3所示。
圖3 秘鑰信息發(fā)送確認
(3)單擊圖4中的“Accept&Save(接收并保存)”按鈕。保存完畢后,客戶端需要輸入目標服務(wù)器的用戶名和密碼,并且可以勾選“Save password(保存密碼)”按鈕,避免下次連接重復要求輸入密碼,如圖4所示。
圖4 輸入用戶名密碼
(4)在圖5中輸入正確的用戶名和密碼后,單擊“OK(確定)”按鈕,SecureCRT遠程連接工具就會自動連接到遠程目標服務(wù)器,如圖5所示。
圖5 SecureCRT遠程連接到Hadoop01服務(wù)器
進入到圖6所示界面,就表示通過SecureCRT遠程連接服務(wù)器成功,后續(xù)就可以像在虛擬機終端窗口一樣,也可以在該工具客戶端上操作虛擬機。
2.SSH免密登錄功能配置
前面介紹了SSH服務(wù),并實現(xiàn)了遠程登錄功能,而想要實現(xiàn)多臺服務(wù)器之間的免密登錄功能還需要進一步設(shè)置。下面就詳細講解如何配置SSH免密登錄,具體如下。
(1)在需要進行統(tǒng)一管理的虛擬機上(例如后續(xù)會作為Hadoop集群主節(jié)點的Hadoop01)輸入“ssh-keygen -t rsa”指令,并根據(jù)提示,可以不用輸入任何內(nèi)容,連續(xù)按四次Enter鍵確認,接著就會在當前虛擬機的root目錄下生成一個包含有秘鑰文件的.ssh隱藏文件。在虛擬機的root目錄下通過“l(fā)l -a”指令可以查看當前目錄下的所有文件(包括隱藏文件),然后進入到.ssh隱藏目錄,查看當前目錄的文件,如圖6所示。
圖6 .ssh目錄文件
在圖6中,.ssh隱藏目錄下的id_rsa就是生成的Hadoop01私鑰,id_rsa.pub為公鑰。
(2)在生成秘鑰文件的虛擬機Hadoop01上,執(zhí)行相關(guān)指令將公鑰拷貝到需要關(guān)聯(lián)的服務(wù)器上(包括本機)。例如執(zhí)行“ssh-copy-id hadoop02”指令可以將公鑰文件拷貝到主機名為hadoop02的虛擬機上(拷貝到其他服務(wù)器指令只需修改主機名即可),如圖7所示。
圖7 驗證免密登錄
從圖7可以看出,在hadoop01主機上生成的公鑰拷貝到了hadoop02主機上并自動重命名為authorized_keys。當在hadoop01主機上輸入“ssh hadoop02”指令訪問hadoop02主機時就不再需要輸入密碼了。
需要說明的是,上述步驟只是演示了在主機名為hadoop01的機器上生成秘鑰文件,并將公鑰拷貝到hadoop02主機上,實現(xiàn)了hadoop01到hadoop02的單向免密登錄。而本教材后續(xù)將使用前面安裝的主機名為hadoop01、hadoop02和hadoop03主機進行Hadoop集群搭建,因此,還需要在所有機器上進行上述操作。
猜你喜歡