注意:格式化NameNode,会产生新的集群 id,导致 NameNode 和 DataNode 的集群 id 不一致,集群找不到已往数据。
如果集群在运行过程中报错,需要重新格式化 NameNode 的话,一定要先停止namenode 和 datanode 进程,并且要删除所有机器的
data 和 logs 目录,然后再进行格式化。
[mnlg@hadoop102 hadoop-3.1.3]$ hdfs namenode -format2.启动 HDFS
[mnlg@hadoop102 hadoop-3.1.3]$ sbin/start-dfs.sh3.启动 YARN(配置了 ResourceManager的节点’hadoop103’之后启动)
[mnlg@hadoop103 hadoop-3.1.3]$ sbin/start-yarn.sh4.Web 端查看 HDFS 的 NameNode
- 浏览器中输入:http://hadoop102:9870 (查看 HDFS 上存储的数据信息)
- 浏览器中输入:http://hadoop103:8088 (查看 YARN 上运行的 Job 信息)
二、集群测试 1.上传文件到集群
//上传小文件
[mnlg@hadoop102 hadoop-3.1.3]$ hadoop fs -mkdir /input
[mnlg@hadoop102 hadoop-3.1.3]$ hadoop fs -put $HADOOP_HOME/wcinput/word.txt /input
//上传大文件
[mnlg@hadoop102 hadoop-3.1.3]$ hadoop fs -put /opt /opt/software/jdk-8u212-linux-x64.tar.gz /
//查看上传的文件
[mnlg@hadoop102 hadoop-3.1.3]$ cat hdfs-site.xml
//执行wordcount程序
[mnlg@hadoop102 hadoop-3.1.3]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /input /output
三、配置历史服务器
- 为了查看程序的历史运行情况,需要配置一下历史服务器
[mnlg@hadoop102 hadoop-3.1.3]$ vim mapred-site.xml //在该文件里面增加如下配置2.分发配置mapreduce.jobhistory.address hadoop201:10020 mapreduce.jobhistory.webapp.address hadoop201:19888
[mnlg@hadoop102 hadoop-3.1.3]$ xsync $HADOOP_HOME/etc/hadoop/mapred-site.xml3.在hadoop102 启动历史服务器
[mnlg@hadoop102 hadoop-3.1.3]$ mapred --daemon start historyserver4.查看历史服务器是否启动
[mnlg@hadoop102 hadoop-3.1.3]$ jps5.查看JobHistory
- 浏览器中输入:http://hadoop102:19888/jobhistory
四、配置日志的聚集(开启日志聚集功能具体步骤如下) 1.配置yarn-site.xml
[mnlg@hadoop102 hadoop-3.1.3]$ vim yarn-site.xml //在该文件里面增加如下配置2.分发配置yarn.log-aggregation-enable true yarn.log.server.url http://hadoop201:19888/jobhistory/logs yarn.log-aggregation.retain-seconds 604800
[mnlg@hadoop102 hadoop-3.1.3]$ xsync $HADOOP_HOME/etc/hadoop/yarn-site.xml3.关闭 ResourceManager 、NodeManager 和 HistoryServer
[mnlg@hadoop103 hadoop-3.1.3]$ sbin/stop-yarn.sh [mnlg@hadoop103 hadoop-3.1.3]$ mapred --daemon stop historyserver4.启动 ResourceManager 、NodeManager 和 HistoryServer
[mnlg@hadoop103 ~]$ start-yarn.sh [mnlg@hadoop102 ~]$ mapred --daemon start historyserver5.删除HDFS上已经存在的输出文件
[mnlg@hadoop102 ~]$ hadoop fs -rm -r /output6.执行 WordCount 程序
[mnlg@hadoop102 hadoop-3.1.3]$ hadoop jar share/hadoop/mapreduce/hadoop- mapreduce-examples-3.1.3.jar wordcount /input /output7.查看日志
- 历史服务器地址:http://hadoop102:19888/jobhistory
五、 集群启动停止方式总结 1.各个模块分开启动/停止(配置 ssh 是前提)常用
//整体启动/停止 HDFS start-dfs.sh/stop-dfs.sh //整体启动/停止 YARN start-yarn.sh/stop-yarn.sh2.各个服务组件逐一启动停止
//分别启动/停止 HDFS 组件 hdfs --daemon start/stop namenode/datanode/secondarynamenode //启动/停止 YARN yarn --daemon start/stop resourcemanager/nodemanager
六、Hadoop 集群常用脚本 1.Hadoop 集群启停脚本(包含 HDFS,Yarn,Historyserver):my_hadoop.sh
[mnlg@hadoop102 ~]$ cd /home/atguigu/bin
[mnlg@hadoop102 bin]$ vim my_hadoop.sh
//在该文件里面增加如下配置
#!/bin/bash
if [ $# -lt 1 ]
then
echo "No Args Input..."
exit ;
fi
case $1 in
"start")
echo " =================== 启动 hadoop 集群 ==================="
echo " --------------- 启动 hdfs ---------------"
ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/start-dfs.sh"
echo " --------------- 启动 yarn ---------------"
ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/start-yarn.sh"
echo " --------------- 启动 historyserver ---------------"
ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon start historyserver"
;;
"stop")
echo " =================== 关闭 hadoop 集群 ==================="
echo " --------------- 关闭 historyserver ---------------"
ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon stop historyserver"
echo " --------------- 关闭 yarn ---------------"
ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/stop-yarn.sh"
echo " --------------- 关闭 hdfs ---------------"
ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/stop-dfs.sh"
;;
*)
echo "Input Args Error..."
;;
esac
//保存退出,赋予脚本执行权限
[mnlg@hadoop102 bin]$ chmod +x my_hadoop.sh
2.查看三台服务器 Java进程脚本:jpsall
[mnlg@hadoop102 ~]$ cd /home/atguigu/bin [mnlg@hadoop102 bin]$ vim jpsall //在该文件里面增加如下配置 #!/bin/bash for host in hadoop102 hadoop103 hadoop104 do echo =============== $host =============== ssh $host jps done //保存退出,赋予脚本执行权限 [mnlg@hadoop102 bin]$ chmod +x jpsall3.分发/home/atguigu/bin 目录,保证自定义脚本在三台机器上都可以使用
[mnlg@hadoop102 ~]$ xsync /home/atguigu/bin/
七、Hadoop配置文件 1.默认配置文件
- core-default.xml
- hdfs-default.xml
- yarn-default.xml
- mapred-default.xml
(1)核心配置文件配置 core-site.xml
[mnlg@hadoop102 ~]$ cd $HADOOP_HOME/etc/hadoop [mnlg@hadoop102 hadoop]$ vim core-site.xml //在该文件里面增加如下配置fs.defaultFS hdfs://hadoop102:8020 hadoop.tmp.dir /opt/module/hadoop-3.1.3/data hadoop.http.staticuser.user mnlg
(2)HDFS 配置文件
//配置 hdfs-site.xml [mnlg@hadoop102 hadoop]$ vim hdfs-site.xml //在该文件里面增加如下配置dfs.namenode.http-address hadoop102:9870 dfs.namenode.secondary.http-address hadoop104:9868
(3)YARN 配置文件
//配置 yarn-site.xml [mnlg@hadoop102 hadoop]$ vim yarn-site.xml //在该文件里面增加如下配置yarn.nodemanager.aux-services mapreduce_shuffle yarn.resourcemanager.hostname hadoop103 yarn.nodemanager.env-whitelist JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME
(4)MapReduce 配置文件
//配置 mapred-site.xml
[mnlg@hadoop102 hadoop]$ vim mapred-site.xml
//在该文件里面增加如下配置
mapreduce.framework.name
yarn
3.在集群上分发配置好的 Hadoop 配置文件
//通过xsync发送配置文件 [mnlg@hadoop102 hadoop]$ xsync /opt/module/hadoop-3.1.3/etc/hadoop4.去另外两台虚拟机上查看文件分发情况(通过cat查看配置文件) 5.配置workers
[mnlg@hadoop102 hadoop]$ vim /opt/module/hadoop-3.1.3/etc/hadoop/workers
//在该文件里面增加如下配置
//(该文件中添加的内容结尾不允许有空格,文件中不允许有空行。)
hadoop102
hadoop103
hadoop104
//同步所有节点配置文件
[mnlg@hadoop102 hadoop]$ xsync /opt/module/hadoop-3.1.3/etc
点击可查看Hadoop基础篇



