`
zuochanxiaoheshang
  • 浏览: 8016 次
社区版块
存档分类
最新评论

Hadoop常用配置总结

阅读更多

NameNode管理界面:http://namenode:50070

JobTracker管理界面:http://jobtracker:50030

Hadoop守护进程日志存放目录:可以用环境变量${Hadoop_LOG_DIR}进行配置,默认情况下是${HADOOP_HOME}/logs

1.配置类型节点的环境变量

在配置集群的时候可以在conf/hadoop-env.sh配置不同节点的环境变量:

Daemon

Configure Options

NameNode

HADOOP_NAMENODE_OPTS

DataNode

HADOOP_DATANODE_OPTS

SecondaryNamenode

HADOOP_SECONDARYNAMENODE_OPTS

JobTracker

HADOOP_JOBTRACKER_OPTS

TaskTracker

HADOOP_TASKTRACKER_OPTS

例如,可以在hadoop-env.sh中加入下面一行,使NameNode使用ParallelGC

export HADOOP_NAMENODE_OPTS="-XX:+UseParallelGC ${HADOOP_NAMENODE_OPTS}" 

2. 配置Hadoop守护进程
conf/core-site.xml:通过该配置文件配置文件系统根目录,即hdfs://namenode

Parameter

Value

Notes

fs.default.name

URI of NameNode.

hdfs://hostname/

conf/hdfs-site.xml:通过该配置文件,配置NameNodeDataNode数据文件的存放目录

Parameter

Value

Notes

dfs.name.dir

NameNode上存放命名空间和日志的本地目录,即fsimageedits文件的存放目录

如果该配置有由逗号分开的多条目录,那么NameNode会在每条目录中进行冗余存储

dfs.data.dir

DataNode中存放block的目录

如果是由逗号分开的多条目录,则所有的目录都用来存储数据

conf/mapred-site.xml:可以通过这个文件配置MapReduce框架

Parameter

Value

Notes

mapred.job.tracker

JobTrackerIP和端口

host:portpair.

mapred.system.dir

Path on the HDFS where where the MapReduce framework stores system files e.g. /hadoop/mapred/system/.

This is in the default filesystem (HDFS) and must be accessible from both the server and client machines.

mapred.local.dir

Comma-separated list of paths on the local filesystem where temporary MapReduce data is written.

Multiple paths help spread disk i/o.

mapred.tasktracker.{map|reduce}.tasks.maximum

The maximum number of MapReduce tasks, which are run simultaneously on a given TaskTracker, individually.

Defaults to 2 (2 maps and 2 reduces), but vary it depending on your hardware.

dfs.hosts/dfs.hosts.exclude

List of permitted/excluded DataNodes.

If necessary, use these files to control the list of allowable datanodes.

mapred.hosts/mapred.hosts.exclude

List of permitted/excluded TaskTrackers.

If necessary, use these files to control the list of allowable TaskTrackers.

mapred.queue.names

Comma separated list of queues to which jobs can be submitted.

The MapReduce system always supports atleast one queue with the name as default. Hence, this parameter's value should always contain the string default. Some job schedulers supported in Hadoop, like the Capacity Scheduler, support multiple queues. If such a scheduler is being used, the list of configured queue names must be specified here. Once queues are defined, users can submit jobs to a queue using the property name mapred.job.queue.name in the job configuration. There could be a separate configuration file for configuring properties of these queues that is managed by the scheduler. Refer to the documentation of the scheduler for information on the same.

mapred.acls.enabled

Boolean, specifying whether checks for queue ACLs and job ACLs are to be done for authorizing users for doing queue operations and job operations.

If true, queue ACLs are checked while submitting and administering jobs and job ACLs are checked for authorizing view and modification of jobs. Queue ACLs are specified using the configuration parameters of the form mapred.queue.queue-name.acl-name, defined below under mapred-queue-acls.xml. Job ACLs are described at Job Authorization

mapred.task.timeout

Map/reduce task多长时间没有返回就认为他是失败的

一般为10分钟

mapred.map.max.attemptes

如果一个map任务失败,最多可以重新调度的次数

一般为4

mapred.reduce.max.attempts

如果一个reduce任务失败,最多可以重新调度的次数

一般为4

mapred.max.map.failures.percent

一个作业可以允许的map任务失败的比率

有时候我们认为,一个作业即使有一部分任务失败但作业其他任务执行也是有用的,该参数设置一个作业可以允许最多可以承受多少map任务失败

mapred.max.reduce.failures.percent

同上,针对reduce任务

同上,针对reduce任务

mapred.tasktracker.expiry.interval

Tasktracker多长时间没有向JobTracker发送心跳就认为tasktracker失败

默认为10分钟

mapred.user.jobconf.limit

Hadoop能够接受的最多job数量

mapred.tasktracker.map.tasks.maximum

每一个tasktracker能够同时执行的map的个数

默认为2

mapred.tasktracker.reduce.tasks.maximum

每一个tasktracker能够同时执行的reduce的个数

默认为2

下面是Hadoop项目在做一些项目时,对他们的集群所做的配置,在实际工作过程中我们也可以进行参考。

This section lists some non-default configuration parameters which have been used to run the sort benchmark on very large clusters.

Some non-default configuration values used to run sort900, that is 9TB of data sorted on a cluster with 900 nodes:

Configuration File

Parameter

Value

Notes

conf/hdfs-site.xml

dfs.block.size

134217728

HDFS blocksize of 128MB for large file-systems.

conf/hdfs-site.xml

dfs.namenode.handler.count

40

More NameNode server threads to handle RPCs from large number of DataNodes.

conf/mapred-site.xml

mapred.reduce.parallel.copies

20

Higher number of parallel copies run by reduces to fetch outputs from very large number of maps.

conf/mapred-site.xml

mapred.map.child.java.opts

-Xmx512M

Larger heap-size for child jvms of maps.

conf/mapred-site.xml

mapred.reduce.child.java.opts

-Xmx512M

Larger heap-size for child jvms of reduces.

conf/core-site.xml

fs.inmemory.size.mb

200

Larger amount of memory allocated for the in-memory file-system used to merge map-outputs at the reduces.

conf/core-site.xml

io.sort.factor

100

More streams merged at once while sorting files.

conf/core-site.xml

io.sort.mb

200

Higher memory-limit while sorting data.

conf/core-site.xml

io.file.buffer.size

131072

Size of read/write buffer used in SequenceFiles.

Updates to some configuration values to run sort1400 and sort2000, that is 14TB of data sorted on 1400 nodes and 20TB of data sorted on 2000 nodes:

Configuration File

Parameter

Value

Notes

conf/mapred-site.xml

mapred.job.tracker.handler.count

60

More JobTracker server threads to handle RPCs from large number of TaskTrackers.

conf/mapred-site.xml

mapred.reduce.parallel.copies

50

conf/mapred-site.xml

tasktracker.http.threads

50

More worker threads for the TaskTracker's http server. The http server is used by reduces to fetch intermediate map-outputs.

conf/mapred-site.xml

mapred.map.child.java.opts

-Xmx512M

Larger heap-size for child jvms of maps.

conf/mapred-site.xml

mapred.reduce.child.java.opts

-Xmx1024M

Larger heap-size for child jvms of reduces.

0
2
分享到:
评论

相关推荐

    熟悉常用的Linux操作和Hadoop操作

    ### 常用Linux操作与Hadoop操作详解 #### 实验背景及目的 为了更好地进行后续的上机实验,我们有必要提前熟悉常用的Linux系统操作以及Hadoop的基本操作。通过本次实验,可以掌握Linux环境下文件与目录的基本管理...

    Hadoop的xmind的入门笔记

    1. **Hadoop day01.xmind**:可能包含了Hadoop的安装配置、环境搭建,以及HDFS的基本操作,如上传、下载文件,理解HDFS的文件块和副本策略。 2. **Hadoop day02.xmind**:可能进一步讲解MapReduce的工作原理,包括...

    hadoop常用端口

    本文将详细解析Hadoop中常用的端口及其配置,包括HDFS、MapReduce以及其他的次要服务端口。 首先,我们关注HDFS(Hadoop Distributed File System)的端口配置。NameNode作为HDFS的核心,其RPC(Remote Procedure ...

    Hadoop常用命令

    ### Hadoop常用命令详解 Hadoop是一款开源软件框架,主要用于分布式存储与处理大规模数据集。在实际使用过程中,掌握一些常用的Hadoop命令对于管理和维护Hadoop集群至关重要。下面将详细介绍这些命令及其用法。 ##...

    hadoop集群配置范例及问题总结.pdf

    hadoop集群配置范例及问题总结 Hadoop集群配置是大数据处理的关键步骤,本文将详细介绍Hadoop集群配置的步骤和注意事项。 一、硬件环境配置 Hadoop集群需要多台机器组成,通常使用虚拟机来模拟多台机器。 VMware ...

    实验1 安装Hadoop.doc

    根据给定文件的信息,我们可以总结出以下几个重要的知识点: ### 一、Linux虚拟机的搭建 #### 实验步骤 1. **安装虚拟机软件**:在Windows平台上安装虚拟机软件Vmware或VirtualBox。 - 安装过程相对简单,按照...

    hadoop2安装和常用shell命令

    本文详细介绍了Hadoop2的安装步骤以及一些常用的Shell命令,包括系统配置、Hadoop用户和目录的准备、Hadoop的安装、集群的启动与维护等。通过这些步骤,你可以成功地搭建起一个功能完备的Hadoop2集群,并利用各种...

    Hadoop3.1.3安装和单机/伪分布式配置

    - **熟悉Hadoop的常用操作**:如文件上传、数据处理等。 #### 二、实验原理 ##### 1. Hadoop单机配置(非分布式) - **定义**:Hadoop的默认模式是非分布式模式,即本地模式。在这种模式下,所有的Hadoop进程都在同...

    新版Hadoop视频教程 段海涛老师Hadoop八天完全攻克Hadoop视频教程 Hadoop开发

    04-hadoop-HA机制的配置文件.avi 05-hadoop分布式集群HA模式部署.avi 06-hdfs--HA测试.avi 07-hdfs--动态增加节点和副本数量管理.avi 08-HA的java api访问要点.avi 09-hive入门.avi 第六天 hbase hive 01-...

    hadoop3.3.0-winutils所有bin文件

    在Windows环境中部署Hadoop和Spark时,需要正确配置环境变量,包括指向WinUtils的路径,以及设置HADOOP_HOME、JAVA_HOME等。安装完成后,可以通过bin目录下的脚本启动Hadoop服务,如NameNode、DataNode、...

    VMWare Workstation安装和配置Hadoop群集环境

    包括安装 VMWare Workstation、Redhat Linux 9.0、JDK 1.6.0_25和Hadoop 0.21.0等软件的安装和配置,以及虚拟机的网络连接方式和IP地址的设置。 一、VMWare Workstation的安装和配置 VMWare Workstation是一个功能...

    hadoop环境搭建,机器部署以及 Linux 常用命令操作指南

    hadoop 环境搭建、机器部署以及 Linux 常用命令操作指南 本指南将指导用户从头开始搭建 Hadoop 环境,包括虚拟机环境的准备、Linux 基础知识、shell 增强大数据集群环境准备、ZooKeeper 介绍及集群操作网络编程等...

    截图版说明:Hadoop实验参照手册一(安装VMware与CentOS).pdf

    学会在Linux环境下进行基础配置,包括IP地址、hosts文件及网络设置;能够独立完成Hadoop系统的安装及运行。 - **团队目标**:共同完成Hadoop集群的搭建,并实现WordCount案例的执行;确保每位成员达成个人目标;组织...

    Hadoop生态圈常用软件打包rpm spec描述文件

    总结起来,`Hadoop生态圈常用软件打包rpm spec描述文件`是为了在Linux环境中高效管理和部署Hadoop相关组件,通过`spec`文件定制化安装过程,解决依赖问题,提供便捷的维护手段。了解并熟练使用`spec`文件对于Linux...

    hadoop-2.7.1.tar.gz

    用户在Windows上解压这个文件后,可能需要按照提供的说明或者文档进行配置,比如设置环境变量,修改配置文件如`core-site.xml`, `hdfs-site.xml`, `mapred-site.xml` 和 `yarn-site.xml`,以适应本地环境。...

    hadoop的经典讲义

    启动Hadoop涉及配置文件的设置,如`Core-site.xml`、`Hdfs-site.xml`、`Mapred-site.xml`等,以及环境变量的配置。启动和停止Hadoop服务通常通过相应的脚本或命令完成,例如`start-hadoop`和`stop-hadoop`。 总结来...

    Hadoop2.7.2伪分布部署

    伪分布式部署是Hadoop学习和开发中常用的一种部署方式,它使得开发者能够在单机环境下模拟分布式计算场景。配置JDK、创建hadoop用户、安装SSH服务、配置无密码SSH登录以及正确选择Hadoop版本是整个部署过程中的关键...

    Hadoop集群部署、实战等相关培训资料

    接下来是《Hadoop常用命令.docx》,这是一份实用的工具文档,列举了Hadoop生态系统中常用的命令行工具,如hdfs dfs、hadoop fs、hadoop jar等,这些命令对于日常操作Hadoop集群至关重要。通过学习这些命令,用户可以...

    hadoop操作命令设置

    为了提升工作效率,简化Hadoop的日常操作,可以通过设置别名(alias)来将Hadoop的常用操作命令调整为更加熟悉、易于记忆的格式。下面,我们将详细探讨如何通过设置别名来优化Hadoop的操作体验。 ### 设置Hadoop...

    hadoop运维经验分享

    总结,Hadoop运维不仅仅是管理硬件和软件,还包括深入理解Hadoop架构、性能调优、数据管理和安全性等多个维度。通过不断学习和实践,运维人员能构建和维护稳定、高效的Hadoop集群,为企业的大数据处理提供坚实保障。

Global site tag (gtag.js) - Google Analytics