前期准备:

1.系统基本形况:

ip hostname role server loginName
192.168.1.101 h1 NameNode,ResourceManager centos7_64 hwd
192.168.1.102 h2 DataNode, NodeManager centos7_64 hwd
192.168.1.103 h3 DataNode, NodeManager centos7_64 hwd

2.各个系统之间实现用自己的用户名ssh无密钥登陆

3.在各个机器上安装java

4.先在其中一台机器上解压hadoop

5.关闭各个机器的防火墙

6.在各个机器上配置环境变量,建议每台服务器上的java和hadoop放置位置都相同,如把java解压到:/usr/java/文件夹下,把hadoop解压到/home/hwd/文件夹下,这样可以方便操作。

注意:此时是,每台机器上都安装好了java环境,但只有一台电脑上有hadoop,但每台机器上都配置了这两个软件的环境变量,因为需要修改hadoop,修改好后再拷到其余机器上即可。

环境变量参考:

在~/.bashrc文件中添加以下配置:

export JAVA_HOME=/usr/java/jdk1.7.0_67
export HADOOP_DEV_HOME=/home/hwd/hadoop-2.4.1
export HADOOP_MAPARED_HOME=${HADOOP_DEV_HOME}
export HADOOP_COMMON_HOME=${HADOOP_DEV_HOME}
export HADOOP_HDFS_HOME=${HADOOP_DEV_HOME}
export YARN_HOME=${HADOOP_DEV_HOME}
export HADOOP_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
export HDFS_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
export YARN_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
export PATH=$PATH:$HADOOP_DEV_HOME/bin:$JAVA_HOME/bin:$HADOOP_DEV_HOME/sbin

#lixun64位的系统加上下面的环境变量,

#否则启动时会出现“name or service not known” Warning警告,

#请参考http://stackoverflow.com/questions/21326274/hadoop-2-2-0-name-or-service-not-known-warning

export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_DEV_HOME}/lib/native
 export HADOOP_OPTS="-Djava.library.path=${HADOOP_DEV_HOME}/lib"

配置完成后,执行source ~/.bashrc命令(也可以修改文件/etc/profile)

对hadoop的修改如下其中修改文件的位置在$hadoop2.4.1/etc/hadoop文件夹下:

1.修改文件$hadoop2.4.1/etc/hadoop/hadoop-env.sh文件:

export JAVA_HOME=/usr/java/jdk1.7.0_67

2.配置core-site.xml文件,设置namenode的服务器位置。

3.修改hdfs-site.xml文件,建议dfs.data.dir的路径设置成自己用户目录下的一个位置,这样可以在运行hadoop时避免修改该位置的权限。

dfs.data.dir : Determines where on the local filesystem an DFS data node should store its blocks

dfs.replication : Default block replication. The actual number of replications can be specified when the file is created. The default is used if replication is not specified in create time.

<configuration>
  <property>
    <name>dfs.data.dir</name>
    <value>/home/hwd/data</value>
<!--数据节点存储块的目录的列表-->
  </property>
  <property>
    <name>dfs.replication</name>
    <value>2</value>
</property>

4.修改mapred-site.xml文件(该文件不存在,执行cp mapred-site.xml.template mapred-site.xml命令,从mapred-site.xml.template复制一份),修改文件内容为:

 <configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>

5.修改文件yarn-site.xml,修改后的内容为:

 <configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>h1</value>
</property> <property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property> </configuration>

6.修改文件slaves,修改后的内容为:

7.至此,文件就修改好了,然后修改后的hadoop拷到各个服务器上。

用命令可以很方便的进行操作:

scp -r /home/hwd/hadoop-2.4.1 h2:/home/hwd

scp -r /home/hwd/hadoop-2.4.1 h3:/home/hwd

8.启动hadoop

1).  在h1服务器上运行命令:

hdfs namenode -format     //格式化namenode

start-dfs.sh       //启动hdfs系统

此时,用jps命令查看java运行的java进程如下(此时如果没错误的话,在namenode节点上启动的进程有:NameNode ,SecondaryNameNode):

此时,查看datanode节点上的java进程如下:

2).运行命令:start-yarn.sh

此时namenode节点的java进程为:

此时datanode节点上的java进程为:

9.至此分布式的hadoop测试环境就搭好了。

结束语:

期间可能没有这么顺利,如果启动后各个节点的进程缺少,请查看各个节点的日志信息,来排除错误。

如:我的hadoop启动日志信息位置如下图所示(在启动过程中会在控制台显示日志文件的位置):

在该信息中,如果在您的namenode节点中namenode进程没启动起来,则进入h1节点,查看对应的.log文件,来排除错误

datanode节点同理去datanode节点服务器上查看对应的.log文件。

关闭hadloop分别运行命令:

stop-dfs.sh

stop-yarn.sh

参考:http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/

搭建hadoop2.4.1的更多相关文章

  1. 32位Ubuntu12.04搭建Hadoop2.5.1完全分布式环境

    准备工作 1.准备安装环境: 4台PC,均安装32位Ubuntu12.04操作系统,统一用户名和密码 交换机1台 网线5根,4根分别用于PC与交换机相连,1根网线连接交换机和实验室网口 2.使用ifc ...

  2. 搭建Hadoop2.7.1的分布式集群

    Hadoop 2.7.1 (2015-7-6更新),hadoop的环境配置不是特别的复杂,但是确实有很多细节需要注意,不然会造成许多配置错误的情况.尽量保证一次配置正确防止反复修改. 网上教程有很多关 ...

  3. 搭建Hadoop2.6.0+Spark1.1.0集群环境

    前几篇文章主要介绍了单机模式的hadoop和spark的安装和配置,方便开发和调试.本文主要介绍,真正集群环境下hadoop和spark的安装和使用. 1. 环境准备 集群有三台机器: master: ...

  4. ubuntu14.04搭建Hadoop2.9.0集群(分布式)环境

    本文进行操作的虚拟机是在伪分布式配置的基础上进行的,具体配置本文不再赘述,请参考本人博文:ubuntu14.04搭建Hadoop2.9.0伪分布式环境 本文主要参考 给力星的博文——Hadoop集群安 ...

  5. 在Win7虚拟机下搭建Hadoop2.6.0+Spark1.4.0单机环境

    Hadoop的安装和配置可以参考我之前的文章:在Win7虚拟机下搭建Hadoop2.6.0伪分布式环境. 本篇介绍如何在Hadoop2.6.0基础上搭建spark1.4.0单机环境. 1. 软件准备 ...

  6. 在Win7虚拟机下搭建Hadoop2.6.0伪分布式环境

    近几年大数据越来越火热.由于工作需要以及个人兴趣,最近开始学习大数据相关技术.学习过程中的一些经验教训希望能通过博文沉淀下来,与网友分享讨论,作为个人备忘. 第一篇,在win7虚拟机下搭建hadoop ...

  7. # 从零開始搭建Hadoop2.7.1的分布式集群

    Hadoop 2.7.1 (2015-7-6更新),Hadoop的环境配置不是特别的复杂,可是确实有非常多细节须要注意.不然会造成很多配置错误的情况.尽量保证一次配置正确防止重复改动. 网上教程有非常 ...

  8. 64bit Centos6.4搭建hadoop-2.5.1

    64bit Centos6.4搭建hadoop-2.5.1 1.分布式环境搭建 採用4台安装Linux环境的机器来构建一个小规模的分布式集群. 当中有一台机器是Master节点,即名称节点,另外三台是 ...

  9. centos7搭建hadoop2.10高可用(HA)

    本篇介绍在centos7中搭建hadoop2.10高可用集群,首先准备6台机器:2台nn(namenode);4台dn(datanode):3台jns(journalnodes) IP hostnam ...

  10. centos7搭建hadoop2.10完全分布式

    本篇介绍在centos7中大家hadoop2.10完全分布式,首先准备4台机器:1台nn(namenode);3台dn(datanode) IP hostname 进程 192.168.30.141 ...

随机推荐

  1. 《黑白团团队》第九次团队作业:Beta冲刺第二天

    项目 内容 作业课程地址 任课教师首页链接 作业要求 团队项目 填写团队名称 黑白团团队 填写具体目标 认真负责,完成项目 团队项目Github仓库地址链接. 第一天 日期:2019/6/24 1.1 ...

  2. FFmpeg常用命令学习笔记(五)裁剪与合并命令

    裁剪与合并命令 1.音视频裁剪 ffmpeg -i input.mp4 -ss 00:01:00 -t 10 out.mp4 -ss:起始时间(HH:MM:SS).-t:裁剪时长(秒) 2.视频合并 ...

  3. hbase实践之HFile结构

    本文目录如下所示: 目录 HFile在HBase架构中的位置 什么是HFile HFile逻辑结构 HFile逻辑结构的优点 HFile物理结构 HFile生成流程 HFile中Block块解析 多大 ...

  4. RuntimeError: can't start new thread

    明明我只是简单跑了一个数据清洗28W数据的python脚本,不知道怎么就报错如下: too many threads running within your python process The &q ...

  5. nginx静态资源配置(转发)

    传统的web项目,一般都将静态资源存放在 webroot的目录下,这样做很方便获取静态资源,但是如果说web项目很大,用户很多,静态资源也很多时,服务器的性能 或许就会很低下了.这种情况下一般都会需要 ...

  6. 给程序添加git commit信息

    遇到了一个客户程序出问题,自己这边始终无法重现的bug.为了检查问题,查到了一个添加git的commit信息到程序中的方法,感觉对程序版本控制十分好用. 一,项目中添加如下文件 文件结构: GitVe ...

  7. 2、创建MFC应用程序——基于对话框,时间计时器

    使用计时器更新MFC界面时间,频率1s. 文件——新建项目——MFC应用程序,下一步,选择基于对话框,其他默认,完成. 双击窗体(或者鼠标右键)进入类向导,自动创建Ontimer()函数 void C ...

  8. Java项目笔记01

    1 Tomcat问题 1 今天用了Ecplise和MyEcplise想着用同一个路径下的Tomcat,但是却发现配置完Ecplise后MyEcplise却不能用了,并且后面在bin里启动Tomcat还 ...

  9. 【转载】C++ STL priority_queue用法

    priority_queue 对于基本类型的使用方法相对简单.他的模板声明带有三个参数,priority_queue<Type, Container, Functional> Type 为 ...

  10. kong-dashbord本地安装gulp打包报错的解决办法

    本地安装kong-dashbord执行npm run build 报如下错误 gulp[]: ../src/node_contextify.cc::]->IsString()' failed. ...