Hadoop安裝與集群配置

1.下載軟件

a. 下載VirtualBox http://download.virtualbox.org/virtualbox/5.1.18/VirtualBox-5.1.18-114002-Win.exe
b. 下載CentOS http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso
c. 下載XShell與XFtp 請?jiān)诎俣茸约核阉髋c安裝
d. 下載jdk http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.rpm
e. 下載hadoop2.7.3 -> http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz

2.安裝VirtualBox

下載后請自行安裝,安裝完需要自行安裝linux,此文為centos7.可自行百度教程饮戳。
網(wǎng)絡(luò)配置請參考我之前的文章《Virtualbox配置centos7網(wǎng)絡(luò)》
在此簡單的列舉主要步驟如下:

a. 在虛擬機(jī)中選用host-only網(wǎng)絡(luò)
b. vi /etc/sysconfig/network
NETWORKING=yes
c. vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 TYPE=Ethernet IPADDR=192.168.56.200 NETMASK=255.255.255.0
d. 修改主機(jī)名hostnamectl set-hostname master (主機(jī)名千萬不能有下劃線!)
e. 重啟網(wǎng)絡(luò)service network restart
f. 互相ping入挣,看是否測試成功歌焦,若不成功,注意防火墻的影響血崭。關(guān)閉windows或虛擬機(jī)的防火墻突梦。
systemctl stop firewalld
systemctl disable firewalld

3.安裝JDK

rpm -ivh ./xxxxx.jdk诫舅,驗(yàn)證rpm -qa | grep jdk,在命令行中敲java命令宫患,確認(rèn)jdk已經(jīng)安裝完成
配置環(huán)境變量:

JAVA_HOME=/usr/java/jdk1.8.0_91
JRE_HOME=/usr/java/jdk1.8.0_91/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

使環(huán)境變量生效:

source /etc/profile

4.安裝hadoop

cd /usr/local
tar –xvf ./hadoop-2.7.3.tar.gz
把目錄修改為hadoop mv hadoop-2.7.3 hadoop
修改hadoop-env.sh
vi /usr/local/hadoop/etc/hadoop/hadoop-env.sh
修改export JAVA_HOME 語句為 export JAVA_HOME=/usr/java/default
把/usr/local/hadoop/bin和/usr/local/hadoop/sbin設(shè)到PATH中
vi /etc/profile
追加 export PATH=$PATH:/usr/hadoop/bin:/usr/hadoop/sbin
source /etc/profile
測試hadoop命令是否可以直接執(zhí)行刊懈,任意目錄下敲hadoop

5.關(guān)閉虛擬機(jī),復(fù)制三份

6.開機(jī)后娃闲,自行配置各自的網(wǎng)絡(luò)配置虚汛,參照之前步驟。

主要是要修改:/etc/hosts,注意:四個(gè)節(jié)點(diǎn)的ip以及hostname都加上

7.分布式集群配置

7.1 配置core-site.xml

在所有的節(jié)點(diǎn)上都應(yīng)該修改/etc/hadoop/core-site.xml.注意:需要修改tmp目錄皇帮,不然默認(rèn)是linux的tmp目錄卷哩,這樣會出現(xiàn)意想不到的錯(cuò)誤,因?yàn)閘inux重啟后属拾,會刪除/tmp目錄下的內(nèi)容将谊。

<property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:9000</value>
</property>
<property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/local/hadoop/current/tmp</value>
</property>
<property>
    <name>fs.trash.interval</name>
    <value>4320</value>
</property>

注意:必須在各個(gè)機(jī)器上一定要保持此配置的一致性。這里配置的是master的地址渐白,與對外通訊的端口尊浓,slaves需要知道m(xù)aster對外提供通訊的地址與端口,所以各臺機(jī)器需要保持一致纯衍,否則會在web管理頁面發(fā)現(xiàn)live nodes是0.正常應(yīng)該是slaves的數(shù)量栋齿。

image.png

7.2配置hdfs-site.xml

在所有節(jié)點(diǎn)上修改/etc/hadoop/hdfs-site.xml

<property>
   <name>dfs.namenode.name.dir</name>
   <value>/usr/local/hadoop/current/dfs/name</value>
 </property>
 <property>
   <name>dfs.datanode.data.dir</name>
   <value>/usr/local/hadoop/current/dfs/data</value>
 </property>
 <property>
   <name>dfs.replication</name>
   <value>3</value>
 </property>
 <property>
   <name>dfs.webhdfs.enabled</name>
   <value>true</value>
 </property>
 <property>
   <name>dfs.permissions.superusergroup</name>
   <value>staff</value>
 </property>
 <property>
   <name>dfs.permissions.enabled</name>
   <value>false</value>
 </property>

7.3格式化HDFS

執(zhí)行以下命令即可:

 hdfs namenode -format
image.png

8.啟動(dòng)集群

在master上啟動(dòng)hadoop-daemon.sh start namenode

image.png

在slave上啟動(dòng)hadoop-daemon.sh start datanode

image.png

用hdfs dfsadmin -report觀察集群配置情況,如圖所示,含有三個(gè)從節(jié)點(diǎn)

image.png

查看端口號:netstat -ntlp

image.png

通過http://192.168.56.100:50070/web界面觀察集群運(yùn)行情況

image.png

用hadoop-daemon.sh stop ...手工關(guān)閉集群

image.png
image.png

9.集中管理

9.1對集群進(jìn)行集中管理瓦堵,需要修改以下配置文件:

修改master上/etc/hadoop/slaves文件基协,每一個(gè)slave占一行

slave1
slave2
slave3

9.2使用start-dfs.sh啟動(dòng)集群,并觀察結(jié)果

image.png

以上需要每個(gè)節(jié)點(diǎn)的密碼都需要重新輸入一下
啟動(dòng)成功:

NameNode.png
DataNode.png

9.3使用stop-dfs.sh停止集群

image.png

停止集群也需要每次輸入密碼

10.配置SSH免密登錄

在上一步驟中菇用,每次都需要輸入密碼澜驮,非常麻煩,故需要配置一下SSH的免密登錄惋鸥。
執(zhí)行如下步驟:

cd
ls -la
cd .ssh
ssh-keygen -t rsa (四個(gè)回車)
image.png

會用rsa算法生成私鑰id_rsa和公鑰id_rsa.pub

image.png

利用ssh-copy-id slaveX命令把生成的公鑰copy到其他的節(jié)點(diǎn)上泉唁。

image.png

此時(shí)在yxxy-node2節(jié)點(diǎn)就可以有以下文件:

image.png

以此類推,其他兩個(gè)從節(jié)點(diǎn)也是這樣執(zhí)行即可揩慕。
再次ssh slave1

image.png

此時(shí)應(yīng)該不再需要密碼
重新使用start-dfs.sh啟動(dòng)集群

image.png

此時(shí)執(zhí)行啟動(dòng)命令,則還是需要輸入主節(jié)點(diǎn)的密碼扮休,故也需要把公鑰拷貝一份到自己的主節(jié)點(diǎn)上

image.png

停止集群stop-dfs.sh

image.png

11.web管理

修改windows中的C:\Windows\System32\drivers\etc\hosts文件迎卤,可以通過名字訪問集群web界面。

image.png

12.基本操作

12.1使用hdfs dfs 或者h(yuǎn)adoop fs命令對文件進(jìn)行增刪改查的操作

hadoop fs -ls /
hadoop fs -put file /
hadoop fs -mkdir /dirname
hadoop fs -text /filename
hadoop fs -rm /filename
基本操作.png

12.2 動(dòng)態(tài)擴(kuò)展

設(shè)定dfs.namenode.heartbeat.recheck-interval為10000玷坠,然后停掉其中一臺slave蜗搔,觀察自動(dòng)復(fù)制情況。
啟動(dòng)停掉的slave節(jié)點(diǎn)八堡,通過網(wǎng)頁觀察datanode的動(dòng)態(tài)添加

12.3 橫向擴(kuò)展

添加新的節(jié)點(diǎn)樟凄,體會hadoop的橫向擴(kuò)展,步驟如下:

啟動(dòng)slave4兄渺,關(guān)閉防火墻缝龄,修改hostname
修改etc/hosts,加入對自己以及其他機(jī)器的解析挂谍,重啟網(wǎng)絡(luò)
在master中設(shè)定對于slave4的解析
啟動(dòng)slave4的datanode叔壤,通過網(wǎng)頁進(jìn)行觀察
hdfs dfsadmin –shutdownDatanode slave4:50020

13.遇到問題

在啟動(dòng)集群的時(shí)候市栗,主節(jié)點(diǎn)(namenode)正常啟動(dòng)迹鹅,datanode啟動(dòng)2個(gè),一個(gè)未啟動(dòng)闻牡,查看日志顯示如下異常信息:

image.png

經(jīng)過網(wǎng)上查詢原因說是/etc/hosts中的第一第二行不能刪除妄田。把他加上即可俺亮,如下圖所示:

image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市疟呐,隨后出現(xiàn)的幾起案子脚曾,更是在濱河造成了極大的恐慌,老刑警劉巖萨醒,帶你破解...
    沈念sama閱讀 211,817評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件斟珊,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)囤踩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評論 3 385
  • 文/潘曉璐 我一進(jìn)店門旨椒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人堵漱,你說我怎么就攤上這事综慎。” “怎么了勤庐?”我有些...
    開封第一講書人閱讀 157,354評論 0 348
  • 文/不壞的土叔 我叫張陵示惊,是天一觀的道長。 經(jīng)常有香客問我愉镰,道長米罚,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,498評論 1 284
  • 正文 為了忘掉前任丈探,我火速辦了婚禮录择,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘碗降。我一直安慰自己隘竭,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評論 6 386
  • 文/花漫 我一把揭開白布讼渊。 她就那樣靜靜地躺著动看,像睡著了一般。 火紅的嫁衣襯著肌膚如雪爪幻。 梳的紋絲不亂的頭發(fā)上菱皆,一...
    開封第一講書人閱讀 49,829評論 1 290
  • 那天,我揣著相機(jī)與錄音挨稿,去河邊找鬼搔预。 笑死,一個(gè)胖子當(dāng)著我的面吹牛叶组,可吹牛的內(nèi)容都是我干的拯田。 我是一名探鬼主播,決...
    沈念sama閱讀 38,979評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼甩十,長吁一口氣:“原來是場噩夢啊……” “哼船庇!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起侣监,我...
    開封第一講書人閱讀 37,722評論 0 266
  • 序言:老撾萬榮一對情侶失蹤鸭轮,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后橄霉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體窃爷,經(jīng)...
    沈念sama閱讀 44,189評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了按厘。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片医吊。...
    茶點(diǎn)故事閱讀 38,654評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖逮京,靈堂內(nèi)的尸體忽然破棺而出卿堂,到底是詐尸還是另有隱情,我是刑警寧澤懒棉,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布草描,位于F島的核電站,受9級特大地震影響策严,放射性物質(zhì)發(fā)生泄漏穗慕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評論 3 313
  • 文/蒙蒙 一妻导、第九天 我趴在偏房一處隱蔽的房頂上張望揍诽。 院中可真熱鬧,春花似錦栗竖、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至沥曹,卻和暖如春份名,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背妓美。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評論 1 266
  • 我被黑心中介騙來泰國打工僵腺, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人壶栋。 一個(gè)月前我還...
    沈念sama閱讀 46,382評論 2 360
  • 正文 我出身青樓辰如,卻偏偏與公主長得像,于是被迫代替她去往敵國和親贵试。 傳聞我的和親對象是個(gè)殘疾皇子琉兜,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 1.軟件及版本 a.VMware Workstation Pro b.CentOS-6.8-x86_64-mini...
    0_9f3a閱讀 847評論 0 3
  • 一、環(huán)境及軟件說明 1毙玻、虛擬機(jī)軟件: Oracle VM VirtualBox 2豌蟋、系統(tǒng)鏡像: CentOS-7-...
    尼古拉斯_譚閱讀 536評論 0 5
  • 在寫文章之前,筆者先記錄下昨天遇到的問題桑滩。 我一共起了三臺機(jī)器梧疲,在手動(dòng)啟動(dòng)nn和dn的時(shí)候整個(gè)集群正常。但使用st...
    尼古拉斯_譚閱讀 739評論 0 1
  • (搭建集群部分借鑒了kiwenlau/hadoop-cluster-docker中的內(nèi)容,不過那里的基礎(chǔ)環(huán)境是Ub...
    ProteanBear閱讀 3,825評論 0 12
  • 事情是這樣的幌氮,我的一位朋友昨天在朋友圈發(fā)了這樣一段話缭受,她說 "我每天都在以自己的方式用力的活著,因?yàn)楹ε鹿陋?dú)浩销,所以...
    趙一初閱讀 10,482評論 24 47