hadoop集群環(huán)境搭建

1 介紹

1.1 系統(tǒng)版本介紹

此文檔編寫使用的系統(tǒng)為ubuntu-18.04.1-live-server-amd64.iso版本秒咨。

1.2 軟件版本介紹

軟件 版本
jdk jdk-8u181-linux-x64.tar.gz
hadoop hadoop-2.7.7.tar.gz

1.3 ubuntu集群服務(wù)器

主機名 IP地址 服務(wù)
Master 10.168.1.216 ResourceManager疾忍、SecondaryNameNode识啦、NameNode
slave01 10.168.1.217 NodeManager、DataNode
slave02 10.168.1.218 NodeManager纵装、DataNode
slave03 10.168.1.219 NodeManager僚碎、DataNode

1.4 說明

本文檔安裝jdk和ssh略過狸窘。

2 安裝hadoop集群

2.1 全局配置

2.1.1 解壓hadoop

創(chuàng)建一個hadoop的文件夾,用戶存放hadoop文件

mkdir /usr/local/hadoop

通過ftp工具把下載好的hadoop安裝包上傳到hadoop文件夾下烟号。
解壓:

cd /usr/local/hadoop
tar -vxzf hadoop-2.7.7.tar.gz

解壓完成:

1.png

移動hadoop-2.7.7文件下的文件到當前的目錄

mv ./hadoop-2.7.7/* ./

刪除hadoop-2.7.7文件夾

rm -rf ./hadoop-2.7.7

查看文件夾的所有者以及用戶組绊谭,最重要的是擁有者是否是當前用戶

2.png

如果擁有者不是當前用戶,則修改為當前用戶:

chown -R 當前用戶名 ./hadoop

2.1.2 配置hadoop

設(shè)置環(huán)境變量:

vim /etc/profile

在末尾添加:

JAVA_HOME=/usr/local/java/jdk1.8.0_181
HADOOP_HOME=/usr/local/hadoop
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME
export PATH
export HADOOP_HOME

重新加載環(huán)境變量的配置文件:
source /etc/profile

檢測:
hadoop version

3.png

2.1.3 修改配置文件

在core-site.xml 中添加

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:9000</value>
  </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/local/hadoop/tmp</value>
  </property>
</configuration>
4.png

在 hdfs-site.xml 中添加

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>master:9001</value>
  </property>
  <property>
    <name>dfs.name.dir</name>
    <value>/usr/local/hadoop/hdfs/name</value>
  </property>
  <property>
    <name>dfs.data.dir</name>
    <value>/usr/local/hadoop/hdfs/data</value>
  </property>
  <!--副本的數(shù)量-->
  <property>
    <name>dfs.replication</name>
    <value>3</value>
  </property>
  <property>
    <name>dfs.permissions</name>
    <value>false</value>
  </property>
</configuration>
5.png

hadoop-env.sh 中更改 JAVA_HOME

注釋掉:

export JAVA_HOME=${JAVA_HOME}

添加:

export JAVA_HOME=/usr/local/java/jdk1.8.0_181

修改slaves文件汪拥,添加如下信息:

vim /usr/local/Hadoop/etc/Hadoop/slaves

6.png

1.2 特殊配置

2.2.1 復(fù)制三臺主機

7.png

2.2.2 設(shè)置靜態(tài)ip地址

前言

Ubuntu 18.04不再使用ifupdown配置網(wǎng)絡(luò)龙誊,而改用netplan。在/etc/network/interfaces配置固定IP是無效的喷楣,重啟網(wǎng)絡(luò)的命令services network restrart/etc/init.d/networking restart也是無效的趟大。

使用ifupdown配置網(wǎng)絡(luò)

如果要使用之前的方式配置網(wǎng)絡(luò),需要重新安裝ifupdown:

apt install ifupdown

修改配置文件/etc/network/interfaces:

vim /etc/network/interfaces

配置文件修改如下:

iface ens160 inet static
address 210.72.92.25
gateway 210.72.92.254
netmask 255.255.255.0
dns-nameservers 8.8.8.8

重啟網(wǎng)絡(luò)服務(wù)使配置生效

services network restrart

使用netplan配置網(wǎng)絡(luò)

Ubuntu 18.04使用netplan配置網(wǎng)絡(luò)铣焊,其配置文件是yaml格式的逊朽。安裝好Ubuntu 18.04之后,在/etc/netplan/目錄下默認的配置文件名是50-cloud-init.yaml曲伊,我們通過VIM修改它:

vim /etc/netplan/50-cloud-init.yaml

配置文件修改如下:

network:
  ethernets:
    ens160:
      addresses: [10.168.1.216/24]
      dhcp4: false
      gateway4: 10.168.1.254
  version: 2

無論是ifupdown還是netplan叽讳,配置的思路都是一致的,在配置文件里面按照規(guī)則填入IP坟募、掩碼岛蚤、網(wǎng)關(guān)、DNS等信息懈糯。注意yaml是層次結(jié)構(gòu)涤妒,需要縮進,冒號(:)表示字典赚哗,連字符(-)表示列表她紫。

重啟網(wǎng)絡(luò)服務(wù)使配置生效:

netplan apply

8.png

2.2.3 配置hosts文件

vim /etc/hosts

添加master和slaves信息:

9.png

2.2.4 本地主機名配置

首先修改

vim /etc/cloud/cloud.cfg

disable_root:false修改為true

10.png

修改主機名:

vim /etc/hostname

將10.168.1.216主機名修改為master硅堆。

11.png

將其他機器也修改為對應(yīng)的名稱,重啟所有服務(wù)器贿讹。

2.2.5 多服務(wù)器ssh免密碼登陸

由于Hadoop啟動以后渐逃,namenode是通過SSH(Secure Shell)來啟動和停止各個節(jié)點上的各種守護進程的,這就需要在節(jié)點之間執(zhí)行指令的時候是不需要輸入密碼的方式民褂,故我們需要配置SSH使用無密碼公鑰認證的方式(安裝ssh茄菊,配置ssh遠程連接過程略過。)赊堪。

所有服務(wù)器使用rsa算法生成秘鑰和公鑰對:
ssh-keygen -t rsa

12.png

然后把master服務(wù)器中公鑰加入到授權(quán)中:

cat ./id_rsa.pub >> ./authorized_keys

使用ssh localhost驗證是否無密碼登陸买羞。

把slave服務(wù)器中的id_rsa.pub復(fù)制到master中:

scp .ssh/id_rsa.pub root@master:/

13.png

查看公鑰是否復(fù)制成功:

14.png

將公鑰添加到master的授權(quán)文件中:

cat /id_rsa.pub >> ~/.ssh/authorized_keys

重復(fù)上面步驟,直到所有的slave公鑰都添加到了授權(quán)文件中雹食。

15.png

將授權(quán)文件分發(fā)到每臺服務(wù)器上:

scp ~/.ssh/authorized_keys username@hostname: ~/.ssh/authorized_keys

測試通過ssh相互之間登錄:

ssh hostname

username:服務(wù)器用戶名畜普。
hostname:服務(wù)器主機名。

測試完畢重啟服務(wù)器群叶。

2.2.6 啟動hadoop

在master服務(wù)器上格式化namenode節(jié)點:

hadoop namenode -format

16.png

啟動hdfs

start-all.sh

17.png

查看相應(yīng)的進程:

jps

master:

18.png

確定3個進程全部啟動吃挑。

slave:

19.png

確定2個進程全部啟動。

訪問測試:

10.168.1.216:50070

20.png
21.png
22.png

1.3 添加datanode節(jié)點

配置一臺新的slave機器街立,根據(jù)前面的步驟配置網(wǎng)絡(luò)IP舶衬。

啟動datanode服務(wù):

hadoop-daemon.sh start datanode

啟動nodemanager服務(wù):

yarn-daemon.sh start nodemanager

23.png

如果需要在name節(jié)點啟動的時候,同時也啟動這臺新加的data節(jié)點赎离,那么需要根據(jù)特殊配置的步驟逛犹,修改hosts文件、服務(wù)器主機名梁剔、以及ssh免密登錄等虽画,才能通過name來啟動data節(jié)點。

1.4 刪除datanode節(jié)點

首先需要在hdfs-site.xml添加:

<property>
  <name>dfs.hosts.exclude</name>
  <value>/usr/local/hadoop/etc/hadoop/excludes</value>
</property>
24.png

然后在對應(yīng)位置創(chuàng)建文件:
vim /usr/local/hadoop/etc/hadoop/excludes
在文件中加入要刪除的節(jié)點名稱:

27.png

例如要刪除的節(jié)點是slave03

25.png

在NameNode上刷新所有DataNode:

hdfs dfsadmin -refreshNodes    #刷新節(jié)點信息
start-balancer.sh              #同步節(jié)點的數(shù)據(jù)
26.png

如下圖:表示與該節(jié)點已經(jīng)斷開了連接(因為hadoop心跳檢測是10分鐘荣病,所以如果是data節(jié)點宕機码撰,就會一直檢測,直到超時)个盆。

接下來就可以關(guān)閉data節(jié)點了:

關(guān)閉datanode服務(wù):

hadoop-daemon.sh stop datanode

關(guān)閉nodemanager服務(wù):

yarn-daemon.sh stop nodemanager

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末脖岛,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子颊亮,更是在濱河造成了極大的恐慌柴梆,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,402評論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件终惑,死亡現(xiàn)場離奇詭異绍在,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,377評論 3 392
  • 文/潘曉璐 我一進店門揣苏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人件舵,你說我怎么就攤上這事卸察。” “怎么了铅祸?”我有些...
    開封第一講書人閱讀 162,483評論 0 353
  • 文/不壞的土叔 我叫張陵坑质,是天一觀的道長。 經(jīng)常有香客問我临梗,道長涡扼,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,165評論 1 292
  • 正文 為了忘掉前任盟庞,我火速辦了婚禮吃沪,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘什猖。我一直安慰自己票彪,他們只是感情好,可當我...
    茶點故事閱讀 67,176評論 6 388
  • 文/花漫 我一把揭開白布不狮。 她就那樣靜靜地躺著降铸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪摇零。 梳的紋絲不亂的頭發(fā)上推掸,一...
    開封第一講書人閱讀 51,146評論 1 297
  • 那天,我揣著相機與錄音驻仅,去河邊找鬼谅畅。 笑死,一個胖子當著我的面吹牛噪服,可吹牛的內(nèi)容都是我干的铃彰。 我是一名探鬼主播,決...
    沈念sama閱讀 40,032評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼芯咧,長吁一口氣:“原來是場噩夢啊……” “哼牙捉!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起敬飒,我...
    開封第一講書人閱讀 38,896評論 0 274
  • 序言:老撾萬榮一對情侶失蹤邪铲,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后无拗,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體带到,經(jīng)...
    沈念sama閱讀 45,311評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,536評論 2 332
  • 正文 我和宋清朗相戀三年英染,在試婚紗的時候發(fā)現(xiàn)自己被綠了揽惹。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片被饿。...
    茶點故事閱讀 39,696評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖搪搏,靈堂內(nèi)的尸體忽然破棺而出狭握,到底是詐尸還是另有隱情,我是刑警寧澤疯溺,帶...
    沈念sama閱讀 35,413評論 5 343
  • 正文 年R本政府宣布论颅,位于F島的核電站,受9級特大地震影響囱嫩,放射性物質(zhì)發(fā)生泄漏恃疯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,008評論 3 325
  • 文/蒙蒙 一墨闲、第九天 我趴在偏房一處隱蔽的房頂上張望今妄。 院中可真熱鬧,春花似錦鸳碧、人聲如沸蛙奖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽雁仲。三九已至,卻和暖如春琐脏,著一層夾襖步出監(jiān)牢的瞬間攒砖,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,815評論 1 269
  • 我被黑心中介騙來泰國打工日裙, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留吹艇,地道東北人。 一個月前我還...
    沈念sama閱讀 47,698評論 2 368
  • 正文 我出身青樓昂拂,卻偏偏與公主長得像受神,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子格侯,可洞房花燭夜當晚...
    茶點故事閱讀 44,592評論 2 353

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