企业机型配置:

选型标准:普通的,廉价的,标准的(容易替换的),工业化大规模生产的

CPU:支持多核CPU,如2个4核CPU

内存:16G以上,内存越大,常用数据都缓存在内存,提高速度

硬盘:不需RAID,也不需使用SCSI、SAS、SSD硬盘,只需普通SATA硬盘即可,只要容量足够。

网络:建议千兆网和高带宽交换机,hadoop对各节点服务器的数据通讯量极为重要。Infinband可以不用考虑。

 

网络拓扑设计:

使用局域网布署,尽量不使用低速率的跨数据中心连接。

hadoop支持机架感知机制。

 

 

操作系统选择:

主流操作系统:Linux,只要是最新版即可,例:CentOs, Unbuntu, Redhat等。

window下需要cygwin,但可能出现意料不到的问题。

不区分32/64位数,基于Java环境。

 

 

实验布署环境:

伪分布模式:在单机环境下同时启动namenode,datanode,jobtracker,tasktracker, secondary namenode等五个进程,即多个节点都模拟运行在一台机下。

完全分布模式:正常的hadoop集群,由多个各司其职的节点构成。

 

以CentOs虚拟机为例:

可使用默认分区,CLI界面即可。

需要安装ssh,vi,java最新版。

注意需要将iptables, selinux等防火墙关闭。

 

配置工作:

  1. 配置hosts文件:

    在各节点的系统内设置好各节点的IP和对应的主机名,文件位置:/etc/hosts。

    以此步骤以便各节点能根据主机名称找到该机器以便通讯,防止局域网IP可能某些原因而变化导致找不到相应机器而通讯失败。

     

    此步骤应最先设置好。

     

  2. 建立hadoop运行的帐号。

 

  1. 配置免密码ssh:

需要生成密钥复制到各节点中,使各节点之间达到ssh的免密码连接。

注意:

  1. 密钥文件的权限数为644,即rw-r—r—
  2. 各节点的密钥也要复制一份给自身,达到ssh免密码连接访问自身。

 

CentOs 6默认安装了ssh,只需确认sshd服务是否自启动即可。ssh需要手动安装:yum install openssh-clients。

免密码方法设置:http://www.cnblogs.com/xiwang6428/p/3451711.html

 

  1. 下载解压或安装hadoop安装包。

    一般是下载tar.gz压缩包,可解压在用户的家目录下。

     

  2. 配置hadoop相关文件:(以1.2版为例,位于hadoop目录/conf/)

文件名

格式

描述

修改配置

hadoop-env.sh

bash脚本

运行hadoop所需的环境变量

设置export JAVA_HOME=java的安装目录

core-site.xml

xml配置文件

配置hadoop核心设置,如HDFS和MadReduce的I/O设置

在<configuration>节点间加入:

<property>

    <name>fs.default.name</name> #指定namenode名称节点

    <value>hdfs://namenode主机名:9000</value>

</property>

<property>

    <name>hadoop.tmp.dir</name> #指定hadoop的临时目录,如果不设定会默认以/tmp为临时目录。该目录会自动清空,所以不要用。

    <value>/home/hadoop运行的用户帐号/hadoop/tmp</value>

</property>

hdfs-site.xml

xml配置文件

配置HDFS守护进程:namenode,secondary namenode和datanode。

在configuration节点添加:

<property>

    <name>dfs.replication</name> #指定数据复制份数,一般来说有几个数据节点就复制几份

    <value>2</value>

</property>

mapred-site.xml

xml配置文件

配置mapreduce进程:jobtracker和tasktracker

在configuration节点添加:

<property>

    <name>mapred.job.tracker</name> #设定jabtracker的监听地址和端口

    <value>namenode主机名:9001</value>

</property>

masters

文本文件

运行主要的次要的namenode的主机名列表(每行一个)

每行添加一个主机名

slaves

文本文件

运行datanode和tasktracker的主机名列表(每行一个)

每行添加一个主机名

 

  1. 将配置好的hadoop目录分发复制到各节点的主机内。

    因为各机的配置都相同,所以直接复制过去即可。

    例:scp –r ./hadoop 目标主机名:/home/用户名

 

  1. 格式化分布式文件系统:

    在namenode主机的hadoop目录下,执行 bin/hadoop namenode –format

出现一堆信息,如成功有提示:has been successfully formatted.

  1. 启动守护进程:

    在namenode主机的hadoop目录下,执行 bin/start-all.sh

    相关的启动信息会记录在各节点主机的 hadoop目录/logs下。

 

  1. 检测守护进程启动情况

    /usr/java/jdk1.6.0_26/jps #假设此为java安装目录

 

 

Hadoop学习笔记1-如何简单布署hadoop的更多相关文章

  1. hadoop学习笔记之一步一步部署hadoop分布式集群

    一.准备工作 同一个局域网中的三台linux虚拟机,我用的是redhat6.4,如果主机是windows操作系统,可以先安装vmware workstation, 然后在workstation中装上3 ...

  2. Hadoop学习笔记系列

    Hadoop学习笔记系列   一.为何要学习Hadoop? 这是一个信息爆炸的时代.经过数十年的积累,很多企业都聚集了大量的数据.这些数据也是企业的核心财富之一,怎样从累积的数据里寻找价值,变废为宝炼 ...

  3. Hadoop学习笔记—22.Hadoop2.x环境搭建与配置

    自从2015年花了2个多月时间把Hadoop1.x的学习教程学习了一遍,对Hadoop这个神奇的小象有了一个初步的了解,还对每次学习的内容进行了总结,也形成了我的一个博文系列<Hadoop学习笔 ...

  4. Hadoop学习笔记(9) ——源码初窥

    Hadoop学习笔记(9) ——源码初窥 之前我们把Hadoop算是入了门,下载的源码,写了HelloWorld,简要分析了其编程要点,然后也编了个较复杂的示例.接下来其实就有两条路可走了,一条是继续 ...

  5. Hadoop学习笔记(6) ——重新认识Hadoop

    Hadoop学习笔记(6) ——重新认识Hadoop 之前,我们把hadoop从下载包部署到编写了helloworld,看到了结果.现是得开始稍微更深入地了解hadoop了. Hadoop包含了两大功 ...

  6. Hadoop学习笔记(2)

    Hadoop学习笔记(2) ——解读Hello World 上一章中,我们把hadoop下载.安装.运行起来,最后还执行了一个Hello world程序,看到了结果.现在我们就来解读一下这个Hello ...

  7. Hadoop学习笔记(5) ——编写HelloWorld(2)

    Hadoop学习笔记(5) ——编写HelloWorld(2) 前面我们写了一个Hadoop程序,并让它跑起来了.但想想不对啊,Hadoop不是有两块功能么,DFS和MapReduce.没错,上一节我 ...

  8. Hadoop学习笔记(2) ——解读Hello World

    Hadoop学习笔记(2) ——解读Hello World 上一章中,我们把hadoop下载.安装.运行起来,最后还执行了一个Hello world程序,看到了结果.现在我们就来解读一下这个Hello ...

  9. Hadoop学习笔记(1) ——菜鸟入门

    Hadoop学习笔记(1) ——菜鸟入门 Hadoop是什么?先问一下百度吧: [百度百科]一个分布式系统基础架构,由Apache基金会所开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序. ...

随机推荐

  1. OpenCascade Modeling Algorithms Boolean Operations

    Modeling Algorithms Boolean Operations of Opencascade eryar@163.com 布尔操作(Boolean Operations)是通过两个形状( ...

  2. CSS实现水平垂直同时居中的5种思路

    × 目录 [1]水平对齐+行高 [2]水平+垂直对齐 [3]margin+垂直对齐[4]absolute[5]flex 前面的话 水平居中和垂直居中已经单独介绍过,本文将介绍水平垂直同时居中的5种思路 ...

  3. Android属性动画之ObjectAnimator

    相信对于Android初学者,对于Android中的动画效果一定很感兴趣,今天为大家总结一下刚刚学到的属性动画案例. 首先和一般的Android应用一样,我们先建一个工程,为了方便,我们的布局文件中就 ...

  4. 如何安装Oracle Instant Client

    Oracle Instant Client是Oracle发布的轻量级数据库客户端,下面我们来看看官方的定义: Instant Client allows you to run your applica ...

  5. backbone库学习-Collection

    backbone库的结构: http://www.cnblogs.com/nuysoft/archive/2012/03/19/2404274.html 本文所有例子来自于http://blog.cs ...

  6. 使用selenium+phantomJS实现网页爬取

    有些网站反爬虫技术设计的非常好,很难采用WebClient等技术进行网页信息爬取,这时可以考虑采用selenium+phantomJS模拟浏览器(其实是真实的浏览器)的方式进行信息爬取.之前一直使用的 ...

  7. [转载]UML时序图总结

    前言 在我的工作中,用的最多的就是时序图了.可能由于工作的原因,我也是最喜欢画时序图了,很清楚,很明了,什么时候发送什么消息,到达什么状态,一下子就展示在你的脑海里,对于消息驱动的程序来说,是再好不过 ...

  8. 电路相关知识--读<<继电器是如何成为CPU的>>

    电路相关知识–读<<继电器是如何成为CPU的>> */--> *///--> *///--> 电路相关知识–读<<继电器是如何成为CPU的> ...

  9. angularjs学习总结 详细教程(转载)

    1 前言 前端技术的发展是如此之快,各种优秀技术.优秀框架的出现简直让人目不暇接,紧跟时代潮流,学习掌握新知识自然是不敢怠慢. AngularJS是google在维护,其在国外已经十分火热,可是国内的 ...

  10. JavaScript基础插曲---apply,call和URL编码等方法

    Js基础学习 Js的压缩: 就是利用js的语法格式通过缩短变量名,去掉空格等来进行压缩. Apply和call的使用 1:apply方法:应用某一对象的方法,用于一个对象替换当前对象.主要是改变thi ...