hadoop3.0集群安装知识1
问题导读1.本文是如何定义master的?
2.如何配置hadoop守护进程环境?
3.配置Hadoop守护进程需要哪些配置文件?
http://www.aboutyun.com/static/image/hrline/4.gif
目的
本文档介绍如何安装和配置Hadoop集群,从少数节点到数千个节点的超大型集群。 要使用Hadoop,您可以首先将其安装在一台机器上(请参阅单节点安装http://hadoop.apache.org/docs/r3.0.0/hadoop-project-dist/hadoop-common/SingleCluster.html )。本文档不包括安全性或高可用性等高级主题。
准备
安装Java
下载hadoop安装包
安装
安装Hadoop集群通常涉及在群集中的所有计算机上解压缩软件,或者通过适合您操作系统的安装包。
通常,集群中的一台机器被指定为NameNode,另一台机器被指定为ResourceManager。 这些是master。 其他服务(如Web应用程序代理服务器和MapReduce作业历史记录服务器)通常在专用硬件或共享基础结构上运行,具体取决于负载。
集群中其余的机器既充当DataNode又充当NodeManager。 这些是workers。
配置非安全模式的hadoop
Hadoop的Java配置由两种重要的配置文件驱动:
只读的默认配置 - core-default.xml,hdfs-default.xml,yarn-default.xml和mapred-default.xml。
Site-specific 的配置 - etc/hadoop/core-site.xml,etc/hadoop/hdfs-site.xml,etc/hadoop/yarn-site.xml和etc/hadoop和/mapred-site.xml。
此外,你可以控制分布式目录的bin里面的脚本,设置site-specific 值通过 etc/hadoop/hadoop-env.sh 和etc/hadoop/yarn-env.sh.
要配置Hadoop集群,您需要配置Hadoop守护程序执行的environment 以及Hadoop守护程序的配置参数。
HDFS守护进程是NameNode,SecondaryNameNode和DataNode。 YARN守护进程是ResourceManager,NodeManager和WebAppProxy。 如果要使用MapReduce,则MapReduce作业历史记录服务器也将运行。 对于大型安装,这些安装通常在不同的主机上运行。
配置Hadoop守护程序的环境
管理员应该使用etc/hadoop/hadoop-env.sh 和可选的 etc/hadoop/mapred-env.sh 和etc/hadoop/yarn-env.sh 来定制hadoop守护进程的环境。至少需要指定JAVA_HOME。
管理员可以使用下表中显示的配置选项来配置各个守护进程:
进程环境变量
NameNodeHDFS_NAMENODE_OPTS
DataNodeHDFS_DATANODE_OPTS
Secondary NameNodeHDFS_SECONDARYNAMENODE_OPTS
ResourceManagerYARN_RESOURCEMANAGER_OPTS
NodeManagerYARN_NODEMANAGER_OPTS
WebAppProxyYARN_PROXYSERVER_OPTS
Map Reduce Job History ServerMAPRED_HISTORYSERVER_OPTS
例如,要将Namenode配置为使用parallelGC和一个4GB的Java Heap,应该在hadoop-env.sh中添加以下语句:
export HDFS_NAMENODE_OPTS="-XX:+UseParallelGC -Xmx4g"
其他示例请参阅etc/hadoop/hadoop-env.sh。
可以定制的其他有用的配置参数包括:
HADOOP_PID_DIR - 守护进程进程标识文件存储的目录。
HADOOP_LOG_DIR - 守护进程日志文件存储的目录。 如果日志文件不存在,将自动创建日志文件。
HADOOP_HEAPSIZE_MAX - 用于Java 的HEAPSIZE最大内存量。 JVM支持的单元也支持这里。 如果没有单位存在,它将被认为是以兆字节为单位的数字。 默认情况下,Hadoop会让JVM决定使用多少。 使用上面列出的相应_OPTS变量,可以在每个守护进程基础上覆盖此值。 例如,设置HADOOP_HEAPSIZE_MAX = 1g和HADOOP_NAMENODE_OPTS =“ - Xmx5g”将以5GB heap配置NameNode。
在大多数情况下,你应该指定hadoop_pid_dir和hadoop_log_dir目录,他们只能通过正在运行Hadoop守护进程的用户写的。否则可能会有符号链接攻击。
在系统范围的shell环境配置中配置HADOOP_HOME也是很传统的。 例如,/etc/profile.d中的一个简单的脚本:
HADOOP_HOME=/path/to/hadoop
export HADOOP_HOME
配置Hadoop守护进程
本节介绍在给定的配置文件中要指定的重要参数:
etc/hadoop/core-site.xml
参数值说明
fs.defaultFSNameNode URIhdfs://host:port/
io.file.buffer.size131072SequenceFiles使用的读/写缓冲区的大小。
etc/hadoop/hdfs-site.xml
配置NameNode
参数值说明
dfs.namenode.name.dirNameNode 存储namespace和持久化日志存储的本地文件系统路径如果是以逗号分隔的目录列表,那么数据将被复制到所有目录中,以实现冗余。
dfs.hosts / dfs.hosts.excludepermitted/excluded DataNodes表如有必要,使用这些文件来控制允许的datanode列表
dfs.blocksize268435456HDFS块大小为256MB。
dfs.namenode.handler.count100用来处理来自DataNode的RPC请求的线程数量
配置datanode
参数值说明
dfs.datanode.data.dir逗号分隔的DataNode的本地文件系统上应该存储块的路径列表。如果这是逗号分隔的目录列表,则数据将存储在所有指定的目录中,通常位于不同的devices上。
dfs.datanode.data.dir主要用来扩容,当旧目录已经满,添加新的磁盘的时候,可以使用此属性。更多参考
如何扩容DataNode及遇到问题总结
下一篇
Hadoop3.0集群安装知识2
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23732
不错 学习了
页:
[1]