本篇源自Hadoop官网,先将中文翻译如下。

目标

本文章主要是描述如何安装和配置几个节点的Hadoop clusters,甚至于数以千计的节点数。为了了解详细的安装步骤,需要先了解如何安装在单台机器上。

本文档不包含高级的设置点,比如:安全性或者高可用性。

准备

  • 需要安装Java环境
  • 从Apache网站下载一个稳定的Hadoop安装镜像

安装

搭建一个Hadoop集群需要将软件安装到集群中的所有机器中,或者一个适合当前操作系统集成的系统。这样做的目标就是区分不同的硬件安装不同的功能。

典型的安装是在一个集群中一个机器作为NameNode节点,其它机器作为ResourceManager.当然,这台机器的角色就是Masters.其它的服务(比如Web App Proxy Server 和MapReduce Job History server)一般运行在别的硬件或者共享的信息架构上,依赖于系统的负载。

在集群中剩下的机器就是DataNode和NodeManager.他们的角色是slaves.

非安全模式下的Hadoop配置 

Hadoop的Java配置项被分为两部分重要的配置文件:

  • 只读的默认配置文件:core_default.xml,hdfs-default.xm,yarn-default.xml 和mapred-default.xml.
  • 特殊定义的配置文件:etc/hadoop/core-site.xml,etc/hadoop/hdfs-site.xml,etc/hadoop/yarn-site.xml和etc/hadoop/mapred-site.xml.

另外,需要有权限设置Hadoop scripts脚本在分布式集群中的各个目录文件 bin/directory,需要设置的文件为 etc/hadoop-env.sh 和 etc/hadoop/yarn-env.sh.

为了能够保证Hadoop守护进程很好的运行,需要配置hadoop集群所需要的环境。

HDFS守护进程是NameNode,SecondaryNameNode和DataNode,YARN守护进程是ResourceManager,NodeManager和WebAppProxy,如果MapReduce被使用,那么MapReduce 的任务 History Server将会被运行,如果是大集群的安装,他们将被运行在不同的主机上。

Hadoop守护进程环境配置

管理员需要利用etc/hadoop/hadoop-env.sh 和可选的 etc/hadoop/mapred-env.sh 和etc/hadoop/yarn-env.sh 脚本去配置Hadoop各个守护进程的环境。

之少,需要配置的是JAVA_HOME确保在每一个远程节点上都是正确的。

管理员需要配置一下的独自守护进程利用下面的表格:

 守护进程 参数名称
NameNode HADOOP_NAMENODE_OPTS
DataNode HADOOP_DATANODE_OPTS
Secondary NameNode HADOOP_SECONDARYNAMENODE_OPTS
ResourceManager YARN_RESOURCEMANAGER_OPTS
NodeManager YARN_NODEMANAGER_OPTS
WebAppProxy YARN_PROXYSERVER_OPTS
Map Reduce Job History Server HADOOP_JOB_HISTORYSERVER_OPTS

举一个例子,可以配置Namenode用parallelGC,下面的片段需要被添加到hadoop-env.sh:

 export HADOOP_NAMENODE_OPTS="-XX:+UseParallelGC"

来看一下 etc/hadoop/hadoop-env.sh的其它一些例子。
其它的一些有用的可配置参数,可以自定义如下:

  • HADOOP_PID_DIR 这个是守护进程ID文件存放的目录路径
  • HADOOP_LOG_DIR 这个是守护进程日志存储的目录路径,日志会被自动创建如果没有的话
  • HADOOP_HEAPSIZE/YARN_HEAPSIZE 最大的堆使用的内存值,单位为:MB,如果这个参数被设置成1000,那就意味着堆将使用1000MB的内存值,这个参数主要用于守护进程内存值的大小设置。默认值是1000,可以为每个守护进程分配不同大小的值。

在很多场景中,必须设置这个HADOOP_PID_DIR和HADOOP_LOG_DIR这两个目录,以方便用户可以输出日志在运行守护进程的时候。

 守护进程 参数值
ResourceManager YARN_RESOURCEMANAGER_HEAPSIZE
NodeManager YARN_NODEMANAGER_HEAPSIZE
WebAppProxy YARN_PROXYSERVER_HEAPSIZE
Map Reduce Job History Server HADOOP_JOB_HISTORYSERVER_HEAPSIZE

Hadoop守护环境配置

在Hadoop坏境中有一个非常重要的参数文件:

  • etc/hadoop/core-site.xml
参数名称 提示
fs.defaultFS NameNode URI hdfs://host:port/
io.file.buffer.size 131072 Size of read/write buffer used in SequenceFiles.
  • etc/hadoop/hdfs-site.xml
  • 配置守护进程NameNode:
 参数名称 提示
dfs.namenode.name.dir 文件路径,用户存储NameNode进程的命名空间和事务日志 如果这里用逗号分割的列表,将会复制分发到各个目录以做为冗余数据进行备份
dfs.hosts / dfs.hosts.exclude DataNodes的节点列表(包含或排除) 如果需要,用户通过设置这个列表来控制DataNodes的数量。
dfs.blocksize 268435456 HDFS 快的大小为了存储大文件系统.
dfs.namenode.handler.count 100 对于大量DataNodes的节点数开启的多线程个数.
  • Configuration for DataNode:
参数名称 提示
dfs.datanode.data.dir 存储数据块的本地目录系统,一般以路径列表存放 如果这里是以逗号分隔的目录列表,那么这个数据将被存储在所有的目录下,一般是不同的磁盘驱动

Hadoop Cluster 安装的更多相关文章

  1. hadoop分布式安装教程(转)

    from:http://www.cnblogs.com/xia520pi/archive/2012/05/16/2503949.html 1.集群部署介绍 1.1 Hadoop简介 Hadoop是Ap ...

  2. centos中-hadoop单机安装及伪分布式运行实例

    创建用户并加入授权 1,创建hadoop用户 sudo useradd -m hadoop -s /bin/bash 2,修改sudo的配置文件,位于/etc/sudoers,需要root权限才可以读 ...

  3. 两种配置大数据环境的方法Ambari以及hadoop源代码安装的步骤

    1.Ambari安装 Ambari & HDP(Hortonworks Data Platform) ********************************************* ...

  4. 【Hadoop】Hadoop的安装,本地模式、伪分布模式的配置

    Download hadoop-2.7.7.tar.gz 下载稳定版本的hadoop-2.7.7.tar.gz(我用的2.6.0,但是官网只能下载2.7.7的了) Required Software ...

  5. 【从零开始学习Hadoop】--1.Hadoop的安装

    第1章 Hadoop的安装1. 操作系统2. Hadoop的版本3. 下载Hadoop4. 安装Java JDK5. 安装hadoop6. 安装rsync和ssh7. 启动hadoop8. 测试had ...

  6. Hadoop Linux安装

    Hadoop Linux安装 步骤流程 1.硬件准备 2.软件准备(推荐CDH) 3.将Hadoop安装包分发到各个节点下 4.安装JDK 5.修改/etc/hosts配置文件 6.设置SSH免密码登 ...

  7. hadoop环境安装及简单Map-Reduce示例

    说明:这篇博客来自我的csdn博客,http://blog.csdn.net/lxxgreat/article/details/7753511 一.参考书:<hadoop权威指南--第二版(中文 ...

  8. hadoop群集安装中碰到的问题

    在hadoop群集安装结束后,进行格式测试出现问题如下 格式化 cd /data/hadoop/bin ./hdfs namenode -format 15/01/21 05:21:17 WARN f ...

  9. 从零开始学习Hadoop--第1章 Hadoop的安装

    Hadoop的安装比较繁琐,有如下几个原因:其一,Hadoop有非常多的版本:其二,官方文档不尽详细,有时候更新脱节,Hadoop发展的太快了:其三,网上流传的各种文档,或者是根据某些需求定制,或者加 ...

随机推荐

  1. GeoServer中利用SLD配图之矢量图层配图

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1 背景 我们在ArcMap中可以直接通过symbol功能对图层进行定 ...

  2. ASP.NET实现微信功能(1)(创建菜单,验证,给菜单添加事件)

    LZ实在 不知道怎么起名字了,索性就取了这个名字,开始吧,说实在的,想给自己的平常的学习做一个总结,总是忘了总结.也只能给工作做一个总结了. 我打算用2篇文章来写,第一篇是关于订阅号的,就是这个号,另 ...

  3. Angularjs CURD

    前言 基于一个手机端的项目使用了angularjs,硬着头皮去用,有很多的疑问还需要一一去验证,刚开始总是感觉找不到北,总是感觉有很多概念,而且似乎ng既夹杂MVC又夹杂MVVM的思想, 忙里偷闲敲了 ...

  4. 原生AJAX入门讲解(含实例)

    相对于jQuery.YUI以及其他一些类库的AJAX封装,原生JS的AJAX显得那么的尴尬,兼容性不好,要记很多的方法属性,调用不便捷,代码臃肿...但我还是想说,原生JS才是最根本最底层的知识(虽然 ...

  5. SQL游标(cursor)详细说明及内部循环使用示例

    游标 游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果.每个游标区都有一个名字,用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理. 游标是处理 ...

  6. ICommand相关知识

    一般来说,如果类的后缀是Command,则用OnClick方法:如果是Tool,则设置Map的CurrentTool属性为该工具

  7. sql count统计技巧

    select count(1) from table where columnname=value 写成 select count(case when columnname=value than 1 ...

  8. spring入门(五)【springMVC环境搭建】

    springMVC作为spring的一个WEB组件,是一个MVC的思想,减少了WEB开发的难度,现介绍springMVC环境的搭建,具体的原理放在后面介绍.用过框架的朋友都知道要在WEB项目中使用一个 ...

  9. JAVA中常说的三大框架指:SSH

    即:spring.Struts.hibernate Spring:功能强大的组件粘合济,能够将你的所有的Java功能模块用配置文件的方式组合起来(还让你感觉不到spring的存在)成为一个完成的应用 ...

  10. 如何在mac上安装docker[记录自己在mac上安装docker的经历]

    0.引子 最近入手了一台mac笔记本,想在本地安装docker. 1.找安装文档. 文档地址:http://www.widuu.com/chinese_docker/installation/mac. ...