1. 程式人生 > >HDFS 實驗 (三) hadoop節點配置

HDFS 實驗 (三) hadoop節點配置

大數據 Hadoop 節點配置

vi /etc/hosts

添加節點dns信息

192.168.209.157 node1

192.168.209.158 node2

192.168.209.159 node3

vi /etc/profile

添加運行目錄

export HADOOP_HOME=/home/hadoop/hadoop-3.1.0

exportPATH=$PATH:$HADOOP_HOME/bin

復制到各節點過去

scp /etc/profile node2:/etc/profile

scp /etc/profile node3:/etc/profile

在各節點執行

source /etc/profile

刷新配置

技術分享圖片

技術分享圖片

然後把key復制到不同節點

ssh-copy-id node1

ssh-copy-id node2

ssh-copy-id node3

mkdir tmp創建臨時目錄

技術分享圖片

創建data和name 在/home/hadoop/hadoop-3.1.0

技術分享圖片

vi /home/hadoop/hadoop-3.1.0/etc/hadoop/core-site.xml

<configuration>

<!-- 指定HDFS老大(namenode)的通信地址 -->

<property>

<name>fs.defaultFS</name>

<value>hdfs://node1:50070</value>

</property>

<!-- 指定hadoop運行時產生文件的存儲路徑 -->

<property>

<name>hadoop.tmp.dir</name>

<value>/home/hadoop/hadoop-3.1.0/tmp</value>

</property>

</configuration>

vi /home/hadoop/hadoop-3.1.0/etc/hadoop/hdfs-site.xml

<configuration> <!-- 設置namenode的http通訊地址 --> <property> <name>dfs.namenode.http-address</name> <value>node1:50070</value> </property> <!-- 設置secondarynamenode的http通訊地址 --> <property> <name>dfs.namenode.secondary.http-address</name> <value>node2:50090</value> </property> <!-- 設置namenode存放的路徑 --> <property> <name>dfs.namenode.name.dir</name> <value>/home/hadoop/hadoop-3.1.0/name</value> </property> <!-- 設置hdfs副本數量 --> <property> <name>dfs.replication</name> <value>2</value> </property> <!-- 設置datanode存放的路徑 --> <property> <name>dfs.datanode.data.dir</name> <value>/home/hadoop/hadoop-3.1.0/data</value> </property> </configuration>

vi /home/hadoop/hadoop-3.1.0/etc/hadoop/mapred-site.xml

<configuration>

<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>

</configuration>

vi /home/hadoop/hadoop-3.1.0/etc/hadoop/yarn-site.xml

<configuration> <!-- 設置 resourcemanager 在哪個節點--> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> <!-- reducer取數據的方式是mapreduce_shuffle --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> </configuration>

開始啟動了

./bin/hdfs namenode -format

技術分享圖片

沒找到java,容我修個錯誤

找一下包的位置

rpm -qal | grep jdk

技術分享圖片

vi /etc/profile

加入java 環境配置信息

export JAVA_HOME=/usr/java/jdk1.8.0_162 export PATH=$JAVA_HOME/bin:$PATH

export HADOOP_HOME=/home/hadoop/hadoop-3.1.0

exportPATH=$PATH:$HADOOP_HOME/bin

技術分享圖片

刷新下配置source /etc/profile

再次格式化下

./bin/hdfs namenode -format

技術分享圖片

技術分享圖片

啟動失敗鳥

技術分享圖片

容我修個錯誤

SHUTDOWN_MSG: Shutting down NameNode at java.net.UnknownHostException: hadoop-1: hadoop-1: Name or service not known

本機名字是hadoop-1,和配置中的node1有差,所以nmtui改hostname先

再次格式化

技術分享圖片

啟動dfs

./sbin/start-dfs.sh

出錯鳥

Starting namenodes on [node1]node1: ERROR: JAVA_HOME is not set and could not be found.

我明明已經設了javahome了,再次看下日誌,有黑字

vi ./etc/hadoop/hadoop-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_162

技術分享圖片

再次啟動dfs

技術分享圖片

技術分享圖片

技術分享圖片

3臺都沒有報錯

啟動yarm

./sbin/start-yarn.sh

技術分享圖片

技術分享圖片

node1 啟動的組件

技術分享圖片

node2 組件

技術分享圖片

node3 組件

技術分享圖片

sbin目錄中有全部啟動命令

.sbin/start-all.sh

.sbin/stop-all.sh

HDFS 實驗 (三) hadoop節點配置