HDFS模块
- NameNode
NameNode是主节点,存储文件的元数据,如文件名,文件目录结构,文件属性,以及每个文件的块列表和块所在的DataNode等。NameNode的元数据中的一部分存放在内存中的,在进程当中,另一部分存放在本地磁盘(fsimage:镜像文件和edits:编辑日志)
在core-site.xml中配置
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:8020</value>
</property>
- DataNodes
在本地文件系统存储文件块数据,以及块的校检
在slaves文件中配置
- Secondary NameNode
用来监控HDFS状态的后台程序,每隔一段时间获取一次快照
在hdfs-site.xml中配置
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>localhost:50090</value>
</property>
YARN模块
- ResourceManager
处理客户端请求;启动/监控ApplicationMaster;监控NodeManager;资源分配与调度
在yarn-site.xml配置
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
- NodeManagers
单个节点上的资源管理;处理来自ResourceManager的命令;处理来自ApplicationMaster的命令
在slaves文件中的配置
- ApplicationMaster
数据切分;为应用程序申请资源,并分配给内部任务;任务监控与容错
- Container
对任务运行环境的抽象,封装了CPU、内存等多维资源以及环境变量、启动命令等任务运行相关的信息
MapReduce
- 历史日志HistoryServer
可以查看mapreduce程序执行的历史日志
<property>
<name>mapreduce.jobhistory.address</name>
<value>localhost:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>localhost:19888</value>
</property>