最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Hadoop 完全分布式環(huán)境的搭建

2023-03-13 19:35 作者:ZZR老師  | 我要投稿

一、前言

對(duì)于Hadoop完全分布式環(huán)境搭建,總體來(lái)說(shuō)還是具有一定的復(fù)雜度。本篇文章簡(jiǎn)化了不必要的步驟,極簡(jiǎn)的完成了分布式環(huán)境搭建。

二、關(guān)于虛擬機(jī)的選擇

如果您使用的windows系統(tǒng),請(qǐng)安裝VMware虛擬機(jī)軟件,需要特別注意的是,如果你使用的Windows 11的操作系統(tǒng),請(qǐng)安裝VMware17版本會(huì)有更好的體驗(yàn)。

三、集群規(guī)劃

集群規(guī)劃

四、安裝Linux

本文使用的是CentOS 7,選擇最小化安裝,設(shè)定root密碼為123456,安裝過(guò)程5分鐘左右。過(guò)程較為簡(jiǎn)單,不再贅述。

安裝過(guò)程

五、配置網(wǎng)絡(luò)

新安裝好的系統(tǒng)重新啟動(dòng)后,第一件事情,配置網(wǎng)絡(luò)。

首先,查看當(dāng)前網(wǎng)絡(luò)情況,使用:

默認(rèn)網(wǎng)絡(luò)配置

圖中第1項(xiàng) lo:是本地環(huán)回接口的意思;ip只能是“127.0.0.1”。

上圖中ens33:本地未設(shè)置的網(wǎng)絡(luò)設(shè)備名,默認(rèn)情況下,該網(wǎng)絡(luò)還未被設(shè)定ip地址和啟用。它對(duì)應(yīng)著一個(gè)配置文件ifcfg-ens33.此文件在/etc/sysconfig/network-scripts/ifcfg-ens33,編輯這個(gè)文件即可配置ip。

1.編輯的網(wǎng)絡(luò)配置文件:

2.修改內(nèi)容如下:

技巧:利用VMware編輯菜單的粘貼,可以復(fù)制文字。編輯好上面的內(nèi)容,然后復(fù)制,可以很快速正確的完成ip地址的設(shè)定,注意不能有中文。

3.重啟網(wǎng)絡(luò)服務(wù)

?重新啟動(dòng)網(wǎng)絡(luò)后,配置才會(huì)生效,此時(shí)也可以通過(guò)ping命令測(cè)試下網(wǎng)絡(luò)的連通情況。

網(wǎng)絡(luò)配置生效后,推薦在本地使用連接工具,連接虛擬機(jī)進(jìn)行后續(xù)配置,本文使用MobaXterm進(jìn)行遠(yuǎn)程連接。

六、修改主機(jī)名

1.修改主機(jī)名,將本機(jī)主機(jī)名修改為node1

注意,修改后,無(wú)需重啟系統(tǒng),重新啟動(dòng)連接客戶端即可。

修改主機(jī)名,重啟連接后

2.還需要修改主機(jī)名與ip地址的映射,不然啟動(dòng)hadoop時(shí)報(bào)錯(cuò)。通過(guò)修改/etc/hosts文件,添加如下內(nèi)容,ip地址與主機(jī)名的映射,可以參看前面的集群規(guī)劃。

修改后如下圖所示:

hosts文件內(nèi)容

修改完成后,可以通過(guò)如下命令,測(cè)試是否成功。

七、關(guān)閉防火墻

如果不關(guān)閉防火墻,那么,需要依次放行,Hadoop運(yùn)行過(guò)程中的網(wǎng)絡(luò)服務(wù)端口,比較麻煩。所以在學(xué)習(xí)的過(guò)程中,索性就把防火墻關(guān)閉,命令如下:

八、安裝JDK

根據(jù)官方文檔可知,JDK具有較好的兼容性,所以,本文選用JDK8版本安裝。

官方JDK兼容文檔

1.上傳解壓JDK

請(qǐng)到Oracle官網(wǎng)下載JDK8安裝包,上傳至虛擬機(jī)的/root/soft目錄,并解壓。涉及到的主要命令如下:

2.配置JDK

編輯profile文件,配置環(huán)境變量。

添加內(nèi)容:

最后內(nèi)容如下圖:

環(huán)境變量修改后

刷新環(huán)境變量,使配置生效:

九、配置Hadoop

1.下載和上傳

請(qǐng)到官網(wǎng)下載所需要的Hadoop 版本,本文選用的是hadoop3.2.2,其他版本也是類似的安裝方法:

下載

上傳至虛擬機(jī)后,對(duì)其解壓:

2.配置core-site.xml(核心站點(diǎn))

此文件位于hadoop安裝目錄下,etc/hadoop/文件夾

fs.defaultFS:用來(lái)設(shè)定hadoop使用的文件系統(tǒng)及hdfs服務(wù)器的地址。

hadoop.tmp.dir:臨時(shí)數(shù)據(jù)目錄。但是通過(guò)hdfs-default.xml可知,很多路徑都依據(jù)hadoop.tmp.dir 路徑。而hadoop.tmp.dir默認(rèn)為linux的臨時(shí)路徑,重啟啟動(dòng)或系統(tǒng)硬盤吃緊時(shí),就會(huì)釋放這個(gè)路徑內(nèi)容,使得hadoop報(bào)錯(cuò),所以強(qiáng)烈推薦要修改這個(gè)路徑。

在hadoop安裝目錄執(zhí)行

3.修改hdfs-site.xml

主要設(shè)定namenode(主節(jié)點(diǎn))和secondarynamenode(輔助節(jié)點(diǎn))的站點(diǎn)地址。

4.修改hadoop-env.sh

此文件位于hadoop安裝目錄下,etc/hadoop/文件夾,在第54行左右找到export JAVA_HOME,根據(jù)JDK的安裝路徑,配置此部分。

5.修改mapred-site.xml

此文件主要配置了,以下三方面內(nèi)容:

(1)設(shè)定分布式資源管理方案為yarn,默認(rèn)是local;

(2)設(shè)置 歷史任務(wù)服務(wù)器地址 ;

(3)設(shè)置歷史服務(wù)器web應(yīng)用地址。

6.修改yarn-site.xml

此文件主要配置了,以下兩方面內(nèi)容:

(1)設(shè)置ResourceManager主機(jī)名;

(2)NodeManager上運(yùn)行的附屬服務(wù)。需配置成mapreduce_shuffle,才可運(yùn)行MapReduce程序。

注意:

Hadoop3.1.3以上版本安裝后,執(zhí)行MapReduce操作出現(xiàn)包沖突錯(cuò)誤:

找不到或無(wú)法加載主類org.apache.hadoop.mapreduce.v2.app.MRAppMaster。
解決辦法

執(zhí)行,如下命令,返回hadoop的classpath值,并把這些值復(fù)制了。

編輯yarn-site.xml,添加yarn.application.classpath屬性,值為上面命令的值,如下圖所示:

yarn-site.xml

7.配置etc/hadoop/workers

配置從節(jié)點(diǎn)列表,此文件中列出每個(gè)從節(jié)點(diǎn)的hostname 或ip。

8.定義hdfs和yarn用戶

(1)在/hadoop/sbin路徑下: 將start-dfs.sh,stop-dfs.sh兩個(gè)文件頂部添加以下參數(shù):

(2)start-yarn.sh,stop-yarn.sh頂部也需添加以下:

9.配置hadoop的環(huán)境變量

使用 vi /etc/profile或連接工具的文本編輯器,在profile文件中添加如下內(nèi)容:

然后,更新并測(cè)試:

十、復(fù)制兩個(gè)虛擬機(jī)

1.完全關(guān)閉后,復(fù)制虛擬機(jī)硬盤,然后文件夾文本改名為node2和node3。

復(fù)制后

2.雙擊node2里面的虛擬機(jī)

3.修改虛擬機(jī)的名字為node2,然后啟動(dòng)

4.啟動(dòng)時(shí)選擇,我已經(jīng)復(fù)制該虛擬機(jī)

5.修改IP地址為:192.168.6.22

重啟網(wǎng)絡(luò)服務(wù)

6.修改主機(jī)名:

7.配置node3

按照如上步驟配置node3

(1)雙擊node3文件夾里的虛擬機(jī);

(2)修改虛擬機(jī)名為node3;

(3)啟動(dòng)虛擬機(jī),選擇【我已經(jīng)復(fù)制該虛擬機(jī)】

(4)修改IP地址為:192.168.6.33

(5)修改主機(jī)名為node3

8.重啟新配置的虛擬機(jī)

十一、配置免密登錄

為什么要免密登錄?

在分布式模式下,hadoop需要聯(lián)機(jī)操作,需要免密操作;
Hadoop 節(jié)點(diǎn)眾多, 所以一般在主節(jié)點(diǎn)啟動(dòng)從節(jié)點(diǎn), 這個(gè)時(shí)候就需要程序自動(dòng)在主節(jié)點(diǎn)登錄到從節(jié)點(diǎn)中, 如果不能免密就每次都要輸入密碼, 非常麻煩。

具體步驟如下:

1.推薦配置前在虛擬機(jī)中創(chuàng)建快照;

2.使用連接工具分配連接node1、node2和node3,然后配置免密登錄。

3.在三臺(tái)機(jī)器分別執(zhí)行以下命令,生成公鑰與私鑰。

執(zhí)行該命令之后,按三個(gè)回車即可。

4.拷貝公鑰到同一臺(tái)機(jī)器,三臺(tái)機(jī)器分別執(zhí)行如下命令:

輸入yes和主機(jī)密碼123456

5.將第一臺(tái)機(jī)器的公鑰拷貝到其他機(jī)器上,在第一臺(tái)機(jī)器上面指向以下命令:

十二、啟動(dòng)集群

要啟動(dòng) Hadoop 集群,需要啟動(dòng) HDFS 和 YARN 兩個(gè)模塊。 注意: 首次啟動(dòng) HDFS 時(shí),必須對(duì)其進(jìn)行格式化操作。 第一臺(tái)機(jī)器執(zhí)行以下命令,如果設(shè)置了環(huán)境變量,不需要加目錄。

jps查看已啟動(dòng)的服務(wù)

服務(wù)列表

注意,如果重復(fù)格式化了,要選N,如果選了Y,有可能出現(xiàn)如下錯(cuò)誤:
Re-format filesystem in Storage Directory /tmp/hadoop-root/dfs/name ? (Y or N)

解決辦法:

可以刪除core.site.xml的hadoop.tmp.dir所定義的目錄里的內(nèi)容。

十三、查看集群

推薦將上面的地址收藏,這樣調(diào)試比較方便。

十四、測(cè)試集群

1.創(chuàng)建目錄

2.拷貝input文件中的內(nèi)容到分布式文件系統(tǒng)

3.檢查是否啟動(dòng)了3個(gè)服務(wù)

執(zhí)行操作時(shí),會(huì)把日志寫到歷史服務(wù)器,因此需要啟動(dòng)歷史服務(wù)器。主服務(wù)器(node1),任務(wù)過(guò)多,有時(shí)會(huì)卡住,導(dǎo)致歷史服務(wù)器訪問(wèn)失敗,程序執(zhí)行失敗。所以,要為主服務(wù)器分配更多的CPU和內(nèi)存資源或?qū)v史服務(wù)器放到其他節(jié)點(diǎn)中,例如,node3中,啟動(dòng)歷史服務(wù)器要到node3主機(jī)中啟動(dòng)。

4.執(zhí)行程序

進(jìn)入hadoop安裝路徑,執(zhí)行如下命令(運(yùn)行需要等待5分鐘左右):

5.查看結(jié)果

6.再次執(zhí)行

7.關(guān)閉服務(wù)

總結(jié)

恭喜您,能夠看到這里,證明您已經(jīng)配置成功了。最后,我們成功運(yùn)行了官方的程序,在執(zhí)行效率上可能與您的預(yù)期不一致。主要有兩個(gè)原因,首先,咱們的節(jié)點(diǎn)配置實(shí)在是太差了。其次Hadoop是一個(gè)離線計(jì)算的系統(tǒng),如果只跑少量數(shù)據(jù)的話體現(xiàn)不出他的優(yōu)勢(shì)。Hadoop的優(yōu)勢(shì)在于計(jì)算大規(guī)模的海量數(shù)據(jù),hadoop不是為了解決性能問(wèn)題,是為了解決伸縮、分布式存儲(chǔ)和計(jì)算問(wèn)題。好了,就到這里吧。


Hadoop 完全分布式環(huán)境的搭建的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
凤冈县| 宁德市| 达尔| 游戏| 罗田县| 屯昌县| 荆门市| 玛沁县| 津南区| 惠安县| 岳阳县| 浠水县| 唐海县| 阿克苏市| 乌恰县| 东安县| 霍山县| 通渭县| 三河市| 平陆县| 灵璧县| SHOW| 安仁县| 香河县| 庄河市| 邯郸县| 肥城市| 鲁山县| 郎溪县| 河池市| 通河县| 清徐县| 自贡市| 鄂托克前旗| 英吉沙县| 和田县| 遂平县| 彭州市| 西贡区| 怀远县| 珠海市|