知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷(xiāo)的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷(xiāo)工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
大數(shù)據(jù)之坑:騰訊云Hadoop3.1.3安裝及集群環(huán)境搭建完全分布式
發(fā)表時(shí)間:2020-10-19
發(fā)布人:葵宇科技
瀏覽次數(shù):102
- 媒介
- 1.情況設(shè)備
- 1.1 jdk安裝
- 1.2 防火墻封閉
- 1.3 修改hosts文件
- 1.4 創(chuàng)建hadoop用戶(hù)(跳過(guò))
- 2.建立機(jī)械間互信
- 2.1描述
- 2.2 生成公鑰
- 2.3 傳輸認(rèn)證文件
- 3.安裝hadoop以及hadoop設(shè)備
- 3.1 hadoop下載(3.1.3)
- 3.2 設(shè)備hadoop
- 4.大年夜功告成
- 4.1啟動(dòng)hadoop
- 4.2然后即可在web網(wǎng)頁(yè)查看到本身的頁(yè)面!!!
媒介
因?yàn)檎n程進(jìn)修須要,加上本機(jī)電腦的不便利性,筆者采取的是三臺(tái)騰訊云的租用辦事器(學(xué)生款性?xún)r(jià)比挺高的),因?yàn)樵诎惭b以及情況搭建過(guò)程中出現(xiàn)了很多問(wèn)題,萌芽了相當(dāng)多的材料,歷經(jīng)幾番曲折,于是在此分享一下本身較為周全的操作過(guò)程,欲望可以或許幫到各位解決問(wèn)題。
騰訊云辦事器體系 CentOs
三臺(tái)辦事器分別號(hào)稱(chēng)代號(hào)為:master slave1 slave2
1.情況設(shè)備
1.1 jdk安裝
Tips:機(jī)械已為L(zhǎng)inux體系
在master機(jī)械節(jié)點(diǎn)(自行決定哪臺(tái)機(jī)械作為master節(jié)點(diǎn))進(jìn)行操作:
- 切換到root模式下,避免權(quán)限問(wèn)題。(履行代碼:su root ,然后輸入暗碼即可)(如不雅已經(jīng)是root用戶(hù)模式下則忽視此條操作)
- 下載jdk文件
此處推薦華為鏡像站的jdk(1.8.0)文件網(wǎng)址
長(zhǎng)處:下載速度賊快,異常絲滑
wget https://repo.huaweicloud.com/java/jdk/8u151-b12/jdk-8u151-linux-x64.tar.gz
- 新建java文件夾用于jdk解壓
下載完之后,在usr文件夾下創(chuàng)建一個(gè)java文件夾
mkdir /usr/java
-
解壓jdk文件至方才創(chuàng)建的文件夾
tar -zxvf +jdk的名字(可大年夜下載操作處查看到) -C +解壓路徑(本文為/usr/java)
下述代碼為本文運(yùn)行代碼(如不雅你完全按照本文操作可直接運(yùn)行該代碼)
tar -zxvf jdk-8u151-linux-x64.tar.gz -C /usr/java
- 設(shè)備java情況變量
1.打開(kāi)設(shè)備文件
vim /etc/profile
2.修改設(shè)備文件(隨便找個(gè)地位參加以下內(nèi)容)
注:Linux下文件內(nèi)容修改:鍵入i之后即可編輯文件內(nèi)容,編輯完成之后按esc,輸入符號(hào):參加末行模式,然后輸入wq保存退出
export JAVA_HOME=/usr/java/jdk1.8.0_151
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
3.使情況變量生效
source /etc/profile
4.結(jié)不雅測(cè)試
java -version
如不雅可以或許返回java版本號(hào)則jdk安裝成功(如下圖)
1.2 防火墻封閉
- 運(yùn)行如下代碼
sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
1.3 修改hosts文件
在媒介中末尾提到過(guò)筆者的集群為三臺(tái)機(jī)械,所以筆者的hosts文件中ip映射有三行本身添加的代碼,大年夜家可以根據(jù)本身實(shí)際情況恰當(dāng)修改,然則此處ip映射關(guān)系必定不克不及掉足!!
-
對(duì)于master結(jié)點(diǎn),須要在文件末尾添加的內(nèi)容為:
master結(jié)點(diǎn)的內(nèi)網(wǎng)ip master
另一個(gè)機(jī)械1的公網(wǎng)ip slave1
另一個(gè)機(jī)械2的公網(wǎng)ip slave2 -
對(duì)于slave1結(jié)點(diǎn),須要在文件末尾添加的內(nèi)容為:
master結(jié)點(diǎn)的公網(wǎng)ip master
slave1結(jié)點(diǎn)的內(nèi)網(wǎng)ip slave1
另一個(gè)機(jī)械2的公網(wǎng)ip slave2 -
對(duì)于slave2結(jié)點(diǎn),須要在文件末尾添加的內(nèi)容為:
master結(jié)點(diǎn)的公網(wǎng)ip master
slave1結(jié)點(diǎn)的公網(wǎng)ip slave1
slave2結(jié)點(diǎn)的內(nèi)網(wǎng)ip slave2
總而言之,對(duì)于本身機(jī)械上的ip映射就填本身的內(nèi)網(wǎng)ip,本身機(jī)械上對(duì)其他ip的映射就是他們的公網(wǎng)ip
1.4 創(chuàng)建hadoop用戶(hù)(跳過(guò))
因?yàn)榉莚oot用戶(hù)可能涉及權(quán)限問(wèn)題,于是本文直接應(yīng)用root用戶(hù)進(jìn)行后續(xù)操作
2.建立機(jī)械間互信
2.1描述
因?yàn)閔adoop必須機(jī)械之間免密登錄,所以我們必須采取ssh密鑰認(rèn)證方法去包管機(jī)械登錄。
- 機(jī)械a向機(jī)械b建立免密登錄的流程
1.機(jī)械a生成公鑰
2.機(jī)械a將認(rèn)證文件傳給機(jī)械b
3.機(jī)械a成功單向建立與機(jī)械b的免密登錄(即a可以免密登錄b但b不克不及免密登錄a,只須要在b上履行上述機(jī)械a的所有操作即可完成b到a的免密登錄)
2.2 生成公鑰
ssh-keygen
- 碰到提示直接全回車(chē)就行,成功后會(huì)出現(xiàn)一個(gè)奇形怪狀內(nèi)容的矩形框,標(biāo)頭為RSA
- 成功之后會(huì)在 ~/.ssh文件夾下面看到id_rsa id_rsa.pub文件(為root用戶(hù)登錄情況下,可能會(huì)有authorized_keys文件,問(wèn)題不大年夜)
跳轉(zhuǎn)至~/.ssh文件夾下
cd ~/.ssh
查看文件內(nèi)容
ls
2.3 傳輸認(rèn)證文件
- 傳遞至localhost
ssh-copy-id localhost
檢查是否成功
ssh localhost
第一次登錄時(shí)須要輸入一次本機(jī)root用戶(hù)登錄暗碼,輸入進(jìn)去即可,然后再次鍵入代碼:
ssh localhost
如不雅不須要輸入暗碼即竽暌箍現(xiàn)了日孚信息,則傳遞至localhost成功
- 傳遞至slave1
傳遞時(shí)須要輸入一次 slave1結(jié)點(diǎn)上的 root用戶(hù)的登錄暗碼
ssh-copy-id slave1
檢查是否成功
ssh slave1
如不雅不須要輸入暗碼即竽暌箍現(xiàn)了日孚信息,則傳遞至slave1成功
- 傳遞至slave2
傳遞時(shí)須要輸入一次 slave2結(jié)點(diǎn)上的 root用戶(hù)的登錄暗碼
ssh-copy-id slave2
檢查是否成功
ssh slave2
如不雅不須要輸入暗碼即竽暌箍現(xiàn)了日孚信息,則傳遞至slave2成功
3.安裝hadoop以及hadoop設(shè)備
3.1 hadoop下載(3.1.3)
- 跳轉(zhuǎn)至根目次
cd
- hadoop文件下載
此處推薦應(yīng)用清華鏡像的下載鏈接(縱享絲滑+1了):
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz
- 新建hadoop文件夾用于解壓
下載完之后,在usr文件夾下創(chuàng)建一個(gè)hadoop文件夾
mkdir /usr/hadoop
-
解壓hadoop文件至方才創(chuàng)建的文件夾
tar -zxvf +下載文件的名字(可大年夜下載操作處查看到) -C +解壓路徑(本文為/usr/hadoop)
下述代碼為本文運(yùn)行代碼(如不雅你完全按照本文操作可直接運(yùn)行該代碼)
tar -zxvf hadoop-3.1.3.tar.gz -C /usr/hadoop
- 設(shè)備情況變量
vim /etc/profile
將之前設(shè)備jdk時(shí)刻的內(nèi)容調(diào)換為:
export JAVA_HOME=/usr/java/jdk1.8.0_151
export HADOOP_HOME=/usr/hadoop/hadoop-3.1.3
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_LOG_DIR=/usr/hadoop/hadoop-3.1.3/logs
export YARN_LOG_DIR=$HADOOP_LOG_DIR
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- 使情況變量生效
source /etc/profile
- 測(cè)試
hadoop version
如不雅出現(xiàn)如下版本號(hào)信息則安裝成功
3.2 設(shè)備hadoop
- 創(chuàng)建文件夾
mkdir /usr/hadoop/hadoop-3.1.3/tmp
mkdir /usr/hadoop/hadoop-3.1.3/hdfs
mkdir /usr/hadoop/hadoop-3.1.3/hdfs/name
mkdir /usr/hadoop/hadoop-3.1.3/hdfs/data
- 跳轉(zhuǎn)至目次 /usr/hadoop/hadoop-3.1.3/etc/hadoop/
cd /usr/hadoop/hadoop-3.1.3/etc/hadoop/
- 修改core-site.xml(在文件末尾的 之間添加如下代碼)
<!--設(shè)備hdfs文件體系的定名空間-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value> <!--master處為主機(jī)名,9000為端標(biāo)語(yǔ)-->
</property>
<!-- 設(shè)備操作hdfs的存沖大年夜小 -->
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
<!-- 設(shè)備臨時(shí)數(shù)據(jù)存儲(chǔ)目次 -->
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/hadoop/hadoop-3.1.3/tmp</value>
</property>
- 修改hdfs-site.xml
<!--設(shè)備副本數(shù)-->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!--hdfs的元數(shù)據(jù)存儲(chǔ)地位-->
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/hadoop/hadoop-3.1.3/hdfs/name</value>
</property>
<!--hdfs的數(shù)據(jù)存儲(chǔ)地位-->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/hadoop/hadoop-3.1.3/hdfs/data</value>
</property>
<!--hdfs的namenode的web ui 地址-->
<property>
<name>dfs.http.address</name>
<value>master:50070</value>
</property>
<!--hdfs的snn的web ui 地址-->
<property>
<name>dfs.secondary.http.address</name>
<value>0.0.0.0:50090</value>
</property>
<!--是否開(kāi)啟web操作hdfs-->
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<!--是否啟用hdfs權(quán)限(acl)-->
<property>
<name>dfs.permissions</name>
<value>false</value> </property>
- 修改mapred-site.xml
<!--指定mapreduce運(yùn)行框架-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value> </property>
<!--汗青辦事的通信地址-->
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<!--汗青辦事的web ui地址-->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
- 修改yarn-site.xml
<!--指定resourcemanager所啟動(dòng)的辦事器主機(jī)名-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<!--指定mapreduce的shuffle-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--指定resourcemanager的內(nèi)部通信地址-->
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<!--指定scheduler的內(nèi)部通信地址-->
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<!--指定resource-tracker的內(nèi)部通信地址-->
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<!--指定resourcemanager.admin的內(nèi)部通信地址-->
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<!--指定resourcemanager.webapp的ui監(jiān)控地址-->
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
- 修改workers(hadoop3之前文件名為slaves)
直接將文件內(nèi)容調(diào)換為
master
slave1
slave2
- 設(shè)備hadoop-env.sh、yarn-env.sh、mapred-env.sh
參加本身的jdk路徑,即/usr/java/jdk1.8.0_151(隨便在文件找個(gè)空行參加以下內(nèi)容)
export JAVA_HOME=/usr/java/jdk1.8.0_151
- 設(shè)備文件拷貝
- 辦法一:直接在別的兩臺(tái)機(jī)械上反復(fù)3.2的所有操作
- 辦法二:master結(jié)點(diǎn)打包文件直接傳輸至其他兩臺(tái)機(jī)械
打包指令:tar -zcvf +生成的緊縮文件名 + 被緊縮文件名。
發(fā)送指令: scp +待發(fā)送文件名+ 用戶(hù)名@主機(jī)名:另一臺(tái)機(jī)械的文件接收路徑
例如(僅做格局參考例子):
scp hadoop-3.1.3.tar.gz root@slave1:/usr/hadoop
發(fā)送完成之后在對(duì)應(yīng)機(jī)械上履行對(duì)應(yīng)恰當(dāng)解壓敕令即可(至指定精確文件夾)
4.大年夜功告成
4.1啟動(dòng)hadoop
- 跳轉(zhuǎn)目次
cd /usr/hadoop/hadoop-3.1.3/sbin
- 格局化namenode
hdfs namenode -format
如不雅出現(xiàn)了SHUTDOWN_MSG: Shutting down NameNode at xxx信息也不要慌張,向上尋找信息,如不雅能找到 INFO common.Storage:Storage directory ******省略 has been successfully formatted信息,則格局化成功了,忽視后面的SHUTDOWN_MSG即可
- 啟動(dòng)所有辦事
start-all.sh
- 若出現(xiàn)很多ERROR的情況則進(jìn)行下列操作
跳轉(zhuǎn)目次
cd /usr/hadoop/hadoop-3.1.3/sbin
修改start-dfs.sh和stop-dfs.sh文件,添加如下內(nèi)容:
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
修改start-yarn.sh和stop-yarn.sh文件,添加如下內(nèi)容:
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
從新履行代碼
start-all.sh
- 成功后輸入jps指令查看情況
jps
應(yīng)當(dāng)能看蒞臨行信息包含如下內(nèi)容:
NodeManager ResourceManager NameNode Jps DataNode SecondaryNameNode
4.2然后即可在web網(wǎng)頁(yè)查看到本身的頁(yè)面!!!
http://master辦事器的公網(wǎng)ip:50070/
相關(guān)案例查看更多
相關(guān)閱讀
- 云南小程序代建
- 云南網(wǎng)站建設(shè)特性
- 出入小程序
- 小程序模板開(kāi)發(fā)公司
- 網(wǎng)站開(kāi)發(fā)公司哪家好
- 網(wǎng)站建設(shè)選
- web開(kāi)發(fā)技術(shù)
- 云南小程序開(kāi)發(fā)
- 網(wǎng)站建設(shè)公司哪家好
- 小程序定制
- 保險(xiǎn)網(wǎng)站建設(shè)公司
- 海報(bào)插件
- 小程序分銷(xiāo)商城
- 云南網(wǎng)站建設(shè)方法
- 小程序制作
- 云南小程序開(kāi)發(fā)公司
- 云南網(wǎng)站建設(shè)招商
- 做網(wǎng)站
- 小程序被騙退款成功
- 云南省建設(shè)廳官方網(wǎng)站
- 網(wǎng)頁(yè)制作
- 網(wǎng)站建設(shè)專(zhuān)業(yè)品牌
- 定制小程序開(kāi)發(fā)
- 排名
- 模版信息
- 網(wǎng)站上首頁(yè)
- 怎么做網(wǎng)站
- 網(wǎng)站建設(shè)專(zhuān)家
- 云南省建設(shè)廳網(wǎng)站
- web教程