Hadoop----集羣搭建指南(上卷)

前言


閱讀本文,需要具備Linux、計算機網絡的基礎知識。所以在文中出現的相關基礎知識,均以鏈接的形式給出,務必理解該鏈接的內容後,繼續閱讀本指南。

集羣搭建的環境多種多樣,本文采用VitualBox安裝5臺虛擬機構建集羣。具體環境:

  • CentOS 6.5 64位
  • VirtualBox 5.1.10 Mac版
  • 本機macOS Sierra 10.12.1 i7 8G內存

單臺裝機


先下載CentOS的iso格式純淨鏡像,可以下載LiveDVD和minimal兩個版本。
本文采用LiveDVD版做演示。

打開virtualbox:

集羣搭建 谷震平

點擊”新建”按鈕:

集羣搭建 谷震平

選擇版本,並命名:

集羣搭建 谷震平

點擊”繼續”按鈕,改內存大小:

集羣搭建 谷震平

點擊”繼續”按鈕,改虛擬硬盤:

集羣搭建 谷震平

點擊“創建”按鈕,改硬盤類型:

關於磁盤類型,參考:https://zhidao.baidu.com/question/1302436594642278379.html
集羣搭建 谷震平

點擊”繼續”按鈕,改存儲方式:

集羣搭建 谷震平

繼續,改文件位置和大小:

集羣搭建 谷震平

點擊”創建”,主界面顯示該機器:

集羣搭建 谷震平

選中該機器,點擊主界面”設置”按鈕:

集羣搭建 谷震平

點擊”系統”,修改”啓動順序”:

集羣搭建 谷震平

點擊”網絡”,修改網卡1:

集羣搭建 谷震平

爲修改網卡2,先關閉該對話框,打開vitualbox管理界面:

集羣搭建 谷震平

點擊偏好設置:

集羣搭建 谷震平

點擊”網絡”:

集羣搭建 谷震平

選擇”僅主機(Host-Only)網絡”:

集羣搭建 谷震平

點擊添加按鈕(右邊綠色按鈕),新增vboxnet1:

這裏寫圖片描述

點擊OK保存,再次選中該虛機(hadoop6),打開主界面的”設置”按鈕,點擊”網絡”,點擊”網卡2”,勾選”啓用網絡連接”,選擇連接方式:

集羣搭建 谷震平

選vboxnet1,則其餘所有節點均需保持一致。點擊OK保存。此時點擊主界面的”啓動”按鈕:

這裏寫圖片描述

選擇Centos的iso文件所在位置,點擊”啓動”。在彈出黑色界面時(有9秒時間),按一次任意的某個鍵,進入Boot界面。選擇第一種安裝方式:verify and boot:

這裏寫圖片描述

按下回車鍵,進入centos系統:

這裏寫圖片描述

雙擊系統桌面的”install to hard drive”:

這裏寫圖片描述

進入安裝界面:

這裏寫圖片描述

一路點擊next按鈕,點擊yes即可。時區選亞洲上海,root賬戶的密碼要牢記。然後,進入等待界面:

這裏寫圖片描述

點擊”close”,關閉安裝界面:

這裏寫圖片描述

關閉該虛擬機,調整系統啓動順序。選中該虛機,點擊”設置”,點擊”系統”,調整”啓動順序”,將”硬盤”放在第一位,將”光驅”放在最後一位:

這裏寫圖片描述

點擊ok保存,再次啓動該虛機,進入設置頁面:

這裏寫圖片描述

一路forward即可,創建用戶名和密碼自己定義:

這裏寫圖片描述

爲集羣選擇同一時間,需要勾選synchronize date and time over the network.防止某個節點掛了以後和其他節點的系統時間不一致:

這裏寫圖片描述

一路forward,點擊finish,進入登陸界面:

這裏寫圖片描述

注:如果採用minimal安裝方法,裝機方式僅有兩處與上述不同:

選第一種安裝方式
這裏寫圖片描述

選skip,跳過檢測
這裏寫圖片描述

其餘過程,同上述LiveDVD版安裝過程。

集羣搭建


重複上述步驟,安裝5臺虛擬機。此時需要配置集羣的網絡:配置網卡,修改hostname,添加host解析,添加普通用戶。

配置網卡

通過上述步驟的裝機方法,每臺機器中都將有兩個網卡eth0和eth1。eth0作爲虛機網絡的公網網口,eth1作爲虛擬機網絡的內網網口。

配置網卡,需要在目錄:/etc/sysconfig/network-scripts下新建以ifcfg-ethX(X是一個數字,從0開始,一般到3結束。)文件。
所以,關於eth0的配置在:/etc/sysconfig/network-scripts/ifcfg-eth0;

關於eth1的配置在:/etc/sysconfig/network-scripts/ifcfg-eth1。

如果有不明白的地方,可以參考下文—-CentOS網絡配置詳解。

配置eth0

在System->Preferences->Network Connections,進行配置。
這裏寫圖片描述

先編輯Auto eth0:
這裏寫圖片描述

連接名修改爲eth0,勾選所有用戶可用,設置IPv4,選擇DHCP即可:
這裏寫圖片描述

點擊Apply,輸入root賬戶驗證即可。

如果採用minimal版本的CentOS安裝,文件配置方法,需要在/etc/sysconfig/network-scripts/ifcfg-eth0中修改:

  • ONBOOT=yes
  • BOOTPROTO=dhcp

其他參數均由系統自動生成:
這裏寫圖片描述

其餘幾臺節點的eth0和上述相同。這樣所有節點的公網IP是相同的。只要宿主機可以上網, 那麼所有節點均可上網。

配置eth1

eth1採用host-only模式,在Manual方法下填寫ip。網段確定在192.168.xx.xx中。
對於5個節點的集羣,主機名爲hadoop1-hadoop5,則ip分別是:

  • 192.168.20.2 hadoop1
  • 192.168.20.3 hadoop2
  • 192.168.20.4 hadoop3
  • 192.168.20.5 hadoop4
  • 192.168.20.6 hadoop5

先編輯Auto eth1, 設置IPv4,選擇Manual,添加ip,子網掩碼,網關:
這裏寫圖片描述

點擊Apply,驗證root賬戶,即可成功。這樣192.168.20.2就分配給這臺機器了(下面說把這臺機器變成hadoop2)。

如果採用minimal版本的CentOS安裝,文件配置方法,需要在/etc/sysconfig/network-scripts/ifcfg-eth1中修改:

  • ONBOOT=yes
  • BOOTPROTO=none
  • IPADDR=192.168.20.2
  • NETMASK=255.255.255.0

其他參數(注意不要配置gateway)均由系統自動生成:
這裏寫圖片描述

其餘幾臺機器同上述配置過程,只需要更改IP(IPADDR參數)即可,子網掩碼和網關(minimal不用配)均相同。

修改hostname

一般是localhost開頭,但是不容易標識機器。改成可標識的。有5臺機器,那麼這5臺機器可以對應hadoop1-5。

修改文件的目錄在: /etc/sysconfig/network
這裏寫圖片描述

將HOSTNAME這個參數改掉即可。對於5個節點,分別在每臺機器上修改爲hadoop1-5。

添加host解析

每臺虛機都有ip,但是ip難記,加個host解析,方便使用。

配置文件在:/etc/hosts

這裏寫圖片描述

先把127.0.0.1改成你已經修改的hostname的值,比如在hadoop1(192.168.20.2)這臺機器上,需要改成:

  • 127.0.0.1 hadoop1
  • ::1 hadoop1

這裏,每個節點是不同的。

所有的節點均需添加內容:

  • 192.168.20.2 hadoop1
  • 192.168.20.3 hadoop2
  • 192.168.20.4 hadoop3
  • 192.168.20.5 hadoop4
  • 192.168.20.6 hadoop5

保存即可。

添加普通用戶

添加普通賬號,比如:deploy,分配給使用者。配置/etc/sudoers文件,使得該賬戶也可以進行sudo操作。

此處較爲簡單,參考下文—-linux的賬戶。

裝機的思考


爲什麼需要兩個網卡?

如果只使用默認的 NAT,會發現一旦宿主機斷開公網,自己的幾臺虛機之間也會無法通。最簡單的解決方案是雙網卡,如下圖所示:

這裏寫圖片描述

爲什麼修改兩次系統啓動順序?

第一次裝機是系統是來自iso文件的(光驅啓動)。每次都從該文件啓動,則無法對系統進行定製修改。將其裝在硬盤上(自己的虛擬硬盤),每次從硬盤啓動即可對系統進行定製修改。

所以,需要改變啓動順序。裝到硬盤後,從硬盤啓動。

linux的賬戶

root賬戶權限太大,必須給開發者一個使用賬戶。

相關鏈接:http://linuxme.blog.51cto.com/1850814/347086/

CentOS網絡配置詳解

包含網絡配置的很多東西:
http://blog.chinaunix.net/uid-26495963-id-3230810.html

結語

筆者目前是數據倉庫、Python、Hadoop的技術棧,以前是一名前端開發人員。2年開發經驗,還有許多要學習的地方。有興趣和我一起提高IT技術的同學,歡迎加入微信羣–小谷的IT圈。掃碼進入:

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章