Hadoop集群参数和常用端口
一、Hadoop集群参数配置
在hadoop集群中,需要配置的文件主要包括四个,分别是core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml,这四个文件分别是对不同组件的配置参数,具体如下:
- core-site.xml,集群全局参数。用于定义系统级别的参数,如HDFS、URL、Hadoop的临时目录等。
- hdfs-site.xml,HDFS参数。如名字节点和数据节点的存放位置、文件副本的个数、文件读取权限等。
- yarn-site.xml,集群资源管理系统参数。配置ResourceManager、NodeManager的通信端口,web监控端口等。
- mapred-site.xml,MapReduce参数。包括JobHistory Server和应用程序参数两部分,如reduce任务的默认个数、任务所能使用内存的默认上下限等。
1.1 core-site.xml
参数名称 |
默认值/缺省值 |
说明 |
fs.defaultFS |
file:/// |
文件系统主机和端口 |
io.file.buffer.size |
4096 |
流文件的缓冲区大小,,建议为65536(64K) |
hadoop.tmp.dir |
/tmp/hadoop-${user.name} |
临时文件夹 |
fs.trash.interval |
0 |
当文件被删除时,会放到用户目录的.Trash目录下,而不是立即删掉。建议配置1440(一天) |
1.2 hdfs-site.xml配置
1、NameNode的配置
参数名称 |
默认值/缺省值 |
说明 |
dfs.namenode.name.dir |
file://${hadoop.tmp.dir}/dfs/name |
定义DFS的名字节点在本地文件系统的位置 |
dfs.namenode.hosts / dfs.namenode.hosts.exclude |
null,所有DataNode都可连入NameNode |
设置允许/拒绝请求NameNode的DataNode |
dfs.blocksize |
268435456 |
对于新文件切切分的大小,单位byte。默认256M |
dfs.namenode.handler.count |
10 |
NameNode用来处理来自DataNode的RPC请求的线程数量。建议设置成Datanode数量的10% |
2、DataNode的配置
参数 |
默认值 |
参数解释 |
dfs.datanode.data.dir |
file://${hadoop.tmp.dir}/dfs/data |
定义DFS数据节点存储数据块时存储在本地文件系统的位置 |
1.3 yarn-site.xml配置
1、ResourceManager和NodeManager配置
参数名称 |
默认值/缺省值 |
说明 |
yarn.acl.enable |
true |
acl访问权限控制是否开启 |
yarn.admin.acl |
* |
管理员acl权限 |
yarn.log-aggregation-enable |
false |
是否启用日志聚集功能 |
yarn.log-aggregation.retain-seconds |
-1 |
在HDFS上聚集的日志最多保存多长时间 |
yarn.log-aggregation.retain-check-interval-seconds |
-1 |
多长时间检查一次日志 |
yarn.log-aggregation.retain-seconds |
/tmp/logs /${user}/${thisParam} |
远程日志目录子目录名称(启用日志聚集功能时有效) |
2、ResourceManager配置
参数名称 |
默认值/缺省值 |
说明 |
yarn.resourcemanager.address |
0.0.0.0:8032 |
ResourceManager提供给客户端访问的地址,客户端通过该地址向RM提交应用程序,杀死应用程序等; |
yarn.resourcemanager.scheduler.address |
0.0.0.0:8030 |
ResourceManager提供给Applicationmaster的访问地址。ApplicationMaster通过改地址向RM申请资源、释放资源等 |
yarn.resourcemanager.resource-tracker.address |
0.0.0.0:8031 |
ResourceManager提供给NodeManager的地址。NodeManager通过改地址向RM汇报心跳、领取任务等 |
yarn.resourcemanager.admin.address |
0.0.0.0:8033 |
ResourceManager提供给管理员的访问地址。管理员通过该地址向RM发送管理命令 |
yarn.resourcemanager.webapp.address |
0.0.0.0:8088 |
ResourceManager对web服务提供地址,用户可通过该地址在浏览器中查看集群各类信息 |
yarn.resourcemanager.hostname |
hostname |
ResourceManager主机名 |
yarn.resourcemanager.scheduler.class |
CapacityScheduler |
启动的资源调度器主类。目前可用的有FIFO、Capacity Scheduler和Fair Scheduler |
yarn.scheduler.minimum-allocation-mb / yarn.scheduler.maximum-allocation-mb |
1024 / 8192 |
单个任务可申请的最小/最大内存资源量 |
yarn.scheduler.minimum-allocation-vcores / yarn.scheduler.maximum-allocation-vcores |
1 / 32 |
单个任务可申请的最小/最大虚拟CPU数 |
yarn.resourcemanager.nodes.include-path / yarn.resourcemanager.nodes.exclude-path |
“” |
NodeManager黑白名单,用于允许/拒绝NodeManager对ResourceManager的访问 |
yarn.resourcemanager.resource-tracker.client.thread-count |
50 |
处理来自NodeManager的RPC请求的Handler数目 |
yarn.resourcemanager.scheduler.client.thread-count |
50 |
处理来自ApplicationMaster的RPC请求的Handler数目 |
yarn.resourcemanager.nodemanagers.heartbeat-interval-ms |
1000(ms) |
NodeManager心跳间隔 |
3、NodeManager配置
参数名称 |
默认值/缺省值 |
说明 |
yarn.nodemanager.resource.memory-mb |
8192 (MB) |
NodeManager总的可用物理内存。该参数一旦设置,在整个运行过程中不可动态修改 |
yarn.nodemanager.vmem-pmem-ratio |
2.1 |
每使用1MB物理内存,最多可用的虚拟内存数 |
yarn.nodemanager.resource.cpu-vcores |
8 |
NodeManager总的可用虚拟CPU个数 |
yarn.nodemanager.local-dirs |
${hadoop.tmp.dir}/nm-local-dir |
中间结果存放位置,一般会配置多个目录,分摊磁盘IO负载 |
yarn.nodemanager.log-dirs |
${yarn.log.dir}/userlogs |
日志存放地址 |
yarn.nodemanager.log.retain-seconds |
10800 (3小时) |
NodeManager上日志最多存放时间(不启用日志聚集功能时有效) |
yarn.nodemanager.aux-services |
“” |
NodeManager上运行的附属服务 |
yarn.nodemanager.remote-app-log-dir |
/tmp/logs |
当应用程序运行结束时,日志被转移到HDFS目录(启用日志聚集时有效) |
yarn.nodemanager.remote-app-log-dir-suffix |
${remote-app-log-dir}/${user}/{thisParam} |
集合日志后的存放地址由 ${remote-app-log-dir}/${user}/{thisParam}构成 |
1.4 mapred-site.xml配置
该配置文件主要是MapReduce相关参数配置,分为JobHistory Server和应用程序参数两部分,JobHistory可运行在一个独立节点上,而应用程序参数则可放在mapred-site.xml中作为默认参数,可以在提交应用程序时指定。
1、MapReduce JobHistory相关参数配置
在JobHistory所在节点的mapred-site.xml中配置
参数名称 |
默认值/缺省值 |
说明 |
mapreduce.jobhistory.address |
0.0.0.0:10020 |
MapReduce JobHistory Server地址 |
mapreduce.jobhistory.webapp.address |
0.0.0.0:19888 |
MapReduce JobHistory Server Web UI地址 |
mapreduce.jobhistory.intermediate-done-dir |
/mr-history/tmp |
MapReduce作业产生的日志存放位置 |
mapreduce.jobhistory.done-dir |
/mr-history/done |
mapreduce.jobhistory.done-dir |
2、MapReduce作业参数配置
可在客户端的mapred-site.xml中配置,也可在作业提交时指定这些参数。
参数名称 |
默认值/缺省值 |
说明 |
mapreduce.job.name |
作业名称 |
|
mapreduce.job.priority |
NORMAL |
作业优先级 |
yarn.app.mapreduce.am.resource.mb |
1536 |
MR ApplicationMaster占用的内存量 |
yarn.app.mapreduce.am.resource.cpu-vcores |
1 |
MR ApplicationMaster占用的虚拟CPU个数 |
mapreduce.am.max-attempts |
2 |
MR ApplicationMaster最大失败尝试次数 |
mapreduce.map.memory.mb |
1536 |
每个Map Task需要的内存量 |
mapreduce.map.cpu.vcores |
1 |
每个Map Task需要的虚拟CPU个数 |
mapreduce.map.maxattempts |
4 |
Map Task最大失败尝试次数 |
mapreduce.map.java.opts |
-Xmx1024M |
map任务启用的子JVM的最大堆大小 |
mapreduce.reduce.memory.mb |
3072 |
每个Reduce Task需要的内存量 |
mapreduce.reduce.cpu.vcores |
1 |
每个Reduce Task需要的虚拟CPU个数 |
mapreduce.reduce.maxattempts |
4 |
Reduce Task最大失败尝试次数 |
mapreduce.map.speculative |
false |
是否对Map Task启用推测执行机制 |
mapreduce.reduce.speculative |
false |
是否对Reduce Task启用推测执行机制 |
mapreduce.reduce.java.opts |
-Xmx2560M |
Reduce任务启用的子JVM的最大的堆大小 |
mapreduce.job.queuename |
default |
作业提交到的队列 |
mapreduce.task.io.sort.mb |
512 |
任务内部排序缓冲区大小 |
mapreduce.task.io.sort.factor |
100 |
排序时一次合并的文件数 |
mapreduce.map.sort.spill.percent |
0.8 |
Map阶段溢写文件的阈值(排序缓冲区大小的百分比) |
mapreduce.reduce.shuffle.parallelcopies |
50 |
Reduce Task启动的并发拷贝数据的线程数目 |
二、Hadoop常用端口
2.1 HDFS端口
参数 |
描述 |
默认端口 |
配置文件 |
fs.default.name.namemode |
namenode RPC交互端口 |
8020 |
core-site.xml |
dfs.http.address |
namenode web管理端口 |
50070 |
hdfs-site.xml |
dfs.datanode.address |
datanode控制端口 |
50010 |
hdfs-site.xml |
dfs.datanode.ipc.address |
datanode的RPC服务器地址和端口 |
50020 |
hdfs-site.xml |
dfs.datanode.http.address |
datanode的HTTP服务器地址和端口 |
50075 |
hdfs-site.xml |
2.2 Yarn端口
2.3 MapReduce端口
参数 |
描述 |
默认端口 |
配置文件 |
mapred.job.tracker |
job-tracker交互端口 |
8021 |
mapred-site.xml |
job |
tracker的web管理端口 |
50030 |
mapred-site.xml |
mapred.task.tracker.http.address |
task-tracker的HTTP端口 |
50060 |
mapred-site.xml |
【参考链接】
[1] 董西成, Hadoop YARN配置参数剖析.
[2] https://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-common/ClusterSetup.html
[3] yangjl38, hadoop三个配置文件的参数含义说明.
Hadoop集群参数和常用端口的更多相关文章
- 【转载】Hadoop集群各部分常用端口号
hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问.而随着hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集记录如 ...
- Hadoop集群 能打开50070端口不能打开8088端口 web浏览器界面
两天时间,知道现在才把这个东西解决 解决的灵感来源于百度知道一句话谢谢这个哥们 谢谢这个哥们! 我的目录是在/home/hadoop/tmp 大家如果遇到这个问题,希望能按照我的办法去试一下 2 ...
- Hadoop集群的各部分常用端口
hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问.而随着hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集记录如 ...
- (转)hadoop 集群常用端口
转载于:https://www.cnblogs.com/liying123/p/7097806.html hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于 ...
- hadoop集群默认配置和常用配置【转】
转自http://www.cnblogs.com/ggjucheng/archive/2012/04/17/2454590.html 获取默认配置 配置hadoop,主要是配置core-site.xm ...
- hadoop集群默认配置和常用配置
http://www.cnblogs.com/ggjucheng/archive/2012/04/17/2454590.html 获取默认配置 配置hadoop,主要是配置core-site.xml, ...
- Hadoop集群-HDFS集群中大数据运维常用的命令总结
Hadoop集群-HDFS集群中大数据运维常用的命令总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客会简单涉及到滚动编辑,融合镜像文件,目录的空间配额等运维操作简介.话 ...
- Hadoop集群常用的shell命令
Hadoop集群常用的shell命令 Hadoop集群常用的shell命令 查看Hadoop版本 hadoop -version 启动HDFS start-dfs.sh 启动YARN start-ya ...
- 【Big Data】HADOOP集群的配置(一)
Hadoop集群的配置(一) 摘要: hadoop集群配置系列文档,是笔者在实验室真机环境实验后整理而得.以便随后工作所需,做以知识整理,另则与博客园朋友分享实验成果,因为笔者在学习初期,也遇到不少问 ...
随机推荐
- GetHashCode之于引用类型和值类型及其特性
GetHashCode 方法可由派生类型重写.如果 GetHashCode 未重写,则通过调用基类的 Object.GetHashCode 方法来计算引用类型的哈希代码. 引用类型:Object.Ge ...
- YOLO---Darknet下使用YOLO的常用命令
Darknet下使用YOLO的常用命令 整理了一下,随手记一下. 在终端里,直接运行时Yolo的Darknet的各项命令,/home/wp/darknet/cfg/coco.data文件,使用原件:= ...
- 洛谷 P2765 魔术球问题 (dinic求最大流,最小边覆盖)
P2765 魔术球问题 题目描述 «问题描述: 假设有n根柱子,现要按下述规则在这n根柱子中依次放入编号为1,2,3,...的球. (1)每次只能在某根柱子的最上面放球. (2)在同一根柱子中,任何2 ...
- python打包工具distutils、setuptools的使用
python中安装包的方式有很多种: 源码包:python setup.py install 在线安装:pip install 包名(linux) / easy_install 包名(window) ...
- 【转】GO语言map类型interface{}转换踩坑小记
原文:https://www.az1314.cn/art/69 ------------------------------------------ mapA := make([string]inte ...
- mysql5.7安装中的问题(服务无法启动。服务没有报告任何错误。排查方法)
1.拒绝访问的问题 权限不够,必须以管理员身份启动命令行 2.MySQL 服务无法启动.服务没有报告任何错误. 进入到你的mysql安装目录,C:\Program Files\MySQL\MySQL ...
- Java实现一行一行读取文件内容(进行编码处理)
// 读取文件内容public String readFile(){ String path = ""; File file = new File(path); StringBui ...
- BZOJ 4260: Codechef REBXOR (trie树维护异或最大值)
题意 分析 将区间异或和转化为前缀异或和.那么[L,R][L,R][L,R]的异或和就等于presum[R] xor presum[L−1]presum[R]\ xor \ presum[L-1]pr ...
- vue项目更换目录后执行npm run dev 就报错(新手进)
在我们搭建好一个VUE项目的环境后,觉得这个项目存放的位置不好,想移动一下,但是移动后我们发现执行npm run dev就会报下面的错误: 明明只是移动了一下位置,就报错,实在是太恶心了. 但是只要我 ...
- Centos7安装Redis5.0.3
1.切换目录 cd tmp 2.下载 wget http://download.redis.io/releases/redis-5.0.3.tar.gz 3.解压,删除压缩包 tar xzf redi ...