1. 程式人生 > >詳細虛擬機器hadoop叢集環境安裝步驟

詳細虛擬機器hadoop叢集環境安裝步驟

要想深入的學習資料分析技術,首要的任務是必須要將hadoop叢集環境搭建起來,可以將hadoop簡化地想象成一個小軟體,通過在各個物理節點上安裝這個小軟體,然後將其執行起來,就是一個hadoop分散式叢集了。

說來簡單,但是應該怎麼做呢?不急,本文的主要目的就是讓新手看了之後也能夠親自動手實施這些過程。由於本人資金不充裕,只能通過虛擬機器來實施模擬叢集環境,雖然說是虛機模擬,但是在虛機上的hadoop的叢集搭建過程也可以使用在實際的物理節點中,思想是一樣的。也如果你有充裕的資金,自己不介意燒錢買諸多電腦裝置,這是最好不過的了。

也許有人想知道安裝hadoop叢集需要什麼樣的電腦配置,這裡只針對虛擬機器環境,下面介紹下我自己的情況:

CPUIntel酷睿雙核 2.2Ghz

記憶體: 4G

硬碟: 320G

系統:xp

老實說,我的本本配置顯然不夠好,原配只有2G記憶體,但是安裝hadoop叢集時實在是很讓人崩潰,本人親身體驗過後實在無法容忍,所以後來再擴了2G,雖然說效能還是不夠好,但是學習嘛,目前這種配置還勉強可以滿足學習要求,如果你的硬體配置比這要高是最好不過的了,如果能達到8G,甚至16G記憶體,學習hadoop表示無任何壓力。

說完電腦的硬體配置,下面說說本人安裝hadoop的準備條件:

1 安裝Vmware WorkStation軟體

有些人會問,為何要安裝這個軟體,這是一個VM公司提供的虛擬機器工作平臺,後面需要在這個平臺上安裝

Linux作業系統。具體安裝過程網上有很多資料,這裡不作過多的說明。

2 在虛擬機器上安裝linux作業系統

在前一步的基礎之上安裝linux作業系統,因為hadoop一般是執行在linux平臺之上的,雖然現在也有windows版本,但是在linux上實施比較穩定,也不易出錯,如果在windows安裝hadoop叢集,估計在安裝過程中面對的各種問題會讓人更加崩潰,其實我還沒在windows上安裝過,呵呵~

在虛擬機器上安裝的linux作業系統為ubuntu10.04,這是我安裝的系統版本,為什麼我會使用這個版本呢,很簡單,因為我用的熟^_^其實用哪個linux系統都是可以的,比如,你可以用centos, redhat, fedora

等均可,完全沒有問題。在虛擬機器上安裝linux的過程也在此略過,如果不瞭解可以在網上搜搜,有許多這方面的資料。

3 準備3個虛擬機器節點

其實這一步驟非常簡單,如果你已經完成了第2步,此時你已經準備好了第一個虛擬節點,那第二個和第三個虛擬機器節點如何準備?可能你已經想明白了,你可以按第2步的方法,再分別安裝兩遍linux系統,就分別實現了第二、三個虛擬機器節點。不過這個過程估計會讓你很崩潰,其實還有一個更簡單的方法,就是複製和貼上,沒錯,就是在你剛安裝好的第一個虛擬機器節點,將整個系統目錄進行復制,形成第二和第三個虛擬機器節點。簡單吧!~~

很多人也許會問,這三個結點有什麼用,原理很簡單,按照hadoop叢集的基本要求,其中一個是master結點,主要是用於執行hadoop程式中的namenodesecondorynamenodejobtracker任務。用外兩個結點均為slave結點,其中一個是用於冗餘目的,如果沒有冗餘,就不能稱之為hadoop了,所以模擬hadoop叢集至少要有3個結點,如果電腦配置非常高,可以考慮增加一些其它的結點。slave結點主要將執行hadoop程式中的datanodetasktracker任務。

所以,在準備好這3個結點之後,需要分別將linux系統的主機名重新命名(因為前面是複製和粘帖操作產生另兩上結點,此時這3個結點的主機名是一樣的),重新命名主機名的方法:

Vim /etc/hostname

通過修改hostname檔案即可,這三個點結均要修改,以示區分。

以下是我對三個結點的ubuntu系統主機分別命名為:master, node1, node2

基本條件準備好了,後面要幹實事了,心急了吧,呵呵,彆著急,只要跟著本人的思路,一步一個腳印地,一定能成功布署安裝好hadoop叢集的。安裝過程主要有以下幾個步驟:

一、            配置hosts檔案

二、            建立hadoop執行帳號

三、            配置ssh免密碼連入

四、            下載並解壓hadoop安裝包

五、            配置namenode,修改site檔案

六、            配置hadoop-env.sh檔案

七、            配置mastersslaves檔案

八、            向各節點複製hadoop

九、            格式化namenode

十、            啟動hadoop

十一、      jps檢驗各後臺程序是否成功啟動

十二、      通過網站檢視叢集情況

下面我們對以上過程,各個擊破吧!~~

一、           配置hosts檔案

先簡單說明下配置hosts檔案的作用,它主要用於確定每個結點的IP地址,方便後續

master結點能快速查到並訪問各個結點。在上述3個虛機結點上均需要配置此檔案。由於需要確定每個結點的IP地址,所以在配置hosts檔案之前需要先檢視當前虛機結點的IP地址是多少,可以通過ifconfig命令進行檢視,如本實驗中,master結點的IP地址為:

        

如果IP地址不對,可以通過ifconfig命令更改結點的物理IP地址,示例如下:

        

通過上面命令可以將IP改為192.168.1.100。將每個結點的IP地址設定完成後,就可以配置hosts檔案了,hosts檔案路徑為;/etc/hosts,我的hosts檔案配置如下,大家可以參考自己的IP地址以及相應的主機名完成配置

 

二、           建立hadoop執行帳號

即為hadoop叢集專門設定一個使用者組及使用者,這部分比較簡單,參考示例如下:

sudo groupadd hadoop    //設定hadoop使用者組

sudo useradd –s /bin/bash –d /home/zhm –m zhm –g hadoop –G admin   //新增一個zhm使用者,此使用者屬於hadoop使用者組,且具有admin許可權。

sudo passwd zhm   //設定使用者zhm登入密碼

su zhm   //切換到zhm使用者中

上述3個虛機結點均需要進行以上步驟來完成hadoop執行帳號的建立。

三、           配置ssh免密碼連入

這一環節最為重要,而且也最為關鍵,因為本人在這一步驟裁了不少跟頭,走了不少彎

路,如果這一步走成功了,後面環節進行的也會比較順利。

SSH主要通過RSA演算法來產生公鑰與私鑰,在資料傳輸過程中對資料進行加密來保障數

據的安全性和可靠性,公鑰部分是公共部分,網路上任一結點均可以訪問,私鑰主要用於對資料進行加密,以防他人盜取資料。總而言之,這是一種非對稱演算法,想要破解還是非常有難度的。Hadoop叢集的各個結點之間需要進行資料的訪問,被訪問的結點對於訪問使用者結點的可靠性必須進行驗證,hadoop採用的是ssh的方法通過金鑰驗證及資料加解密的方式進行遠端安全登入操作,當然,如果hadoop對每個結點的訪問均需要進行驗證,其效率將會大大降低,所以才需要配置SSH免密碼的方法直接遠端連入被訪問結點,這樣將大大提高訪問效率。

         OK,廢話就不說了,下面看看如何配置SSH免密碼登入吧!~~

(1)     每個結點分別產生公私金鑰。

鍵入命令:

以上命令是產生公私金鑰,產生目錄在使用者主目錄下的.ssh目錄中,如下:

Id_dsa.pub為公鑰,id_dsa為私鑰,緊接著將公鑰檔案複製成authorized_keys檔案,這個步驟是必須的,過程如下:

用上述同樣的方法在剩下的兩個結點中如法炮製即可。

(2)     單機迴環ssh免密碼登入測試

即在單機結點上用ssh進行登入,看能否登入成功。登入成功後登出退出,過程如下:

注意標紅圈的指示,有以上資訊表示操作成功,單點回環SSH登入及登出成功,這將為後續跨子結點SSH遠端免密碼登入作好準備。

用上述同樣的方法在剩下的兩個結點中如法炮製即可。

(3)     讓主結點(master)能通過SSH免密碼登入兩個子結點(slave

為了實現這個功能,兩個slave結點的公鑰檔案中必須要包含主結點的公鑰資訊,這樣

master就可以順利安全地訪問這兩個slave結點了。操作過程如下:

如上過程顯示了node1結點通過scp命令遠端登入master結點,並複製master的公鑰檔案到當前的目錄下,這一過程需要密碼驗證。接著,將master結點的公鑰檔案追加至authorized_keys檔案中,通過這步操作,如果不出問題,master結點就可以通過ssh遠端免密碼連線node1結點了。在master結點中操作如下:

由上圖可以看出,node1結點首次連線時需要,“YES”確認連線,這意味著master結點連線node1結點時需要人工詢問,無法自動連線,輸入yes後成功接入,緊接著登出退出至master結點。要實現ssh免密碼連線至其它結點,還差一步,只需要再執行一遍ssh node1,如果沒有要求你輸入”yes”,就算成功了,過程如下:

如上圖所示,master已經可以通過ssh免密碼登入至node1結點了。

node2結點也可以用同樣的方法進行,如下圖:

Node2結點複製master結點中的公鑰檔案

 

Master通過ssh免密碼登入至node2結點測試:

第一次登入時:

 

第二次登入時:

表面上看,這兩個結點的ssh免密碼登入已經配置成功,但是我們還需要對主結點master也要進行上面的同樣工作,這一步有點讓人困惑,但是這是有原因的,具體原因現在也說不太好,據說是真實物理結點時需要做這項工作,因為jobtracker有可能會分佈在其它結點上,jobtracker有不存在master結點上的可能性。

master自身進行ssh免密碼登入測試工作:

 

至此,SSH免密碼登入已經配置成功。

四、下載並解壓hadoop安裝包

關於安裝包的下載就不多說了,不過可以提一下目前我使用的版本為hadoop-0.20.2

這個版本不是最新的,不過學習嘛,先入門,後面等熟練了再用其它版本也不急。而且《hadoop權威指南》這本書也是針對這個版本介紹的。

注:解壓後hadoop軟體目錄在/home/zhm/hadoop

五、配置namenode,修改site檔案

在配置site檔案之前需要作一些準備工作,下載Java最新版的JDK軟體,可以從官網上下載,我使用的jdk軟體版本為:jdk1.7.0_09,我將javaJDK解壓安裝在/opt/jdk1.7.0_09目錄中,接著配置JAVA_HOME巨集變數及hadoop路徑,這是為了方便後面操作,這部分配置過程主要通過修改/etc/profile檔案來完成,在profile檔案中新增如下幾行程式碼:

然後執行:

讓配置檔案立刻生效。上面配置過程每個結點都要進行一遍。

到目前為止,準備工作已經完成,下面開始修改hadoop的配置檔案了,即各種site檔案,檔案存放在/hadoop/conf下,主要配置core-site.xmlhdfs-site.xmlmapred-site.xml這三個檔案。

Core-site.xml配置如下:

Hdfs-site.xml配置如下:

接著是mapred-site.xml檔案:

六、配置hadoop-env.sh檔案

這個需要根據實際情況來配置。

 

七、配置mastersslaves檔案

根據實際情況配置masters的主機名,在本實驗中,masters主結點的主機名為master,

於是在masters檔案中填入:

    同理,在slaves檔案中填入:

 

八、向各節點複製hadoop

node1節點複製hadoop

 

    向node2節點複製hadoop:

這樣,結點node1和結點node2也安裝了配置好的hadoop軟體了。

九、格式化namenode

這一步在主結點master上進行操作:

注意:上面只要出現“successfully formatted”就表示成功了。

十、啟動hadoop

這一步也在主結點master上進行操作:

 

十一、   用jps檢驗各後臺程序是否成功啟動

在主結點master上檢視namenode,jobtracker,secondarynamenode程序是否啟動。

如果出現以上程序則表示正確。

node1node2結點了檢視tasktrackerdatanode程序是否啟動。

先來node1的情況:

 

下面是node2的情況:

程序都啟動成功了。恭喜~~~

十二、   通過網站檢視叢集情況

 

 

至此,hadoop的完全分散式叢集安裝已經全部完成,可以好好睡個覺了。~~

相關推薦

詳細虛擬機器hadoop叢集環境安裝步驟

要想深入的學習資料分析技術,首要的任務是必須要將hadoop叢集環境搭建起來,可以將hadoop簡化地想象成一個小軟體,通過在各個物理節點上安裝這個小軟體,然後將其執行起來,就是一個hadoop分散式叢集了。 說來簡單,但是應該怎麼做呢?不急,本文的主要目的就是讓新手看了之

Centos 7下VMware三臺虛擬機器Hadoop叢集初體驗

一、下載並安裝Centos 7   傳送門:https://www.centos.org/download/      注:下載DVD ISO映象 這裡詳解一下VMware安裝中的兩個過程 網絡卡配置 二、SecureCRT遠端操控 p

虛擬機器中的Ubuntu安裝步驟

* *虛擬機器中的Ubuntu安裝步驟 ** 一、安裝虛擬機器 需要用Linux做開發的卻使用Windows電腦的童鞋們,一般選擇在本機裝雙系統或者安裝虛擬機器,在虛擬機器中安裝Linux環境。使用虛擬機器對本機影響較低而且安裝門檻低,所以我比較喜歡這種方式。安裝虛

hadoop叢集安裝步驟和配置

hadoop是由java語言編寫的,首先我們肯定要在電腦中安裝jdk,配置好jdk的環境,接下來就是安裝hadoop叢集的步驟了,在安裝之前需要建立hadoop使用者組和使用者,另外我此時使用的是一主(master)三從(slave1、slave2、slave3)。 1、 

虛擬機器lspci工具包安裝步驟

摘要:虛擬機器安裝時一般都採用最小化安裝,預設沒有lspci工具。一臺測試虛擬網絡卡效能的虛擬機器,需要lspci工具來檢視網絡卡的型別。本文描述了在一個虛擬機器中安裝lspci工具的具體步驟。 由於要測試虛擬機器上的不同的虛擬網絡卡驅動型別的傳輸效率,所以需要變化虛擬機

從VMware虛擬機器安裝hadoop叢集環境配置詳細說明

虛擬機器安裝 我安裝的虛擬機器版本是VMware Workstation 8.04,自己電腦上安裝的有的話直接在虛擬機器安裝Linux作業系統,沒有的話這裡有我的一個百度雲網盤虛擬機器安裝共享檔案 虛擬機器的具體安裝不再詳細說明了。   Linux作業系統安裝除錯   

Hadoop叢集配置安裝,詳細步驟及講解

**涉及linux命令一定要注意大小寫和空格,linux系統對此敏感** **hadoop叢集的安裝一定要靜下心一步一步來** 1、關閉防火牆(防火牆最好關閉,不然以後linux操作會有很多麻煩) 1)輸入命令: vi etc/selinux/config 其中改為 SELINU

虛擬機器在centos下安裝Eclipse(詳細步驟

一、下載Eclipse並安裝(如果沒有安裝Eclipse) 1.下載地址:http://www.eclipse.org/downloads/?osType=linux。選擇64位下載 2.安裝 1)將下載的壓縮包檔案移動到 /usr/local目錄 sudo

Hadoop叢集環境搭建(雲伺服器,虛擬機器都適用)

為了配置方便,為每臺電腦配置一個主機名: vim /etc/hostname 各個節點中,主節點寫入:master , 其他從節點寫入:slavexx 如果這樣修改不能生效,則繼續如下操作 vim /etc/cloud/cloud.cfg 做preserve_hostname: true 修改 reb

VMware 下Hadoop叢集環境搭建之虛擬機器克隆,Hadoop環境配置

在上一篇我們完成了ContOS網路配置以及JDK的安裝,這一篇將在上一篇的基礎上繼續講解虛擬機器的克隆,hadoop環境搭建 虛擬機器克隆. 利用上一篇已經完成網路配置和jdk安裝的虛擬機器在克隆兩臺虛擬機器. 1. 將擬機hadoop01關機.

搭建VM的虛擬機器hadoop叢集環境

前言 大家都知道,Hadoop的部署方式可分為 單機模式偽分散式完全分散式 本篇主要講解的就是完全分散式。 搭建完全分散式的叢集環境,需要多臺的硬體裝置,作為初學者,為了搭建叢集去買多臺電腦,多少有點不現實,所以這裡我採用的是VM虛擬機器,模擬

基於Virtualbox虛擬機器搭建hadoop叢集環境

1.1安裝centos7 在centos官網下載centos7映象檔案,在Virtualbox軟體中匯入映象檔案進行安裝,本次由於實驗環境限制,只安裝了三臺centos7虛擬機器,分別命名為hadoop1,hadoop2,hadoop3,為保證三臺虛擬機器能夠正常通訊,三臺

【完全分散式Hadoop】(一)從虛擬機器Centos6.5的安裝開始

一、虛擬機器安裝 不做過多介紹,自行去某度搜索 二、Centos6.5配置 1. 關閉防火牆 service iptables stop 關閉防火牆開機啟動 chkconfig iptables off 2. windows中檢視VM8的IPv4 ipconfig -

linux CentOS 7虛擬機器(僅主機模式) 安裝編譯Nginx 流程二(安裝編譯環境)

在上一篇進行了網路的配置:linux CentOS 7虛擬機器(僅主機模式) 安裝編譯Nginx 流程一(網路配置) 有了網路就好辦事了,要安裝Nginx就要有安裝包,安裝包可以到官網下載 我用的穩定版本的 nginx-1.14.0.tar.gz 用上傳工具上傳到CentOS上(工具網上

Centos 7.0 下hadoop叢集模式安裝(以3個節點為例,master,slave1,slave2)超詳細

一、目標: 構建由3臺PC機構成的hadoop環境,安裝完成後使用HDFS、Mapreduce、Hbase等完成一些小例子。 二、硬體需求: 3臺Centos 7.0 系統PC機,每臺PC機4G記憶

【超詳細】在虛擬機器VMware 14.0 安裝Linux系統 CentOS-7(64位作業系統)

資源下載地址VMwaver   下載連結:https://pan.baidu.com/s/1c3GcbTY 密碼:qtbfCentOS-7   (大小因為超過了4G無法上傳雲盤,幫不了你們啦,自行問度娘吧)安裝過程如何安裝VMwaver這裡就不做贅述啦,直接切入正題~這裡找到

vmware虛擬機器上Redhat作業系統安裝arm-linux-gcc交叉編譯環境

1、下載檔案:  安裝包:arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz  下載地址  http://pan.baidu.com/s/1i31c3Kp  2、開始安裝(建議大家新建一個資料夾,例如:ARM),然後將檔案複製到新建的資料夾中

虛擬機器ubuntu18.04環境下hadoop2.9和hive3.0安裝

一、基礎環境和下載環境:ubuntu18,64位虛擬機器:virtualbox5.2下載hadoop2.9.1 https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/下載jdk1.8.0 http://www.or

最新超詳細虛擬機器VMware安裝Kali Linux

    本文講解如何在虛擬機器上安裝Kali Linux,希望對大家有所幫助。    準備:一臺電腦,VMware(VMware安裝教程)一、下載系統映象檔案1.首先下載系統映象,進入kali官網,在Downloads中選擇Download Kali Linux,如下圖所示。

vue開發環境安裝步驟

highlight 查看 project vue 啟動 blog 安裝 模版 gis 前提:vue開發前提是安裝好nodejs後,在nodejs環境下運行 1.npm工具在國內的網絡環境下比較慢 推薦使用淘寶npm鏡像https://npm.taobao.org/