一、伪分布式安装
1.HDFS的配置
./hadoop/etc/hadoop/core-site.xml:配置HDFS的地址以及元数据的存储路径。
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop101:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/software/hadoop-2.7.2/data/tmp</value>
</property>
</configuration>
hadoop-env.sh:修改JAVA_HOME的环境变量。
export JAVA_HOME=/opt/software/jdk1.8.0_281
hdfs-site.xml::指定副本数量。
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
格式化:bin/hdfs namenode -format
格式化是对HDFS中的DataNode进行分块,统计所有的初始元数据存储在NameNode中。
- 不能经常格式化NameNode!格式化NameNode会产生新的集群ID,导致NameNode和DataNode的集群ID不一致,导致集群找不到以往数据。在格式化之前需要删除data数据和log日志!!!(/hadoop/data和/hadoop/logs)
启动
启动namenode:sbin/hadoop-daemon.sh start namenode
启动datanode:sbin/hadoop-daemon.sh start datanode
jps查看:jps
hadoop101:50070查看hdfs(namenode)网页端(3.x变成了9870)
hadoop101:8020namenode内部通信接口(9000也可,具体看core-site.xml,3.x加入了9820)
hadoop102:8088查看MapReduce进程,YARN接口
hadoop101:19888查看历史服务器端口
hadoop103:50090为SecondaryNameNode的端口
2.yarn的配置
yarn-env.sh、mapred-env.sh配置JAVA_HOME
yarn-site.xml:
<property>
<!--Reducer的获取数据方式-->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--指定yarn的ResourceManager地址-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop101</value>
</property>
mapred-site.xml:将mapred-site.xml.template改成mapred-site.xml
<!--指定MR运行在YARN上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
启动
sbin/yarn-daemon.sh start resourcemanager
sbin/yarn-daemon.sh start nodemanager
3.历史服务器的配置
mapred-site.xml:
<!--历史服务器端地址-->
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop101:10020</value>
</property>
<!--历史服务器web端地址-->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop101:19888</value>
</property>
启动:sbin/mr-jobhistory-daemon.sh start historyserver
4.配置日志聚集功能
- 开启日志聚集功能需要重新启动ResourceManager、NodeManager和HistoryManager。
yarn-site.xml:
<!-- 日志聚集功能使能 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<!-- 日志保留时间设置 7 天,秒为单位 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>