配置集群
(a)配置:hadoop-env.sh
Linux系统中获取JDK的安装路径:
[atguigu@ hadoop101 ~]# echo $JAVA_HOME
/opt/module/jdk1.8.0_212
修改JAVA_HOME 路径:
export JAVA_HOME=/opt/module/jdk1.8.0_212
配置:core-site.xml
<!-- 指定HDFS中NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop101:9820</value>
</property>
<!-- 指定Hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/module/hadoop-3.1.3/data/tmp</value>
</property>
配置:hdfs-site.xml
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
启动HDFS集群 (单点启动)
1. 格式化NameNode(第一次启动时格式化,以后就不要总格式化)
(第一次启动时格式化,以后就不要总格式化)
(第一次启动时格式化,以后就不要总格式化)
(第一次启动时格式化,以后就不要总格式化)
(第一次启动时格式化,以后就不要总格式化)
(第一次启动时格式化,以后就不要总格式化)
(第一次启动时格式化,以后就不要总格式化)
(第一次启动时格式化,以后就不要总格式化)
(第一次启动时格式化,以后就不要总格式化)
[atguigu@hadoop101 hadoop-3.1.3]$ bin/hdfs namenode -format
格式化需要注意的问题
为什么不能一直格式化NameNode,格式化NameNode,要注意什么?
[atguigu@hadoop101 hadoop-3.1.3]$ cd data/tmp/dfs/name/current/
[atguigu@hadoop101 current]$ cat VERSION
clusterID=CID-f0330a58-36fa-4a2a-a65f-2688269b5837
[atguigu@hadoop101 hadoop-3.1.3]$ cd data/tmp/dfs/data/current/
clusterID=CID-f0330a58-36fa-4a2a-a65f-2688269b5837
注意:格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据。所以,格式NameNode时,一定要先删除data数据和logs日志,然后再格式化NameNode
- 启动NameNode
[atguigu@hadoop101 hadoop-3.1.3]$ sbin/hadoop-daemon.sh start namenode (已过时)
[atguigu@hadoop101 hadoop-3.1.3]$ bin/hdfs –-daemon start namenode
- 启动DataNode
[atguigu@hadoop101 hadoop-3.1.3]$ bin/hdfs –-daemon start datanode
查看集群是否启动成功
[atguigu@hadoop101 hadoop-3.1.3]$ jps
13586 NameNode
13668 DataNode
13786 Jps
web端查看HDFS文件系统
出现错误看日志,看日志
当前目录:/opt/module/hadoop-3.1.3/logs
[atguigu@hadoop101 logs]$ ls
-rw-rw-r--. 1 atguigu atguigu 31356 3月 27 14:13 hadoop-atguigu-datanode-hadoop202.log //datanode的日志
-rw-rw-r--. 1 atguigu atguigu 690 3月 27 14:13 hadoop-atguigu-datanode-hadoop202.out
-rw-rw-r--. 1 atguigu atguigu 110234 3月 27 14:13 hadoop-atguigu-namenode-hadoop202.log //namenode的日志
-rw-rw-r--. 1 atguigu atguigu 690 3月 27 14:12 hadoop-atguigu-namenode-hadoop202.out
-rw-rw-r--. 1 atguigu atguigu 690 3月 27 14:11 hadoop-atguigu-namenode-hadoop202.out.1
-rw-rw-r--. 1 atguigu atguigu 690 3月 27 14:10 hadoop-atguigu-namenode-hadoop202.out.2
-rw-rw-r--. 1 atguigu atguigu 0 3月 27 14:09 SecurityAuth-atguigu.audit
配置yarn-site.xml
<!-- Reducer获取数据的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 指定YARN的ResourceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop101</value>
</property>
<property>
<name>yarn.nodemanager.env-whitelist</name> <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
</property>
配置mapred-site.xml
[atguigu@hadoop101 hadoop]$ vi mapred-site.xml
<!-- 指定MR运行在YARN上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
启动YARN集群(单点启动)
启动前必须保证 NameNode 和 DataNode已经启动
启动前必须保证 NameNode 和 DataNode已经启动
启动前必须保证 NameNode 和 DataNode已经启动
启动前必须保证 NameNode 和 DataNode已经启动
- 启动ResourceManager
[atguigu@hadoop101 hadoop-3.1.3]$ sbin/yarn-daemon.sh start resourcemanager (已过时)
[atguigu@hadoop101 hadoop-3.1.3]$ bin/yarn --daemon start resourcemanager
2.启动NodeManager
[atguigu@hadoop101 hadoop-3.1.3]$ bin/yarn --daemon start nodemanager
YARN的浏览器页面查看
配置文件说明
Hadoop配置文件分两类:默认配置文件和自定义配置文件,只有用户想修改某一默认配置值时,才需要修改自定义配置文件,更改相应属性值。
(1)默认配置文件:
要获取的默认文件 文件存放在Hadoop的jar包中的位置
[core-default.xml] hadoop-common-3.1.3.jar/ core-default.xml
[hdfs-default.xml] hadoop-hdfs-3.1.3.jar/ hdfs-default.xml
[yarn-default.xml] hadoop-yarn-common-3.1.3.jar/ yarn-default.xml
[mapred-default.xml] hadoop-mapreduce-client-core-3.1.3.jar/ mapred-default.xml
表4-2 默认配置文件
(2)自定义配置文件:
core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml四个配置文件存放在 $HADOOP_HOME/etc/hadoop 这个路径上,用户可以根据项目需求重新进行修改配置。
常用端口号说明


完全分布式运行模式
- 配置集群
核心配置文件
配置core-site.xml
cd $HADOOP_HOME/etc/hadoop
vim core-site.xml
文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop102:8020</value>
</property>
<property>
<name>hadoop.data.dir</name>
<value>/opt/module/hadoop-3.1.3/data</value>
</property>
<property>
<name>hadoop.proxyuser.atguigu.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.atguigu.groups</name>
<value>*</value>
</property>
</configuration>
HDFS配置文件
配置hdfs-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>file://${hadoop.data.dir}/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file://${hadoop.data.dir}/data</value>
</property>
<property>
<name>dfs.namenode.checkpoint.dir</name>
<value>file://${hadoop.data.dir}/namesecondary</value>
</property>
<property>
<name>dfs.client.datanode-restart.timeout</name>
<value>30</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop104:9868</value>
</property>
</configuration>
YARN配置文件
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop103</value>
</property>
<property>
<name>yarn.nodemanager.env-whitelist</name>
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
</property>
</configuration>
MapReduce配置文件
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
群起集群
- 配置workers
vim /opt/module/hadoop-3.1.3/etc/hadoop/workers
在该文件中增加如下内容:
hadoop102
hadoop103
hadoop104
注意:该文件中添加的内容结尾不允许有空格,文件中不允许有空行。
整体启动/停止HDFS
start-dfs.sh/stop-dfs.sh
整体启动/停止YARN
start-yarn.sh/stop-yarn.sh
配置历史服务器
为了查看程序的历史运行情况,需要配置一下历史服务器。具体配置步骤如下:
配置mapred-site.xml
vi mapred-site.xml
在该文件里面增加如下配置。
<!-- 历史服务器端地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop102:10020</value>
</property>
<!-- 历史服务器web端地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop102:19888</value>
</property>
分发配置
xsync $HADOOP_HOME/etc/hadoop/mapred-site.xml
在hadoop102启动历史服务器
mapred --daemon start historyserver
查看历史服务器是否启动
jps
查看JobHistory
http://hadoop102:19888/jobhistory
配置日志的聚集
日志聚集概念:应用运行完成以后,将程序运行日志信息上传到HDFS系统上。
日志聚集功能好处:可以方便的查看到程序运行详情,方便开发调试。
注意:开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和HistoryManager。
开启日志聚集功能具体步骤如下:
配置yarn-site.xml
vim yarn-site.xml
在该文件里面增加如下配置。
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log.server.url</name>
<value>http://hadoop102:19888/jobhistory/logs</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
网友评论