【確保服務器集群安裝和配置已經完成!】
前言
請根據讀者的自身情況,進行相應隨機應變。
我的三台CentOS7服務器:
主機:master(192.168.56.110)
從機:slave0(192.168.56.111)
從機:slave1(192.168.56.112)
每一個節點的安裝與配置是相同的,在實際工作中,通常在master節點上完成安裝和配置后,然后將安裝目錄復制到其他節點就可以,沒有必要把所有節點都配置一遍,那樣沒有效率。
注意:所有操作都是root用戶權限
下載Hadoop安裝包
Hadoop官網:http://hadoop.apache.org/
我這里用的Hadoop版本下載地址:http://archive.apache.org/dist/hadoop/core/hadoop-2.7.5/
解壓Hadoop安裝包(只在master做)
確保network網絡已經配置好,使用Xftp等類似工具進行上傳,把hadoop-2.7.5.tar.gz上傳到/opt/hadoop目錄內。
上傳完成后,在master主機上執行以下代碼:
cd /opt/hadoop
1
進入/opt/hadoop目錄后,執行解壓縮命令:
tar -zxvf hadoop-2.7.5.tar.gz
1
回車后系統開始解壓,屏幕會不斷滾動解壓過程,執行成功后,系統在hadoop目錄自動創建hadoop-2.7.5子目錄。
然后修改文件夾名稱為“hadoop”,即hadoop安裝目錄,執行修改文件夾名稱命令:
mv hadoop-2.7.5 hadoop
1
注意:也可用Xftp查看相應目錄是否存在,確保正確完成。
我們進入安裝目錄,查看一下安裝文件,如果顯示如圖文件列表,說明壓縮成功
配置env文件(只在master做)
請先看如下命令(並且記住它們,后續操作大量用到,並且不再贅述):
A. 進入編輯狀態:insert
B. 刪除:delete
C. 退出編輯狀態:ctrl+[
D. 進入保存狀態:ctrl+]
E. 保存並退出:" :wq " 注意先輸入英文狀態下冒號
F. 不保存退出:" :q! " 同上
大概執行順序:A→B→C→D→E
配置jdk文件
執行命令:
vi /opt/hadoop/hadoop/etc/hadoop/hadoop-env.sh
1
找到 “ export JAVA_HOME ” 這行,用來配置jdk路徑
修改為:export JAVA_HOME=/usr/local/java/jdk1.8.0_162/
配置核心組件文件(只在master做)
Hadoop的核心組件文件是core-site.xml,位於/opt/hadoop/hadoop/etc/hadoop子目錄下,用vi編輯core-site.xml文件,需要將下面的配置代碼放在文件的<configuration>和</configuration>之間。
執行編輯core-site.xml文件的命令:
vi /opt/hadoop/hadoop/etc/hadoop/core-site.xml
1
需要在<configuration>和</configuration>之間加入的代碼:
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop/hadoopdata</value>
</property>
12345678
編輯完成后,退出並保存即可!
配置文件系統(只在master做)
Hadoop的文件系統配置文件是hdfs-site.xml,位於/opt/hadoop/hadoop/etc/hadoop子目錄下,用vi編輯該文件,需要將以下代碼放在文件的<configuration>和</configuration>之間。
執行編輯hdfs-site.xml文件的命令:
vi /opt/hadoop/hadoop/etc/hadoop/hdfs-site.xml
1
需要在<configuration>和</configuration>之間加入的代碼:
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
1234
編輯完成后,退出保存即可!
配置 yarn-site.xml 文件(只在master做)
Yarn的站點配置文件是yarn-site.xml,位於/opt/hadoop/hadoop/etc/hadoop子目錄下,依然用vi編輯該文件,將以下代碼放在文件的<configuration>和</configuration>之間。
執行編輯yarn-site.xml文件的命令:
vi /opt/hadoop/hadoop/etc/hadoop/yarn-site.xml
需要在<configuration>和</configuration>之間加入的代碼:
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:18088</value>
</property>
配置MapReduce計算框架文件(只在master做)
在/opt/hadoop/hadoop/etc/hadoop子目錄下,系統已經有一個mapred-site.xml.template文件,我們需要將其復制並改名,位置不變。
執行復制和改名操作命令:
1|cp /opt/hadoop/hadoop/etc/hadoop/mapred-site.xml.template /opt/hadoop/hadoop/etc/hadoop/mapred-site.xml
然后用vi編輯mapred-site.xml文件,需要將下面的代碼填充到文件的<configuration>和</configuration>之間。
執行命令:
1|vi /opt/hadoop/hadoop/etc/hadoop/mapred-site.xml
需要在<configuration>和</configuration>之間加入的代碼:
1|<property>
2|<name>mapreduce.framework.name</name>
3|<value>yarn</value>
4|</property>
編輯完畢,保存退出即可!
配置master的slaves文件(只在master做)
slaves文件給出了Hadoop集群的slave節點列表,該文件十分的重要,因為啟動Hadoop的時候,系統總是根據當前slaves文件中的slave節點名稱列表啟動集群,不在列表中的slave節點便不會被視為計算節點。
執行編輯slaves文件命令:
1|vi /opt/hadoop/hadoop/etc/hadoop/slaves
注意:用vi編輯slaves文件,應該根據讀者您自己所搭建集群的實際情況進行編輯。
例如:我這里已經安裝了slave0和slave1,並且計划將它們全部投入Hadoop集群運行。
所以應當加入以下代碼:
1|slave0
2|slave1
注意:刪除slaves文件中原來localhost那一行!
復制master上的Hadoop到slave節點(只在master做)
通過復制master節點上的hadoop,能夠大大提高系統部署效率,假設我們有200台需要配置…筆者豈不白頭
由於我這里有slave0和slave1,所以復制兩次。
復制命令:
1|scp -r /opt/hadoop root@slave0:/opt
2|scp -r /opt/hadoop root@slave1:/opt
Hadoop集群的啟動-配置操作系統環境變量(三個節點都做)
回到用戶目錄命令:
1|cd /opt/hadoop
然后用vi編輯.bash_profile文件,命令:
vi ~/.bash_profile
最后把以下代碼追加到文件的尾部:
1|#HADOOP
2|export HADOOP_HOME=/opt/hadoop/hadoop
3|export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
保存退出后,執行命令:
1|source ~/.bash_profile
source ~/.bash_profile命令是使上述配置生效
提示:在slave0和slave1使用上述相同的配置方法,進行三個節點全部配置。
創建Hadoop數據目錄(只在master做)
創建數據目錄,命令是:
1|mkdir /opt/hadoop/hadoopdata
通過Xftp可查看該hadoopdata
格式化文件系統(只在master做)
執行格式化文件系統命令:
1|hadoop namenode -format
啟動和關閉Hadoop集群(只在master做)
首先進入安裝主目錄,命令是:
1|cd /opt/hadoop/hadoop/sbin
提示:目前文件位置可在Xshell頂部欄觀察
然后啟動,命令是:
1|start-all.sh
執行命令后,系統提示 ” Are you sure want to continue connecting(yes/no)”,輸入yes,之后系統即可啟動。
注意:可能會有些慢,千萬不要以為卡掉了,然后強制關機,這是錯誤的。
如果要關閉Hadoop集群,可以使用命令:
1|stop-all.sh
下次啟動Hadoop時,無須NameNode的初始化,只需要使用start-dfs.sh命令即可,然后接着使用start-yarn.sh啟動Yarn。
實際上,Hadoop建議放棄(deprecated)使用start-all.sh和stop-all.sh一類的命令,而改用start-dfs.sh和start-yarn.sh命令。
驗證Hadoop集群是否啟動成功
讀者您可以在終端執行jps命令查看Hadoop是否啟動成功。
在master節點,執行:
1|jps
如果顯示:SecondaryNameNode、 ResourceManager、 Jps 和NameNode這四個進程,則表明主節點master啟動成功
然后分別在slave0和slave1節點下執行命令:
1|jps
如果成功顯示:NodeManager、Jps 和 DataNode,這三個進程,則表明從節點(slave0和slave1)啟動成功
結束
如有問題請留言,如成功則留下您寶貴的一個贊。
————————————————
版權聲明:本文為CSDN博主「王佳斌」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_44198965/java/article/details/89603788