共计 1844 个字符,预计需要花费 5 分钟才能阅读完成。
// 启动 zookeeper 集群(分别在 slave1、slave2 和 slave3 执行)$ zkServer.shstart
// 启动 HDFS(在 master1 执行)$ start-dfs.sh
备注:此命令分别在 master1/master2 节点启动了 NameNode 和 ZKFC,分别在 slave1/slave2/slave3 节点启动了 DataNode 和 JournalNode,如下图所示。
// 启动 YARN(在 master2 执行)$ start-yarn.sh
备注:此命令在 master2 节点启动了 ResourceManager,分别在 slave1/slave2/slave3 节点启动了 NodeManager。
// 启动 YARN 的另一个 ResourceManager(在 master1 执行,用于容灾)$ yarn-daemon.sh start resourcemanager
// 启动 YARN 的安全代理(在 master2 执行)$ yarn-daemon.sh start proxyserver
备注:proxyserver 充当防火墙的角色,可以提高访问集群的安全性
// 启动 YARN 的历史任务服务(在 master1 执行)$ mr-jobhistory-daemon.sh starthistoryserver
备注:yarn-daemon.sh start historyserver 已被弃用;CDH 版本似乎有个问题,即 mapred-site.xml 配置的 mapreduce.jobhistory.address 和 mapreduce.jobhistory.webapp.address 参数似乎不起作用,实际对应的端口号是 10200 和 8188,而且部需要配置就可以在任意节点上开启历史任务服务。
hadoop-master1 开启了 NameNode、ResourceManager、HistoryServer 和 ZKFC,如下图所示:
hadoop-master2 开启了 NameNode、ResourceManager、ProxyServer 和 ZKFC,如下图所示:
hadoop-slave1、hadoop-slave2 和 hadoop-slave3 分别开启了 DataNode、JournalNode、NodeManager 和 ZooKeeper,如下图所示:
下图为 http://hadoop-master1:50070,可看到 NameNode 为 active 状态:
下图为 http://hadoop-master2:50070,可看到 NameNode 为 standby 状态:
HDFS 还有一个隐藏的 UI 页面 http://hadoop-master1:50070/dfshealth.jsp 比较好用:
下图为 http://hadoop-master2:8088,可看到 ResourceManager 为 active 状态:
下图为 http://hadoop-master1:8088,可看到 ResourceManager 为 standby 状态,它会自动跳转到 http://hadoop-master2:8088:
下图为 http://hadoop-master1:19888,可查看历史任务信息:
// 向 HDFS 上传数据
$ hadoopfs -put webcount.txt /input
// 查看 HDFS 上的数据
$ hadoopfs -ls /input
$ hadoopfs -cat /input/webcount.txt
// 向 YARN 提交 MapReduce 任务,该任务用于分析网站日志文件 webcount.txt 统计每小时的点击次数
$ hadoopjar mr-webcount-0.0.1-SNAPSHOT.jar com.mr.demo.WebCountDriver/input/webcount.txt /output/webcount 1 1
// 在 HDFS 查看结果
$ hadoopfs -ls /output/webcount
$ hadoopfs -cat /output/webcount/part-r-00000
// 通过 Web UI 查看任务信息和历史任务信息
- Hadoop 2.6.0 HA 高可用集群配置详解(一)
- Hadoop 2.6.0 HA 高可用集群配置详解(二)
- Hadoop 2.6.0 HA 高可用集群配置详解(三)