Hadoop的配置详解
大家经过搭建单节点、伪分布、完全分布模式的集群环境,基本上会用到以下几个配置,core-site.xm/hdfs-site.xml/mapred-site.xml.
相信大家已经使用了其中的一些参数,下面我们来详细介绍一下各个配置中的参数,介绍的参数是大家可能用到的,当然还有很多没介绍到(学习hadoop不久,如果哪里错了,请提出来,谢谢拉)
1.core-site.xml
常用的设置
fs.default.name hdfs://mastername:9000
hadoop.tmp.dir /tmp/hadoop-${user.name}
优化设置
hadoop.logfile.size
hadoop.logfile.count
fs.checkpoint.dir ${hadoop.tmp.dir}/dfs/namesecondary
fs.checkpoint.size
fs.checkpoint.period
(1)hadoop.tmp.dir 参数 /tmp/hadoop-${user.name} 临时目录设定
hadoop.tmp.dir是hadoop文件系统依赖的基础设置,很多路径都依赖它,如果hdfs-site.xml中不配置namenode和datanode的存放位置,默认就放在这个路径中,所以最好设置,而且设置到持久目录中。
使用默认的路径会根据不同的用户名生成不同的临时目录
(2)hadoop.native.lib true 使用本地hadoop库标识。
(3)hadoop.http.filter.initializers http服务器过滤链设置
(4)hadoop.security.group.mapping org.apache.hadoop.security.ShellBasedUnixGroupsMapping 组内用户的列表的类设定
(5)hadoop.security.authorization false 服务端认证开启
如果开启在做任何事情之前,会现验证该帐号是否有权限。如果不开启,则不经过任何验证,所有用户拥有任何权限
(6)hadoop.logfile.size 10000000 日志文件最大为10M
hadoop跑了很多任务之后,可以通过设置hadoop.logfile.size和hadoop.logfile.count来设定最大的日志大小和数量来自动清楚日志
(7)hadoop.logfile.count 10 日志文件数量为10个
(8)io.file.buffer.size 4096 流文件的缓冲区为4K
这是读写sequence file的buffer size,可以减少I/O次数,在大型的Hadoop cluster,建议使用更大的值
(9)fs.default.name 默认值是 file:/// The name of default file system
默认的文件系统的名称
默认的是设置单机配置,如果是伪分布式则设置成hdfs://localhost:9000,如果是完全分布式则设置成hdfs://mastername:9000
(10)fs.checkpoint.dir
默认值是${hadoop.tmp.dir}/dfs/namesecondary
Secondary NameNode的镜像存储目录
fs.checkpoint.period 默认是3600秒
控制secondary namenode的checkpoint的时间间隔,如果距离上次checkpoint的时间大于这个参数,就会触发checkpoint.secondary namenode会把namenode的fsimage和editlog做snapshot.如果存取hadoop的次数频繁或为了减少重启namenode的时间,可以设置的小一点。
fs.checkpoint.size
默认值:67109964b
如果hadoop非常忙碌,则editlog可能会在短时间内变的很大,fs.checkpoint.period的设定不一定会触发checkpoint。设置这个数,保证editlog超过改数也会checkpoint
(11)io.skip.checksum.errors false 校验出错后是抛出异常还是略过标识。True则略过。
(12)io.compression.codecs org.apache.hadoop.io.compress.DefaultCodec,
org.apache.hadoop.io.compress.GzipCodec,
org.apache.hadoop.io.compress.BZip2Codec,
org.apache.hadoop.io.compress.SnappyCodec
压缩和解压的方式设置
(13)io.serializations org.apache.hadoop.io.serializer.WritableSerialization 序例化和反序列化的类设定
(14)fs.trash.interval 0 文件废弃标识设定,0为禁止此功能
清掉垃圾的时间,默认0是不清除。所以在删除文件时要自己执行。
(15)fs.file.impl org.apache.hadoop.fs.LocalFileSystem 本地文件操作类设置
(16)fs.hdfs.impl org.apache.hadoop.hdfs.DistributedFileSystem HDFS文件操作类设置
2.hdfs-site.xml
常用设置
dfs.name.dir ${hadoop.tmp.dir}/dfs/name
dfs.data.dir ${hadoop.tmp.dir}/dfs/data
dfs.permissions true
dfs.replication 3
dfs.block.size 67108864
dfs.namenode.logging.level info
优化设置
dfs.df.interval 60000
dfs.client.block.write.retries 3
dfs.heartbeat.interval 3
dfs.balance.bandwidthPerSec 1048576
dfs.datanode.failed.volumes.tolerated 0
(1)dfs.namenode.logging.level info 输出日志类型
(2)dfs.secondary.http.address 0.0.0.0:50090 备份名称节点的http协议访问地址与端口
(3)dfs.datanode.address 0.0.0.0:50010 数据节点的TCP管理服务地址和端口
(4)dfs.datanode.http.address 0.0.0.0:50075 数据节点的HTTP协议访问地址和端口
(5)dfs.datanode.ipc.address 0.0.0.0:50020 数据节点的IPC服务访问地址和端口
(6)dfs.datanode.handler.count 3 数据节点的服务连接处理线程数
(7)dfs.http.address 0.0.0.0:50070 名称节点的http协议访问地址与端口
(8)dfs.https.enable false 支持https访问方式标识
(9)dfs.https.need.client.auth false 客户端指定https访问标识
(10)dfs.default.chunk.view.size 32768 浏览时的文件块大小设置为32K
(11)dfs.datanode.du.reserved 0 每个卷预留的空闲空间数量
(12)dfs.name.dir ${hadoop.tmp.dir}/dfs/name
存贮在本地的名字节点数据镜象的目录,作为名字节点的冗余备份
(13)dfs.web.ugi webuser,webgroup Web接口访问的用户名和组的帐户设定
(14)dfs.permissions true 文件操作时的权限检查标识。
控制读写权限,false不控制读写权限
(15)dfs.data.dir ${hadoop.tmp.dir}/dfs/data 数据节点的块本地存放目录
(16)dfs.datanode.data.dir.perm 755 数据节点的存贮块的目录访问权限设置
(17)dfs.replication 3 缺省的块复制数量
(18)dfs.block.size 67108864 缺省的文件块大小为64M
(19)dfs.df.interval 60000 磁盘空间统计间隔为6秒
(20)dfs.client.block.write.retries 3 块写入出错时的重试次数
(21)dfs.heartbeat.interval 3 数据节点的心跳检测间隔时间
(22)dfs.balance.bandwidthPerSec 1048576 启动负载均衡的数据节点可利用带宽最大值为1M
(23)dfs.datanode.failed.volumes.tolerated 0
决定停止数据节点提供服务充许卷的出错次数。0次则任何卷出错都要停止数据节点
3.mapred-site.xml
常用设置
mapred.job.tracker mastername:9001
优化设置
mapred.tasktracker.map.tasks.maximum
mapred.tasktracker.reduce.tasks.maximum
(1)io.sort.mb 100 排序文件的内存缓存大小为100M
(2)io.sort.record.percent 0.05 排序线程阻塞的内存缓存剩余比率
(3)io.sort.spill.percent 0.80 当缓冲占用量为该值时,线程需要将内容先备份到磁盘中。
(4)mapred.job.tracker mastername:9001 作业跟踪管理器是否和MR任务在一个进程中
The host and port that the MapReduce job tracker runs at. If "local", then jobs are run in-process as a single map
and reduce task.
默认值是local,单节点。Job 运行的host和端口号
(5)mapred.job.tracker.http.address 0.0.0.0:50030 作业跟踪管理器的HTTP服务器访问端口和地址
(6)mapred.local.dir ${hadoop.tmp.dir}/mapred/local MR的中介数据文件存放目录
(7)mapred.system.dir ${hadoop.tmp.dir}/mapred/system MR的控制文件存放目录
(8)mapred.temp.dir ${hadoop.tmp.dir}/mapred/temp MR临时共享文件存放区
(9)mapred.tasktracker.expiry.interval 600000 任务管理跟踪器不发送心跳的累计时间间隔超过600秒,则任务管理跟踪器失效
(10)mapred.map.tasks 2 每个作业缺省的map任务数为2
(11)mapred.reduce.tasks 1 每个作业缺省的reduce任务数为1
(12)mapred.jobtracker.taskScheduler.maxRunningTasksPerJob 作业同时运行的任务数的最大值 32
(13)mapreduce.reduce.shuffle.read.timeout 180000 REDUCE任务等待map输出数据的总耗时是3分钟
(14)mapred.tasktracker.map.tasks.maximum 2 任管管理器可同时运行map任务数为2
(15)mapred.tasktracker.reduce.tasks.maximum 2 任管管理器可同时运行reduce任务数为2
(16)mapred.task.tracker.http.address 0.0.0.0:50060 任务管理跟踪器的http服务器的地址和端口
(17)mapred.output.compress false 作业的输出是否压缩
(18)mapred.compress.map.output false Map的输出是否压缩
(19)mapred.user.jobconf.limit 5242880 Jobconf的大小为5M
(20)mapred.heartbeats.in.second 100 作业管理跟踪器的每秒中到达的心跳数量为100
相关推荐
Hadoop安装详解 步骤完整 通俗易懂 只要你不傻 肯定能看明白
Windows 下 Hadoop 配置详解 在本文中,我们将详细介绍 Windows 下 Hadoop 配置的过程。Hadoop 是一款开源的分布式计算框架,由 Apache 开发和维护。作为云计算和大数据处理的核心组件,Hadoop 广泛应用于数据挖掘...
总之,《Hadoop技术详解》这本书会深入讲解Hadoop的各个方面,包括其核心组件、生态系统、安装配置、操作与管理,以及性能优化和安全策略。对于希望深入理解和操作Hadoop的读者来说,这是一本不可或缺的参考资料。...
7. "hadoop配置.txt" - 可能是作者整理的一份Hadoop配置详解,包含了各种配置参数的含义和设置建议。 综上,这个压缩包提供的资料可以帮助读者深入了解Hadoop的配置、管理和维护,尤其是对于初次接触Hadoop或需要...
在Hadoop配置中,还涉及到NameNode高可用性(HA)的配置参数,如: - dfs.namenode.secondary.http-address:为Secondary NameNode指定一个用于管理任务的HTTP地址。 - dfs.nameservices:用逗号分隔的NameService...
**Hadoop配置详解** Hadoop的核心包括HDFS(Hadoop Distributed File System)和MapReduce。Hadoop的配置主要涉及以下几个方面: 1. **Hadoop环境变量配置**:首先,我们需要在系统环境变量中设置HADOOP_HOME,并...
在这个详解中,我们将深入理解如何在Fedora和Ubuntu系统上搭建一个Hadoop集群。 首先,为了确保集群中的节点能够相互识别,我们需要配置静态IP地址。在Ubuntu系统中,可以通过图形界面进行配置,而在Fedora系统中,...
### Hadoop配置详解 #### 一、环境搭建与配置前准备 **1.1 安装环境** - **操作系统:** Ubuntu 14.04.3 LTS - **Hadoop 版本:** hadoop-2.5.2 或 hadoop-2.6.0 或更高版本 - **Java 版本:** Oracle JDK 7u80 **...
【Hadoop配置详解】 在IT领域,Hadoop是大数据处理的核心工具之一,它是一个开源的分布式计算框架,基于Java语言开发。本篇笔记主要涵盖了在Ubuntu操作系统上进行Hadoop安装和配置的过程,包括JDK的安装,Hadoop的...
Hadoop 配置文件参数详解 Hadoop 配置文件是 Hadoop 集群的核心组件之一,它们控制着 Hadoop 集群的行为和性能。Hadoop 配置文件主要包括 core-site.xml、hdfs-site.xml 和 mapred-site.xml 三个配置文件。这些配置...
以下是对"Hadoop安装配置详解"的详细阐述: ### 1. 虚拟机安装 在进行Hadoop安装前,首先需要准备一个虚拟机环境。通常选择如VMware或VirtualBox等虚拟机软件。为了便于管理和扩展,建议采用Linux操作系统,如...
#### 五、Hadoop配置详解 ##### Namenode配置 Namenode是Hadoop集群中的核心组件之一,负责管理和维护文件系统的元数据。在`hdfs-site.xml`文件中,需要设置Namenode的位置以及其他相关的配置项,例如: ```xml ...
### Linux 下 Hadoop 安装及配置详解 #### 前言 随着大数据技术的不断发展,Hadoop 成为了处理大规模数据集的一种重要工具。本文旨在详细介绍如何在 Linux 环境下安装和配置 Hadoop,确保能够顺利地进行大数据处理...
### Hadoop单机配置详解 在大数据处理领域,Apache Hadoop是一个开源软件框架,用于分布式存储和处理大型数据集。本文将详细介绍如何在单机环境下配置Hadoop,使其能够运行基本的大数据处理任务。 #### 一、配置...
【Hadoop配置项调优详解】 Hadoop作为一个分布式计算框架,其性能往往受到配置参数的影响。通过对Hadoop的配置项进行调优,可以显著提升系统的效率和稳定性。以下是一些关键配置项及其对系统性能的影响: 1. **dfs...
### Hadoop集群安装配置详解 #### 一、集群部署介绍 **1.1 Hadoop简介** Hadoop是一个开源分布式计算平台,由Apache软件基金会维护。它主要包括两大部分:Hadoop分布式文件系统(HDFS)和MapReduce计算框架。HDFS...
总之,Hadoop 2.x的配置详解涉及NameNode HA、JournalNode、配置文件参数等多个方面,通过合理的配置,可以构建出高可用、高性能的Hadoop大数据处理环境。对于MapReduce,理解YARN的角色和作业执行流程也是至关重要...