DKhadoop環境安裝配置步驟詳解
在上一篇的分享文章中我是給大家分享了執行部署hadoop的一些安裝準備工作,這篇接上一篇繼續為大家分享一些個人的學習經驗總結。我學習用的是大快發行版DKHadoop,所以所有的經驗分享都是以DKHadoop為基礎,這裡要先說明一下。個人覺得DKHadoop對新手還是算是很友好的了,新手朋友們可以大快搜索網站下載一個三節點的dkhadoop玩一下看看。
閒話到此結束,本篇重點整理的是伺服器作業系統的配置問題,寫的可能會有點長,需要一點點耐心看的哦!
1.修改許可權
步驟:在準備工作中拷貝安裝包DKHPlantform.zip到主節點/root/目錄後,解壓並修改檔案許可權(檔案所有者可讀可寫可執行,與檔案所有者屬於一個使用者組的其他使用者可讀可執行,其他使用者組可讀可執行)。
命令:
cd /root/
unzip DKHPlantform.zip
chmod -R 755 DKHPlantform
2. 搭建hadoop叢集設定SSH免密登入
步驟:
修改主機名 vi /etc/sysconfig/network reboot
(1)修改本機hosts檔案,寫入對應關係
命令:
vi /etc/hosts
通過按鍵盤上的insert或是I鍵進入編輯模式,編輯完成後按一下Esc鍵然後按一下按Shift+:鍵,輸入wq 後回車就可以儲存。輸入q!後回車則是放棄儲存並退出.
進入編輯模式後,按照規則寫入主機與ip的對應關係(主機名稱dk41是自己命名的,如下圖)例:
192.168.1.41 dk41
192.168.1.42 dk42
192.168.1.43 dk43
編輯完後,儲存退出。把對應關係拷到其他兩臺機器上。
命令:
scp -r /etc/hosts 192.168.1.42:/etc
scp -r /etc/hosts 192.168.1.
(2)執行叢集之間免密前的準備工作
a)執行sshpass.sh的指令碼的時候會去讀sshhosts和sshslaves這兩個檔案,替換sshpass.sh中的master和slave檔案。
修改檔案sshhosts,輸入全部機器的主機名,每行一個主機名(如下圖)
命令:
vi /root/DKHPlantform/autossh/sshhosts
通過按鍵盤上的insert或是I鍵進入編輯模式,編輯完成後按一下Esc鍵然後按一下按Shift+:鍵,輸入wq,後回車就可以儲存。輸入q!後回車則是放棄儲存並退出.
修改檔案sshslaves,寫入除主機名之外的所有機器名(如下圖)
命令:
vi /root/DKHPlantform/autossh/sshslaves
通過按鍵盤上的insert或是I鍵進入編輯模式,編輯完成後按一下Esc鍵然後按一下按Shift+:鍵,輸入wq,後回車就可以儲存。輸入q!後回車則是放棄儲存並退出.
b)執行insExpect.sh,系統會裝兩個rpm包,在執行sshpass.sh的過程中無需再輸密碼和yes,指令碼自動繼續執行。
命令:
cd /root/DKHPlantform/autossh
./insExpect.sh
按照提示多次輸入yes和密碼(如下圖)
c)執行changeMaster.sh指令碼為了清空/root/.ssh目錄下的所有檔案(在/root/DKHPlantform/autossh目錄下),避免在執行sshpass.sh指令碼時產生的新金鑰時與舊的金鑰發生衝突。
命令:
./changeMaster.sh
按照提示輸入(如下圖)
(3)執行叢集免密(SSH)
a)執行SSH:
命令:
cd /root/
./sshpass.sh 密碼
123456為叢集密碼,根據自己實際情況輸入。
b)防止訪問伺服器時某些服務被攔截,需關閉防火牆。
命令:
cd /root/DKHPlantform/autossh
./offIptables.sh
3.安裝雙機熱備份的MySQL
目的:存放Hive的元資料
步驟:
(1)從主節點分發mysql安裝目錄到第二節點
命令:
scp -r /root/DKHPlantform/mysqlInst/ 192.168.1.42:/root/
(2)主節點執行:
命令:
cd /root/DKHPlantform/mysqlInst/
./mysql.sh 1
ssh前往第二臺機器(從節點)並執行:
命令:
cd /root/mysqlInst/
./mysql.sh 2
(3)執行成功之後執行熱備份(兩臺機器上都要執行,兩個ip互換,41上寫42,42上寫41,密碼是Mysql的密碼為:123456。平臺內已經設定好,請勿修改):
命令:
source /etc/profile
./sync.sh 192.168.1.xxx(另一臺mysql地址) root 123456
4.建立資料庫
步驟:
(1)匯入MySQL資料表,只在主節點執行:
命令:
mysql -uroot -p123456 < { 此處為sql檔案,主目錄下檔案: dkh.sql}
如:mysql -uroot -p123456 </root/DKHPlantform/dkh.sql
(2)執行完後檢視一下兩臺mysql的資料表是否存在,從節點檢視執行:
命令:
mysql -uroot -p123456
show databases;