HDFS 實驗 (三) hadoop節點配置
添加節點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節點配置