當前位置:首頁 » 文件傳輸 » Hadoop跨集群訪問配置
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

Hadoop跨集群訪問配置

發布時間: 2022-07-06 04:19:11

1. 配置hadoop分布式集群一台虛擬系統,二台實體系統可以嗎

可以

准備工作

1.安裝虛擬機 VMware Workstation

2.在虛擬機上安裝linux操作系統
這里在虛擬機上安裝的linux操作系統為ubuntu10.04。其實用哪個linux系統都是可以的,比如用centos, redhat, fedora等均可,完全沒有問題。

3.准備3個虛擬節點
如果已經完成第2步,那就已經准備好了第一個虛擬節點。准備第二個和第三個虛擬節點有兩種方法:
method1:分別安裝兩遍linux系統,太繁瑣,放棄。
method2:在剛安裝的第一個虛擬節點,將整個系統目錄復制來形成第二個和第三個虛擬節點。
按照hadoop集群的基本要求,其中一個是master節點,用於運行hadoop程序中的namenode,secondorynamenode和jobtracker任務。另外兩個節點為slave節點,其中一個用於冗餘目的。slave節點用於運行hadoop程序中的datanode和tasktracker任務。所以模擬hadoop集群至少要有3個節點。

4.重命名主機名
因為前面復制粘貼產生的兩個節點和第一個節點的主機名一樣。
重命名主機名:Vim /etc/hostname
以下是我對三個結點的ubuntu系統主機分別命名為:master, node1, node2

6.配置hadoop-env.sh文件

2. 如何構建最優化的Hadoop集群

本文將逐步介紹這些部分的安裝和配置:

•網路體系結構

•操作系統

•硬體要求

•Hadoop軟體安裝/設置

網路架構

根據我們目前能夠拿到的文檔,可以認為雲內的節點越在物理上接近,越能獲得更好的性能。根據經驗,網路延時越小,性能越好。

為了減少背景流量,我們為這個雲創建了一個虛擬專用網。另外,還為應用伺服器們創建了一個子網,作為訪問雲的入口點。

這個虛擬專用網的預計時延大約是1-2毫秒。這樣一來,物理臨近性就不再是一個問題,我們應該通過環境測試來驗證這一點。

建議的網路架構:

•專用TOR(Top of Rack)交換機

•使用專用核心交換刀片或交換機

•確保應用伺服器「靠近」Hadoop

•考慮使用乙太網綁定


為了防止數據丟失,Hadoop會將每個數據塊復制到多個機器上。想像一下,如果某個數據塊的所有拷貝都在同一個機架的不同機器上,而這個機架剛好發生故障了(交換機壞了,或者電源掉了),這得有多悲劇?為了防止出現這種情況,必須要有一個人來記住所有數據節點在網路中的位置,並且用這些知識來確定——把數據的所有拷貝們放在哪些節點上才是最明智的。這個「人」就是Name Node。

另外還有一個假設,即相比不同機架間的機器,同一個機架的機器之間有著更大的帶寬和更小的延時。這是因為,機架交換機的上行帶寬一般都小於下行帶寬。而且(+本站微信networkworldweixin),機架內的延時一般也小於跨機架的延時(但也不絕對)。

機架感知的缺點則是,我們需要手工為每個數據節點設置機架號,還要不斷地更新這些信息,保證它們是正確的。要是機架交換機們能夠自動向Namenode提供本機架的數據節點列表,那就太棒了。


3. 如何搭建hadoop集群 橋接

本文通過在vmware workstation上建立三台虛擬機來搭建hadoop集群環境,其中一台作為namenode,兩台作為datanode。
一、安裝vmware workstation(10.0.0)(一路下一步即可)
二、創建3個虛擬機
每個虛擬機安裝Ubuntu 桌面版(我用的11.10,但是有點老了,建議用12.04或更高版本)
namenode建議多給寫內存,我的是namenode 1G內存,20G硬碟,datanode 800M內存,20G硬碟(我電腦內存8G,若內存不夠可以少分點,但是可能有些卡)上網上式可設置為橋接方式:直接連接物理網路。
三、安裝vmware tools(便於主機和虛擬機直接可以直接拖拽,復制粘貼)
點擊vmware 上 虛擬機-》安裝VMware tools,自動打開一個包含vmware安裝包的位置,可以拷貝到你有許可權的地方,例如/usr/src下用 sudo tar zxvf 軟體包名稱 解壓,之後進入解壓後的文件夾,執行
sudo ./vmware-install.sh來安裝,過程中遇見yes或no一律enter鍵,安裝後重啟生效。
四、配置共享目錄(讓主機和虛擬機直接方便實時共享)
對每個虛擬機,點擊vmware上虛擬機-》設置-》選項,選擇共享文件夾,永久共享,添加一個本機的目錄所為共享目錄,並為這個共享起一個名字,例如叫share。這樣在虛擬機上的 /mnt/hgfs下會自動生成share文件夾保持與主機上的目錄實時一致。重啟生效,有時生效較慢,多重啟幾次就行了,不知何故。
五,安裝ssh,為了一會的免密碼登陸
對每台虛擬機運行:sudo apt-get install openssh-server
若不成功,你可能需要更新一下資源列表了:sudo apt-get update
六、配置ssh無密碼登錄,方便namenode給datanode分配任務和匯總信息
說明:以下生成的秘鑰默認保存在用戶名空間,所以建議三台虛擬機建立同樣的用戶名,例如hadoop,也可以都用root用戶。
在name node,和datanode都運行:
ssh-keygen –t dsa -P '' –f ~/.ssh/id_dsa (建議手打此命令,復制有時候不行,注意都是英文字元,-P的P是大寫)
下面將三台虛擬機的公鑰拷貝到共享目錄中並重命名以供彼此配置使用
在name node:
scp ~/.ssh/id_dsa.pub /mnt/hgfs/share/ id_dsa0.pub
在data node 1:
scp ~/.ssh/id_dsa.pub /mnt/hgfs/share/ id_dsa1.pub
在data node 2:
scp ~/.ssh/id_dsa.pub /mnt/hgfs/share/ id_dsa2.pub

將共享目錄中公鑰分別添加到三台虛擬機的授權下,分別在name node,data node 1和data node 2執行:
cat /mnt/hgfs/share/id_dsa0.pub >> ~/.ssh/authorized_keys
cat /mnt/hgfs/share/id_dsa1.pub >> ~/.ssh/authorized_keys
cat /mnt/hgfs/share/id_dsa2.pub >> ~/.ssh/authorized_keys

測試:
ssh localhost
ssh 目標機器地址

七,安裝jdk
對每個虛擬機:
下載jdk(jdk1.6.0)並解壓,假定目錄為/usr/src/jdk1.6.0(如果你的不是,也可以改成是,這樣下面的命令直接復制就行了)
設置環境變數。
#vi /etc/profile
在最後面加入
#set java environment
export JAVA_HOME=/usr/src/jdk1.6.0
export CLASSPATH=.:$JAVA_HOME/lib.tools.jar
export PATH=$JAVA_HOME/bin:$PATH
保存退出。
要使JDK在所有的用戶中使用,可以這樣:
vi /etc/profile.d/java.sh
在新的java.sh中輸入以下內容:
#set java environment
export JAVA_HOME=/usr/src/jdk1.6.0
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
保存退出,然後給java.sh分配許可權:chmod 755 /etc/profile.d/java.sh
重啟虛擬機
八、安裝hadoop
在usr/src目錄解壓: tar zxvf hadoop-0.20.2.tar.gz
把hadoop的安裝路徑添加到/etc/profile中:
export HADOOP_HOME=/usr/src/hadoop-0.20.2
export PATH=$HADOOP_HOME/bin:$PATH

九、配置hadoop
在hadoop-0.20.1/conf目錄:
(1)對3個虛擬機,在conf/hadoop-env.sh中配置java環境
vi hadoop-env.sh
在hadoop-env.sh文件中添加
export JAVA_HOME=/usr/src/jdk1.6.0
(2) 用ifconfig命令查看ip地址,假定name node內部地址為192.168.204.157,data node 1和data node 2分別為192.168.204.162,192.168.204.173
對name node配置conf/masters和conf/slaves:
masters : 192.168.204.157
slaves : 192.168.204.162
192.168.204.173
(3)對name node, data node 1和data node2,配置conf/core-site.xml, conf/hdfs-site.xml及conf/mapred-site.xml,配置文件內的IP地址均配置為name node的IP地址(比如name node IP地址為192.168.204.157。
說明:因為三台上面這三個配置一樣,所以配置一份,然後復制粘貼即可。
(又說明:下面之所以上圖片是因為,新浪會把字元按html重新編譯,無法正常顯示,無奈啊)

十、運行hadoop
先把三台虛擬機的防火牆關了: sudo ufw disable
對name node:
進入hadoop-0.20.2/bin,首先格式化文件系統: hadoop namenode –format
對data node1 和data node 2:
進入hadoop-0.20.2/bin,執行: hadoop datanode –format

對name node:,在bin目錄下執行:
start-all.sh
hadoop dfsadmin –safemode leave
hadoop dfsadmin –report, 查看節點情況,看到類似界面顯示available的Datanodes 。

用jps命令查看進程,NameNode上的結果為:
26745 JobTracker
29398 jps
27664 NameNode

Data Node 1 的結果:
6718 TaskTracker
6042 DataNode
6750 jps

Data Node 2 的結果:
12173 TaskTracker
10760 DataNode
12700 jps
至此,安裝成功。

4. 利用docker配置跨主機Hadoop集群時出現問題

直接用機器搭建Hadoop集群是一個相當痛苦的過程,尤其對初學者來說。他們還沒開始跑wordcount,可能就被這個問題折騰的體無完膚了。而且也不是每個人都有好幾台機器對吧。你可以嘗試用多個虛擬機搭建,前提是你有個性能杠杠的機器。

我的目標是將Hadoop集群運行在Docker容器中,使Hadoop開發者能夠快速便捷地在本機搭建多節點的Hadoop集群。其實這個想法已經有了不少實現,但是都不是很理想,他們或者鏡像太大,或者使用太慢,或者使用了第三方工具使得使用起來過於復雜。下表為一些已知的Hadoop on Docker項目以及其存在的問題。

項目 鏡像大小 問題
sequenceiq/hadoop-docker:latest 1.491GB 鏡像太大,只支持單個節點
sequenceiq/hadoop-docker:2.7.0 1.76 GB
sequenceiq/hadoop-docker:2.60 1.624GB

sequenceiq/ambari:latest 1.782GB 鏡像太大,使用太慢,使用復雜
sequenceiq/ambari:2.0.0 4.804GB
sequenceiq/ambari:latest:1.70 4.761GB

alvinhenrick/hadoop-mutinode 4.331GB 鏡像太大,構建太慢,增加節點麻煩,有bug

我的項目參考了alvinhenrick/hadoop-mutinode項目,不過我做了大量的優化和重構。

5. 搭建hadoop集群,常用配置文件是什麼,以及配置哪些屬性

一. 簡介

參考了網上許多教程,最終把hadoop在ubuntu14.04中安裝配置成功。下面就把詳細的安裝步驟敘述一下。我所使用的環境:兩台ubuntu 14.04 64位的台式機,hadoop選擇2.7.1版本。(前邊主要介紹單機版的配置,集群版是在單機版的基礎上,主要是配置文件有所不同,後邊會有詳細說明)

二. 准備工作

2.1 創建用戶

創建用戶,並為其添加root許可權,經過親自驗證下面這種方法比較好。

1 sudo adser hadoop2 sudo vim /etc/sudoers3 # 修改內容如下:4 root ALL = (ALL)ALL5 hadoop ALL = (ALL)ALL

給hadoop用戶創建目錄,並添加到sudo用戶組中,命令如下:

1 sudo chown hadoop /home/hadoop2 # 添加到sudo用戶組3 sudo adser hadoop sudo

最後注銷當前用戶,使用新創建的hadoop用戶登陸。

2.2安裝ssh服務

ubuntu中默認是沒有裝ssh server的(只有ssh client),所以先運行以下命令安裝openssh-server。安裝過程輕松加愉快~

sudo apt-get install ssh openssh-server

2.3 配置ssh無密碼登陸

直接上代碼:執行完下邊的代碼就可以直接登陸了(可以運行ssh localhost進行驗證)

1 cd ~/.ssh# 如果找不到這個文件夾,先執行一下 "ssh localhost"2 ssh-keygen -t rsa3 cp id_rsa.pub authorized_keys

注意:

這里實現的是無密登陸自己,只適用與hadoop單機環境。如果配置Hadoop集群設置Master與Slave的SSH無密登陸可

三. 安裝過程

3.1 下載hadoop安裝包

有兩種下載方式:

1. 直接去官網下載:

2. 使用wget命令下載:

3.2 配置hadoop

1. 解壓下載的hadoop安裝包,並修改配置文件。我的解壓目錄是(/home/hadoop/hadoop-2.7.1),即進入/home/hadoop/文件夾下執行下面的解壓縮命令。

tar -zxvf hadoop-2.7.1.tar.gz

2. 修改配置文件:(hadoop2.7.1/etc/hadoop/)目錄下,hadoop-env.sh,core-site.xml,mapred-site.xml.template,hdfs-site.xml。

(1). core-site.xml 配置:其中的hadoop.tmp.dir的路徑可以根據自己的習慣進行設置。

至此,wordcount demo 運行結束。

六. 總結

配置過程遇到了很多問題,最後都一一解決,收獲很多,特此把這次配置的經驗分享出來,方便想要配置hadoop環境的各位朋友~

(Hadoop集群安裝配置過程基本和單機版是一樣的,主要是在配置文件方面有所區別,以及ssh無密登陸要求master和slave能夠互相無密登陸。

6. 配置hadoop集群是怎麼配置

在過去,大數據處理主要是採用標准化的刀片式伺服器和存儲區域網路(SAN)來滿足網格和處理密集型工作負載。然而隨著數據量和用戶數的大幅增長,基礎設施的需求已經發生變化,硬體廠商必須建立創新體系,來滿足大數據對包括存儲刀片,SAS(串列連接SCSI)開關,外部SATA陣列和更大容量的機架單元的需求。即尋求一種新的方法來存儲和處理復雜的數據,Hadoop正是基於這樣的目的應運而生的。Hadoop的數據在集群上均衡分布,並通過復制副本來確保數據的可靠性和容錯性。因為數據和對數據處理的操作都是分布在伺服器上,處理指令就可以直接地發送到存儲數據的機器。這樣一個集群的每個伺服器器上都需要存儲和處理數據,因此必須對Hadoop集群的每個節點進行配置,以滿足數據存儲和處理要求。
Hadoop框架中最核心的設計是為海量數據提供存儲的HDFS和對數據進行計算的MapRece。MapRece的作業主要包括從磁碟或從網路讀取數據,即IO密集工作,或者是計算數據,即CPU密集工作。Hadoop集群的整體性能取決於CPU、內存、網路以及存儲之間的性能平衡。因此運營團隊在選擇機器配置時要針對不同的工作節點選擇合適硬體類型。一個基本的Hadoop集群中的節點主要有:Namenode負責協調集群中的數據存儲,DataNode存儲被拆分的數據塊,Jobtracker協調數據計算任務,最後的節點類型是Secondarynamenode,幫助NameNode收集文件系統運行的狀態信息。

在集群中,大部分的機器設備是作為Datanode和TaskTracker工作的。Datanode/TaskTracker的硬體規格可以採用以下方案:
4個磁碟驅動器(單盤1-2T),支持JBOD
2個4核CPU,至少2-2.5GHz
16-24GB內存
千兆乙太網
Namenode提供整個HDFS文件系統的namespace管理,塊管理等所有服務,因此需要更多的RAM,與集群中的數據塊數量相對應,並且需要優化RAM的內存通道帶寬,採用雙通道或三通道以上內存。硬體規格可以採用以下方案:
8-12個磁碟驅動器(單盤1-2T)
2個4核/8核CPU
16-72GB內存
千兆/萬兆乙太網
Secondarynamenode在小型集群中可以和Namenode共用一台機器,較大的群集可以採用與Namenode相同的硬體。考慮到關鍵節點的容錯性,建議客戶購買加固的伺服器來運行的Namenodes和Jobtrackers,配有冗餘電源和企業級RAID磁碟。最好是有一個備用機,當 namenode或jobtracker 其中之一突然發生故障時可以替代使用。

目前市場上的硬體平台滿足Datanode/TaskTracker節點配置需求的很多,,據了解深耕網路安全硬體平台多年的立華科技瞄準了Hadoop的發展前景,適時推出了專門針對NameNode的設備----雙路至強處理器搭載12塊硬碟的FX-3411,將計算與存儲完美融合,四通道內存的最大容量可達到256GB,完全滿足NameNode對於一個大的內存模型和沉重的參考數據緩存組合的需求。

同時在網路方面,FX-3411支持的2個PCI-E*8的網路擴展,網路吞吐達到80Gbps,更是遠遠滿足節點對千兆乙太網或萬兆乙太網的需求。此外針對Datanode/TaskTracker等節點的配置需求,立華科技不僅推出了可支持單路至強E38核處理器和4塊硬碟的標准品FX-3210,還有可以全面客制化的解決方案,以滿足客戶的不同需求。

Hadoop集群往往需要運行幾十,幾百或上千個節點,構建匹配其工作負載的硬體,可以為一個運營團隊節省可觀的成本,因此,需要精心的策劃和慎重的選擇。

7. hadoop集群搭建在阿里雲伺服器上 雲伺服器配置要求是多少

如果是集群的話,我考慮需要流暢運行的話,2核4G配置是可以滿足的。因為這個集群形式,用於適用於物聯網、車聯網、監控、安全風控、即時通訊、消息存儲等行業場景,所以數據量是比較大的,所以配置太低了跑不動,會卡死的。
因為hadoop是海量數據的處理能力,所以伺服器一定不能太小配置了,跑不動了就沒實際用途了。最好使用4核8G內存及以上配置。
因為這方面內容較多,這里也寫不開那麼多內容,所以你可以留言或到我的博客上搜索相關內容,老魏有寫過教程,還不止一篇,都挺詳細的內容,可以幫助你入門。

8. windows下的hadoop程序怎麼在集群中運行

1.下載hadoop的安裝包,這里使用的是"hadoop-2.6.4.tar.gz":
2.將安裝包直接解壓到D盤根目錄:
3.配置環境變數:
4.下載hadoop的eclipse插件,並將插件放到eclipse的plugins目錄下:
5.打開Eclipse,選擇菜單"Window"-->"Preferences",在左側找到"Hadoop Map/Rece",

在右側選擇hadoop的目錄:
6.打開菜單"Window"中的"Show View"窗口,選擇"Map/Rece Locations":
7:在打開的"Map/Rece Locations"面板中,點擊小象圖標,打開新建配置窗口:
8.填寫hadoop集群的主機地址和埠:
9.新創建的hadoop集群連接配置,右上角的齒輪可以修改配置信息:
10.打開菜單"Window"中的"Show View"窗口,找到"Project Explorer":
11.在"Project Explorer"面板中找到"DFS Locations",展開下面的菜單就可以連接上HDFS,

可以直接看到HDFS中的目錄和文件:
12.在"Project Explorer"面板中點擊滑鼠右鍵,選擇新建,就可以創建"Map/Rece"項目了:
13.下面我們創建了一個名為"hadoop-test"的項目,可以看到它自動幫我們導入了很多的jar包:
14.在項目的src下面創建log4j.properties文件,內容如下:
log4j.rootLogger=debug,stdout,R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=maprece_test.log

9. Hadoop集群以外的機器如何訪問Hadoop集群,進行提交文件,下載文件

集群以外的機器如何訪問Hadoop集群,並像集群中提交作業和傳送數據
(1)首先,在機器上安裝nutch或者hadoop
(2)配置兩個文件
hadoop-site.xml:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://gc04vm12:9000</value>
<description> </description>
</property>
<property>
<name>mapred.job.tracker</name>
<value>gc04vm12:9001</value>
<description> </description>
</property>
</configuration>
(3)這樣便能執行命令,查看集群狀態,向集群提交作業

(4)hdfs中的用戶
使用root登陸而hadoop中沒有創建root用戶時,使用如下命令時,查看到的就不是nutch用戶主目錄 /user/root了
[root@gc03vm12 nutch-1.0]# bin/hadoop dfs -ls 執行此命令時,即是列出/user/root(root用戶主目錄)目錄下的文件或目錄
ls: Cannot access .: No such file or directory. 沒有此目錄
[root@gc03vm12 nutch-1.0]# bin/hadoop dfs -ls /
Found 3 items
drwxr-xr-x - nutch supergroup 0 2010-05-21 00:42 /tmp
drwxr-xr-x - nutch supergroup 0 2010-05-21 00:53 /user
drwxr-xr-x - nutch supergroup 0 2010-05-21 00:55 /usr 這個是什麼?
[root@gc03vm12 nutch-1.0]# bin/hadoop dfs -mkdir x 主目錄(/user/root)中創建x目錄,提示以下信息
mkdir: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="user":nutch:supergroup:rwxr-xr-x
這是因為root用戶對/user/目錄沒有寫許可權(drwxr-xr-x - nutch supergroup 0 2010-05-21 00:53 /user)

hdfs中的nutch用戶是啟動hadoop集群的這個用戶,當客戶機中也存在nutch用戶時,登陸後訪問hdfs時,進入的是home目錄(/user/nutch)。
hdfs中文件和目錄的許可權類似linux,可以修改其許可權,改變其所屬組
nutch用戶格式化namenode,啟動hadoop集群(會用到nutch用戶的公鑰信息,ssh配置)後,執行命令,
[nutch@gc03vm12 nutch-1.0]# bin/hadoop dfs -ls 執行此命令時,即是列出/user/nutch(nutch用戶主目錄)目錄下的文件或目錄
ls: Cannot access .: No such file or directory.
因為沒有/user/nutch目錄,所以不能訪問,而此時若創建一個文件,如使用以下命令
[nutch@gc03vm12 nutch-1.0]# bin/hadoop dfs -mkdir x 則可以順利執行,此時它將創建/user/nutch/x目錄。
而使用root用戶不行,是因為 root用戶對/user/目錄沒有寫許可權。
那麼如何創建一個root用戶呢,可以這樣做
超級用戶nutch在hdfs中創建目錄/user/root,即 bin/hadoop dfs -mkdir /user/root
更改/user/root目錄所屬用戶和組, bin/hadoop dfs -chown -R root:root /user/root (若此處沒有指定組,則默認root屬於supergroup組, bin/hadoop dfs -chown -R root /user/root)
這樣就相當於在hdfs中創建了用戶root,組root;
用戶許可權和Linux類似,nutch是超級用戶。
例如nutch在root的home目錄下創建目錄s,則s的許可權如下,屬於nutch,組是root
drwxr-xr-x - nutch root 0 2010-05-21 04:41 /user/root/s
root用戶此時就不能寫s目錄了
[root@gc04vm14 nutch-1.0]# bin/hadoop dfs -mkdir s/x
mkdir: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="s":nutch:root:rwxr-xr-x

root用戶屬於root組,並且執行作業,會提示錯誤,如下
[root@gc03vm12 nutch-1.0]# bin/nutch crawl /user/nutch/urls -dir data2 -depth 5 -topN 8
提示如下錯誤
org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="tmp":nutch:supergroup:rwxr-xr-x
這是因為root用戶對/tmp目錄(hdfs目錄)沒有寫許可權,因為作業執行時,會在/tmp目錄下生成相應的job文件,
/tmp的許可權如下:
drwxr-xr-x - nutch supergroup 0 2010-05-21 00:42 /tmp
因此非超級用戶提交作業時,用戶問題是一個很麻煩的問題
註:
hadoop有些命令只能在namenode上執行

10. 怎麼搭建兩個hadoop集群的測試環境

環境配置:
虛擬機:
vmware workstation 12
系統:
ubuntu 16.04 LTS(推薦使用原版,不要用kylin)
節點: 192.168.159.132 master 192.168.159.134 node1 192.168.159.137 node2
jdk-8u101-Linux-x64.gz (Java)hadoop-2.7.3.tar.gz (Hadoop 包)
安裝步驟:
1、安裝虛擬機系統,並進行准備工作(可安裝一個然後克隆)
2.修改各個虛擬機的hostname和host
3.創建用戶組和用戶
4、配置虛擬機網路,使虛擬機系統之間以及和host主機之間可以通過相互ping通。
5.安裝jdk和配置環境變數,檢查是否配置成功
6、配置ssh,實現節點間的無密碼登錄 ssh node1/2指令驗證時候成功
7、master配置hadoop,並將hadoop文件傳輸到node節點
8、配置環境變數,並啟動hadoop,檢查是否安裝成功,執行wordcount檢查是否成功。

1.安裝虛擬機

在VM上安裝下載好的Ubuntu的系統,具體過程自行網路。可以安裝完一個以後克隆,但是本人安裝過程中遇到很多問題,經常需要刪除虛擬機,重新安裝,而被克隆的虛擬機不能刪除,所以本人就用了很長時候,一個一個安裝。

一共3台虛擬機:分配情況和IP地址如下:

(註:查看ip地址的指令 ifconfig)

安裝虛擬機時可以設置靜態IP,因為過程中常常遇到網路連接問題,ifconfig找不到IPV4地址。當然,也可以不設,默認分配。

192.168.159.132 master 192.168.159.134 node1 192.168.159.137 node2

2.修改虛擬機的hostname和hosts文件

以master上機器為例,打開終端,執行如下的操作,把hostname修改成master,hosts修改成如下所示的樣子:

#修改hostname的指令:sudo gedit /etc/hostname
#修改hosts指令:sudo gedit /etc/hosts
#將以下內容添加到hosts中192.168.159.132 master192.168.159.134 node1192.168.159.137 node2

如下圖所示:


自此,hadoop集群搭建成功!