Hadoop的三种运行模式(启动模式)
1.1、单机模式(独立模式)(Local或Standalone Mode)
- 默认情况下,Hadoop即处于该模式,用于开发和调式。
- 不对配置文件进行修改。
- 使用本地文件系统,而不是分布式文件系统。
- Hadoop不会启动NameNode、DataNode、JobTracker、TaskTracker等守护进程,Map()和Reduce()任务作为同一个进程的不同部分来执行的。
- 用于对MapReduce程序的逻辑进行调试,确保程序的正确。
1.2、伪分布式模式(Pseudo-Distrubuted Mode)
- Hadoop的守护进程运行在本机机器,模拟一个小规模的集群。
- 在一台主机模拟多主机。
- Hadoop启动NameNode、DataNode、JobTracker、TaskTracker这些守护进程都在同一台机器上运行,是相互独立的Java进程。
- 在这种模式下,Hadoop使用的是分布式文件系统,各个作业也是由JobTraker服务,来管理的独立进程。在单机模式之上增加了代码调试功能,允许检查内存使用情况,HDFS输入输出,以及其他的守护进程交互。类似于完全分布式模式,因此,这种模式常用来开发测试Hadoop程序的执行是否正确。
- 修改3个配置文件:core-site.xml(Hadoop集群的特性,作用于全部进程及客户端)、hdfs-site.xml(配置HDFS集群的工作属性)、mapred-site.xml(配置MapReduce集群的属性)
- 格式化文件系统
1.3、全分布式集群模式(Full-Distributed Mode)
- Hadoop的守护进程运行在一个集群上。
- Hadoop的守护进程运行在由多台主机搭建的集群上,是真正的生产环境。
- 在所有的主机上安装JDK和Hadoop,组成相互连通的网络。
- 在主机间设置SSH免密码登录,把各从节点生成的公钥添加到主节点的信任列表。
- 修改3个配置文件:core-site.xml、hdfs-site.xml、mapred-site.xml,指定NameNode和JobTraker的位置和端口,设置文件的副本等参数。
- 格式化文件系统
注意:所谓分布式要启动守护进程,即:使用分布式hadoop时,要先启动一些准备程序进程,然后才能使用比如 start-dfs.sh,start-yarn.sh。而本地模式不需要启动这些守护进程
三种模式的集群必须配置信息:
下面详细分析配置三种模式的“集群”所需要的必须配置。可以配置完,体验一把,就可以主观地感受三种之间的区别。
组件名称 | 属性名称 | 本地模式 | 伪分布式 | 完全分布式 |
---|---|---|---|---|
Common | fs.defaultFs | file:///(默认) | hdfs://localhost/ | hdfs://namenode |
HDFS | dfs.replication | N/A | 1 | 3(默认) |
MapReduce | mapreduce.framework.name | local(默认) | yarn | yarn |
Yarn | yarn.resoucemanager.hostname yarn.nodemanager.auxservice | N/A N/A | localhost mapreduce_shuffle | resoucemanager maperduce_shuffle |
参考:https://blog.csdn.net/qq_35571554/article/details/83216656
《Hadoop权威指南 第四版》