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三个配置文件的参数含义说明.

 

posted @ 2018-10-08 17:14  笨小康u  阅读(3415)  评论(0编辑  收藏  举报