1. 程式人生 > >hadoop伺服器基礎環境搭建之Hadoop伺服器配置教程

hadoop伺服器基礎環境搭建之Hadoop伺服器配置教程

虛擬機器以及Linux系統安裝在之前的兩篇分享中已經詳細的介紹了方法,並且每一步的都配圖了。如果有朋友還是看不懂,那我也愛莫能助了。本篇主要就hadoop伺服器作業系統配置進行詳細說明,hadoop安裝會在下一篇文章中詳細的介紹。

hadoop安裝包用的是大快DKHadoop發行版,個人覺得DKHadoop的安裝過程是比較簡單,關於dkhadoop的安裝在下一次的分享中再詳細介紹吧。下面進入到本篇的主題——伺服器作業系統配置教程

一、安裝包準備

1、虛擬機器分散式安裝(三臺及以上虛擬機器)

若是個人電腦Windows系統或Linux系統,虛擬機器上虛擬的三臺伺服器,則將安裝包拷貝到伺服器上,進行安裝操作即可。

2、物理叢集(三臺及以上實體伺服器)

  1. 外網下載模式
  2. 本地檔案模式

將安裝包檔案直接拷貝到實體伺服器root目錄下,進行安裝操作即可。

3、上傳模式

當伺服器在機房,且無顯示和輸入裝置的情況下,應用該模式。

現將檔案,安裝在本地計算機上(預設為膝上型電腦,在機房現場),並將計算機與伺服器連線,將安裝包install、DKHInstall上傳到伺服器root目錄下。

二、伺服器作業系統配置教程

準備工作完成之後,就要進行伺服器配置操作,首先必須三臺伺服器之間要互相ping通。所謂ping通,就是兩臺裝置之間網路是通的。從一端傳送一個數據包,另一端就能夠收到,就代表兩臺裝置是能夠ping通了。

1、修改許可權

目的:使install、DKHInstall兩個安裝包有可執行的許可權。許可權不足無法執行一些操作。install裡面是指令碼和所有元件,DKHInstall裡面是安裝介面。

步驟:在準備工作中拷貝安裝包 install、DKHInstall到主節點目錄後,修改檔案許可權。首先進入root目錄,安裝目錄 install、DKHInstall的許可權改為:檔案所有者可讀可寫可執行,與檔案所有者屬於一個使用者組的其他使用者可讀可執行,其他使用者組可讀可執行。

命令:

cd /root/

unzip DKHPlantform.zip

chmod -R 755 DKHPlantform

2、搭建Hadoop叢集設定SSH免密登入

目的:Hadoop執行過程中需要管理遠端Hadoop守護程序,在Hadoop啟動以後,NameNode是通過SSH(Secure Shell)來啟動和停止各個DataNode上的各種守護程序的。這就必須在節點之間執行指令的時候是不需要輸入密碼的形式,所以我們需要配置SSH運用無密碼公鑰認證的形式,這樣NameNode使用SSH無密碼登入並啟動DataName程序,同樣原理,DataNode上也能使用SSH無密碼登入到NameNode。

步驟:

(1)修改本機hosts檔案,寫入對應關係

為了區分區域網內的每臺主機,都會給主機配一個主機名,每臺主機之間又是通過IP進行通訊,但IP地址不方便記憶,所以配置主機名和IP對映能夠實現主機之間的快速方便的訪問。

命令:

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.43:/etc

(2)執行叢集之間免密前的準備工作   

執行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!後回車則是放棄儲存並退出.

(3)執行叢集免密工作

命令:

cd /root/DKHPlantform/autossh

./autossh 主節點主機名 叢集密碼

例: ./autossh dk41 123456

(4)關閉防火牆

防止訪問伺服器時某些服務被攔截,需關閉防火牆。

命令:

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

從節點執行:

命令:

cd /root/mysqlInst/

./mysql.sh 2

(3)執行成功之後執行熱備份(兩臺機器上都要執行,兩個ip互換,41上寫42,42上寫41,密碼是MySQL的密碼為:123456。平臺內已經設定好,請勿修改):

命令:

source /etc/profile

./sync.sh 192.168.1.xxx(另一臺mysql地址)

4、 建立資料庫

目的:MySQL是一種關聯資料庫管理系統,關聯資料庫將資料儲存在不同的表中,增加了速度並提高了靈活性。

步驟:

(1)匯入MySQL資料表,只在主節點執行:

命令:

mysql -uroot -p123456 < { 此處為sql檔案,主目錄下檔案: dkh.sql}

如:mysql -uroot -p123456 </root/DKHPlantform/dkh.sql

(2)執行完後檢視一下兩臺mysql的資料表是否存在,從主節點中檢視執行:

命令:

mySQL  -uroot  -p123456
show databases;

use dkh;

show tables;

5、啟動安裝

目的:伺服器配置操作完成之後,啟動DKH。

步驟:執行以下命令。

命令:

cd /root/DKHPlantform/dkh-tomcat*/bin/

./startup.sh

6、本地時間伺服器搭建步驟

沒聯網或者裝系統時時間未同步,需要搭建本地時間伺服器。

(1)搭建內網的ntp伺服器

修改/etc/ntp.conf

命令:

Vim /etc/ntp.conf

通過按鍵盤上的insert或是I鍵進入編輯模式,編輯完成後按一下Esc鍵然後按一下按Shift+:鍵,輸入wq後回車就可以儲存。輸入q!後回車則是放棄儲存並退出.

修改下列三行:

#server 0.centos.pool.ntp.org  

#server 1.centos.pool.ntp.org  

#server 2.centos.pool.ntp.org  

 在檔案最後新增下列兩行:

server  127.127.1.0   

fudge   127.127.1.0 stratum 10

(2)啟動ntp服務

service ntpd start

(3)開機自動啟動

chkconfig ntpd on

(4)客戶端同步時間

命令:

Vim /etc/ntp.conf

通過按鍵盤上的insert或是I鍵進入編輯模式,編輯完成後按一下Esc鍵然後按一下按Shift+:鍵,輸入wq,後回車就可以儲存。輸入q!後回車則是放棄儲存並退出.

在檔案最後新增一行:

*/15 * * * * root ntpdate 192.168.27.35;hwclock -w