HADOOP(2)設(shè)置主機(jī)名(hostName)和免密碼登陸
設(shè)置主機(jī)名(hostName )和SSH 免密碼登陸修改主機(jī)名(hostName )為了方便起見(jiàn),一般我們需要修改各節(jié)點(diǎn)的主機(jī)名hostName ,這樣有助于我們區(qū)別該節(jié)點(diǎn)電腦的身份。默認(rèn)安裝后所有節(jié)
設(shè)置主機(jī)名(hostName )和SSH 免密碼登陸
修改主機(jī)名(hostName )
為了方便起見(jiàn),一般我們需要修改各節(jié)點(diǎn)的主機(jī)名hostName ,這樣有助于我們區(qū)別該節(jié)點(diǎn)電腦的身份。默認(rèn)安裝后所有節(jié)點(diǎn)的系統(tǒng)內(nèi)hostName 都是localhost.localdomain, 這樣并不能方便我們后面的操作和配置。
接下去以Master 修改hostName 操作為例,說(shuō)明詳細(xì)步驟,Client1和Client2的修改操作雷同:
1,以root 身份登錄Master,
然后用vi 修改/etc/sysconfig/network文件:vi /etc/sysconfig/network 將HOSTNAME=localhost.localdomain改成HOSTNAME=hadoopMaster
2,修改/etc/hosts文件,設(shè)置將hadoopMaster 解析為本機(jī)ip
vi 修改/etc/hosts文件文件:vi /etc/hosts
刪除不需要的,添加192.168.0.150 hadoopMaster
,3, 重啟系統(tǒng):shutdown -r now
重啟后驗(yàn)證
hostName: hostname
結(jié)果顯示hadoopMaster 為成功
驗(yàn)證域名解析:ping
hadoopMaster
結(jié)果顯示 ·····form localhost(192.168.0.150為成功
這樣我們就完成了Master 的hostName 修改,接下去Client1和Client2操作步驟雷同,不再重述。
4,在所有hostName 修改完成后,我們需修改所有節(jié)點(diǎn)的hosts 文件來(lái)保證大家都能互相用hostName 解析到對(duì)方的ip
A 修改Master , 在Master 下用vi 打開(kāi)/etc/hosts: vi /etc/hosts
,將127.0.0.1中hadoopMaster 刪除,然后在后面最加 192.168.0.150 hadoopMaster
192.168.0.151 hadoopClient1
192.168.0.152 hadoopClient2
結(jié)果如圖:
驗(yàn)證:ping hadoopClient1
如果 ·····form localhost(192.168.0.151)為成功 ping hadoopClient2
如果 ·····form localhost(192.168.0.152)為成功
這樣就完成了Master 的域名解析修改工作
B. 修改Client1, 在Client1下用vi 打開(kāi)/etc/hosts: vi /etc/hosts 將Client1和Client 的解析規(guī)則添加進(jìn)去,即后面追加加入:
192.168.0.150 hadoopMaster
192.168.0.151 hadoopClient1
192.168.0.152 hadoopClient2
如圖:
設(shè)置完成后
驗(yàn)證:ping hadoopMaster
如果 ·····form localhost(192.168.0.150)為成功 ping hadoopClient2
如果 ·····form localhost(192.168.0.152)為成功 這樣就完成了Client1的域名解析修改工作
C. 修改Client2, 在Client2下用vi 打開(kāi)/etc/hosts: vi /etc/hosts 將Client1和Client 的解析規(guī)則添加進(jìn)去,即后面追加加入:
192.168.0.150 hadoopMaster
192.168.0.151 hadoopClient1
192.168.0.152 hadoopClient2
如圖:
,設(shè)置完成后
驗(yàn)證:ping hadoopMaster
如果 ·····form localhost(192.168.0.150)為成功
ping hadoopClient1
如果 ·····form localhost(192.168.0.151)為成功
這樣就完成了Clien2的域名解析修改工作
SSH 免密碼登陸
因?yàn)镠adoop 需要通過(guò)SSH 登錄到各個(gè)節(jié)點(diǎn)進(jìn)行操作,我們一般情況下不是直接用root 身份來(lái)安裝hadoop 的,實(shí)際上生產(chǎn)環(huán)境中root 權(quán)限是不容易拿到的,很常規(guī)的是我們會(huì)特地的設(shè)一個(gè)hadoop 用戶,為了安全起見(jiàn)并設(shè)置密碼,所以我們接下去要實(shí)現(xiàn)以下幾個(gè)目標(biāo): 1,為所有的節(jié)點(diǎn)電腦都設(shè)置一個(gè)hadoop 用戶,及設(shè)置密碼
2,為Master 節(jié)點(diǎn)設(shè)置能夠用hadoop 用戶免密碼登陸本機(jī),之所有這樣做是因?yàn)槲覀兪怯?jì)劃吧NameNode 和JobTrack 都放在同一臺(tái)電腦即Master 上,所以我們要實(shí)現(xiàn)Master 用hadoop 用戶免密碼登陸自己。 3,為Master 節(jié)點(diǎn)設(shè)置能夠用hadoop 用戶ssh 免密碼登陸Client1和Client2, 因?yàn)镃lient1和Client2上要安裝的是dataNode 和TaskTrack
,為所有節(jié)點(diǎn)創(chuàng)建hadoop 用戶:
以Master 為例:
用root 身份登錄Master ,
用useradd 命令創(chuàng)建hadoop 用戶:useradd hadoop
然后用passwd 命令為hadoop 用戶設(shè)置密碼:passwd hadoop
然后測(cè)試用新建的hadoop 用戶即密碼登錄系統(tǒng),如果成功,就完成了用戶添加工作。其他兩個(gè)節(jié)點(diǎn)以同樣的步驟創(chuàng)建hadoop 用戶,不再累述。
Master 節(jié)點(diǎn)設(shè)置能夠用hadoop 用戶免密碼登陸本機(jī) 以root 身份登錄
由于是最小化安裝,默認(rèn)連ssh 客戶端都沒(méi)有轉(zhuǎn),
先用yum 命令安裝ssh 客戶端:yum -y install openssh-clients
安裝完后轉(zhuǎn)用hadoop 身份:su hadoop
然后以hadoop 身份用生成公鑰和私鑰:ssh-keygen -t rsa
此過(guò)程中有提示,直接回車就行了。
完成后我們?cè)?home/hadoop/.ssh/目錄下就能看到生成了公鑰和私鑰:
,接著我們將公鑰寫(xiě)入authorized_keys文件:
cat /home/hadoop/.ssh/id_rsa.pub >> /home/hadoop/.ssh/authorized_keys 修改權(quán)限:chmod 600 authorized_keys
測(cè)試是否要密碼:ssh hadoopMaster
(第一次需要輸入yes ,以后就不用了)
如果能登錄,就ok 了
為Master 節(jié)點(diǎn)設(shè)置能夠用hadoop 用戶ssh 免密碼登陸Client1和Client2
以下操作為讓所有節(jié)點(diǎn)都能免密碼互訪,即Master 能免密碼登陸clinet1,相反client1也能免密碼登陸master, 他們都用hadoop 用戶互相密碼登陸,同樣Master 和client2也是如此
Client1設(shè)置
以root 登陸
因?yàn)樽钚』惭b,所以先轉(zhuǎn)ssh 客戶端:yum -y install openssh-clients
安裝完后轉(zhuǎn)用hadoop 身份:su hadoop
然后以hadoop 身份用生成公鑰和私鑰:ssh-keygen -t rsa
此過(guò)程中有提示,直接回車就行了。
然后將公鑰上傳到Master:
scp /home/hadoop/.ssh/id_rsa.pub hadoop@hadoopMaster:/home/hadoop/.ssh/id_rsa.pubClient1
,然后會(huì)提示輸入Master 機(jī)上hadoop 用戶密碼,正確輸入后就開(kāi)始上傳
Client2設(shè)置
以root 登陸
因?yàn)樽钚』惭b,所以先轉(zhuǎn)ssh 客戶端:yum -y install openssh-clients
安裝完后轉(zhuǎn)用hadoop 身份:su hadoop
然后以hadoop 身份用生成公鑰和私鑰:ssh-keygen -t rsa
此過(guò)程中有提示,直接回車就行了。
然后將公鑰上傳到Master:
scp /home/hadoop/.ssh/id_rsa.pub hadoop@hadoopMaster:/home/hadoop/.ssh/id_rsa.pubClient2 然后會(huì)提示輸入Master 機(jī)上hadoop 用戶密碼,正確輸入后就開(kāi)始上傳
最后設(shè)置Master
以hadoop 用戶登陸
轉(zhuǎn)到hadoop 用戶的.ssh 目錄:cd /home/hadoop/.ssh
將Client1傳過(guò)來(lái)的id_rsa.pubClient1追加到authorized_keys:
cat /home/hadoop/.ssh/id_rsa.pubClient1 >> /home/hadoop/.ssh/authorized_keys
將Client2傳過(guò)來(lái)的id_rsa.pubClient2追加到authorized_keys:
cat /home/hadoop/.ssh/id_rsa.pubClient2 >> /home/hadoop/.ssh/authorized_keys
傳給Client1 追加完成后將authorized_keys傳給Client1和Client2:
scp /home/hadoop/.ssh/authorized_keys hadoop@hadoopClient1:/home/hadoop/.ssh/authorized_keys
傳給Client2
scp /home/hadoop/.ssh/authorized_keys hadoop@hadoopClient2:/home/hadoop/.ssh/authorized_keys
傳完后在Master 測(cè)試是否要密碼:
,至此,免密碼登陸準(zhǔn)備工作完成