分享

Hadoop3.0集群安装知识2

pig2 2018-1-4 17:18:45 发表于 连载型 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 8988
问题导读

1.yarn-site配置文件,主要配置哪两个进程?
2.mapred-site.xml配置文件,配置哪些内容?
3.hadoop如何配置监测NodeManagers的健康状况?






接上篇hadoop3.0集群安装知识1
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23725


etc/hadoop/yarn-site.xml
配置ResourceManager和NodeManager:
参数
说明
yarn.acl.enable
true / false
是否启用ACL 默认为false。
yarn.admin.acl
Admin ACL
ACL在集群上设置管理员。ACLs 适用于 comma-separated-usersspacecomma-separated-groups。默认值为*,代表任何人可以访问。指定为space值代表没有人可以访问
yarn.log-aggregation-enable
false
启用或禁用日志聚合的配置
yarn.admin.acl:以逗号分隔的用户列表+空格+以逗号分隔的用户组列表",例如 "user1,user2 group1,group2"。如果只有组信息,需要在最前端加入一个空格,例如" group1,group2"。【参考鈞少的博客】


配置ResourceManager:

参数
说明
yarn.resourcemanager.address
ResourceManager host:port :客户端通过该地址向RM提交作业
如果设置host:port  ,会覆盖在yarn.resourcemanager.hostname
中设置的hostname
yarn.resourcemanager.scheduler.address
ResourceManager host:port  ApplicationMasters 与Scheduler通信获取资源.
ResourceManager 对ApplicationMaster暴露的访问地址
如果设置host:port , 会覆盖yarn.resourcemanager.hostname
中设置的hostname
yarn.resourcemanager.resource-tracker.address
ResourceManager 对NodeManager暴露的地址
如果设置host:port , 会覆盖yarn.resourcemanager.hostname中
设置的hostname
yarn.resourcemanager.admin.address
ResourceManager 对管理员暴露的访问地址
如果设置host:port , 会覆盖yarn.resourcemanager.hostname
中设置的hostname
yarn.resourcemanager.webapp.address
ResourceManager对外web ui地址
如果设置host:port , 会覆盖yarn.resourcemanager.hostname
中设置的hostname
yarn.resourcemanager.hostname
ResourceManager host.
hostname设置,可以被上述替换
yarn.resourcemanager.scheduler.class

CapacityScheduler(推荐),FairScheduler(也推荐)
或FifoScheduler。 使用完全限定的类名,例如org.apache.hadoop.yarn.server.resourcemanager.
scheduler.fair.FairScheduler。

yarn.scheduler.minimum-allocation-mb
在资源管理器上分配给每个容器请求的内存的最小限度。

In MBs
yarn.scheduler.maximum-allocation-mb
在资源管理器上分配给每个容器请求的内存的最大限度

In MBs
yarn.resourcemanager.nodes.include-path / yarn.resourcemanager.nodes.exclude-path
NodeManagers permitted/excluded列表
如果需要,使用这些文件控制允许的NodeManagers列表。

配置NodeManager:


参数
Notes
yarn.nodemanager.resource.memory-mb
资源即可用的物理内存,以MB为单位,用于给定的NodeManager
定义NodeManager上可用于运行容器的总可用资源


yarn.nodemanager.vmem-pmem-ratio
任务的虚拟内存使用量可能超过物理内存的最大比率
每个任务虚拟内存使用超过它的物理内存限制的比率。
NodeManager的任务使用的虚拟内存的总量超过物理内存使用的比率
yarn.nodemanager.local-dirs
写入中间数据的本地文件系统上目录用逗号分隔的列表。

多个路径有助于扩展磁盘I/O。

yarn.nodemanager.log-dirs
写入日志的本地文件系统的路径逗号分割列表
多个路径有助于扩展磁盘I/O。

yarn.nodemanager.log.retain-seconds
10800
在NodeManager上保留日志文件的缺省时间(以秒为单位)
仅在 log-aggregation禁用的情况下适用

yarn.nodemanager.remote-app-log-dir
/logs
应用程序完成时,日志被转移到的HDFS目录。需要设置适当权限。
仅在启用log-aggregation的情况下适用。

yarn.nodemanager.remote-app-log-dir-suffix
logs
追加到远程日志目录。日志将会聚合到
${yarn.nodemanager.remote-app-log-dir}/${user}/${thisParam} ,
仅适用于log-aggregation启用

yarn.nodemanager.aux-services
mapreduce_shuffle
Shuffle服务需要设置map reduce应用程序

yarn.nodemanager.env-whitelist
环境属性应该继承制NodeManagers的Containers
对于mapreduce应用程序除了默认值HADOOP_MAPRED_HOME被添加。
属性值还有JAVA_HOME,HADOOP_COMMON_HOME,
HADOOP_HDFS_HOME,
HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,
HADOOP_YARN_HOME,
HADOOP_MAPRED_HOME



配置History Server (需要移到其它地方):


参数
说明
yarn.log-aggregation.retain-seconds
-1
配置多久后聚合日志文件被删除, 配置成 -1禁用此功能。注意不要设置太小

yarn.log-aggregation.retain-check-interval-seconds
-1
检查聚合日志保留期间的时间。如果设置为0或负值,则计算该值为汇总日志保留时间的十分之一。注意不要配置太小


etc/hadoop/mapred-site.xml

配置MapReduce应用程序:

参数
说明
mapreduce.framework.name
yarn
执行框架设置为 Hadoop YARN

mapreduce.map.memory.mb
1536

每个Map Task需要的内存量
mapreduce.map.java.opts
-Xmx1024M
map子jvm的最大 heap-size

mapreduce.reduce.memory.mb
3072
每个reduce需要的最大内存

mapreduce.reduce.java.opts
-Xmx2560M
reduces子jvm的最大 heap-size


mapreduce.task.io.sort.mb
512
当数据排序时,更高的memory-limit

mapreduce.task.io.sort.factor
100
当排序文件时,一次合并更多的流

mapreduce.reduce.shuffle.parallelcopies
50
reduce运行更多数量的的并行的copies,获取map大量的输出

配置MapReduce JobHistory Server:

参数
说明
mapreduce.jobhistory.address
MapReduce JobHistory Server 访问地址
默认端口10020.
mapreduce.jobhistory.webapp.address
MapReduce JobHistory Server Web UI 访问地址
默认端口knnaauudnerom19888.
mapreduce.jobhistory.intermediate-done-dir
/mr-history/tmp
mapreduce job所写历史文件的路径

mapreduce.jobhistory.done-dir
/mr-history/done
MR JobHistory Server管理历史文件的目录


监测NodeManagers的健康状况

Hadoop提供了一种机制,管理员可以通过该机制将NodeManager配置为定期运行管理员提供的脚本,以确定节点是否健康。

管理员可以通过在脚本中执行任何选择检查来确定节点是否处于健康状态。如果脚本检测到节点处于不健康状态,则必须以字符串ERROR打印一行到标准输出。 NodeManager定期生成脚本并检查其输出。如果脚本的输出包含ERROR字符串(如上所述),那么节点的状态将报告为不健康,并且该节点将被ResourceManager列入黑名单。没有进一步的任务将被分配给这个节点。但是,NodeManager继续运行该脚本,以便节点再次变得健康时,它将自动从ResourceManager中的黑名单节点中删除。节点的运行状况和脚本的输出(如果运行状况不佳)可供管理员在ResourceManager Web界面中使用。节点健康以来的时间也显示在Web界面上。

以下参数可用于控制etc/hadoop/yarn-site.xml中的节点运行状况监视脚本。

参数
说明
yarn.nodemanager.health-checker.script.path
Node health script
脚本监测节点的健康状态

yarn.nodemanager.health-checker.script.opts
Node health script options
脚本选项检查节点的健康状态。
yarn.nodemanager.health-checker.interval-ms
Node health script interval
运行健康脚本的时间间隔。
yarn.nodemanager.health-checker.script.timeout-ms
Node health script timeout interval
健康脚本执行超时。

如果本地磁盘损坏,健康脚本监测不支持给出Error。NodeManager能定期监测本地磁盘的健康状态(特别是检查nodemanager-local-dirs和nodemanager-log-dirs),并且在根据配置属性yarn.nodemanager.disk-health-checker.min-healthy-disks设置的值达到坏目录数量的阈值,整个节点被标记为不健康,并且这个信息也被发送到资源管理器。引导磁盘被攻击,或者引导磁盘中的故障由运行状况检查程序脚本识别。

下一篇:Hadoop3.0集群安装知识3
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23745


本帖被以下淘专辑推荐:

没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条