hadoop2.5.0完全分布式环境搭建(亲测有效)

      说在前头的一些东西,关于Linux本身环境本身的一些处理见如下链接,主要是讲Hadoop环境的前期准备:http://www.jianshu.com/p/d8720d0828dd

一.环境:

     java:   jdk1.7.0_80      Linux:  CentOS6.5      Hadoop:  hadoop-2.5.0

二.集群规划:

Hadoop01                                   Hadoop02                                  Hadoop03 namenode                                            datanode                                     datanode                                    datanode nodemanager                             nodemanager                             nodemanager                                                       resourcemanager                                                                                                    secondarynamenode

三.按如下步骤依次操作各个文件:

1.启动文件,修改这三个文件的JAVVA_HOEM变量:

        hadoop-env.sh         yarn-env.sh         mapred-env.sh


2.修改core-site.xml文件,编辑内容如下:

<property>         <name>fs.defaultFS</name>         <value>hdfs://hadoop01:8020</value> </property> <property>          <name>hadoop.tmp.dir</name>          <value>/home/shiluo/softwares/hadoop-2.5.0/data/tmp</value> </property> #该参数代表从HDFS上删除的文件暂存的时间(60 * 24) <property>         <name>fs.trash.interval</name>         <value>1440</value> </property>


3.修改hdfs-site.xml文件,编辑如下内容:

#配置secondarynamenode <property>         <name>dfs.namenode.secondary.http-address</name>         <value>hadoop03:50090</value> </property>


4.修改slave文件,将集群需要部署datanode进程节点的hostname写入该文件


5.修改yarn-site.xml文件,编辑如下内容:

<property>           <name>yarn.resourcemanager.hostname</name>           <value>hadoop02</value> </property> #NodeManager上运行的附属服务,该参数是为了可以运行mapreduce程序 <property>         <name>yarn.nodemanager.aux-services</name>         <value>mapreduce_shuffle</value> </property> #nodemanager可使用的内存,默认是8G <property>          <name>yarn.nodemanager.resource.memory-mb</name>          <value>4096</value> </property> #nodemanager可以使用的虚拟CPU个数 <property>         <name>yarn.nodemanager.resource.cpu-vcores</name>         <value>4</value> <property> #添加日志聚集功能 <property>         <name>yarn.log-aggregation-enable</name>         <value>true</value> </property> #日志可以存放的时间 <property>         <name>yarn.log-aggregation.retain-seconds</name>         <value>640800</value> </property>


6.修改mapred-site.xml文件(改文件默认是不存在的,把mapred-site.xml.template文件修改即可),编辑如下内容:

<property>                                  <name>mapreduce.framework.name</name>          <value>yarn</value> </property> <property>          <name>mapreduce.jobhistory.address</name>          <value>hadoop01:10020</value> </property> <property>          <name>mapreduce.jobhistory.webapp.address</name>          <value>hadoop01:19888</value> </property>


7.至此,全部配置完成,在分发之前将share下面的doc目录删掉,增加分发的速度,使用如下命令进行分发任务

scp -r hadoop-2.5.0 hadoop02:/home/shiluo/software/ scp -r hadoop-2.5.0 hadoop03:/home/shiluo/software/


8.在Hadoop01这台机器上执行如下命令进行格式化:

bin/hdfs  namenode -format


好,到这里基本上大功告成,然后启动进程,做一些基本的测试(例如:文件的上传,下载,读取等等操作),试试集群是否能够正常工作,下面介绍几个集群搭建出现的问题。


问题一:namenode进程不能正常启动?

解决办法:查看namenode的启动日志,

                  ①.一般是namenode配置有问题,仔细核对core-site.xml和hdfs-site.xml文件

                  ②.第二种情况是多次格式化namenode造成的,需要删除集群中每台节点/tmp目录下的所有东西,还有hadoop.tmp.dir目录下的东西,即可解决。


问题二:启动集群后,datanode没有正常启动?

解决办法:查看namenode的启动日志发现,出现了端口被占用的情况导致datanode没有正常启动,使用 netstat -anp | grep 端口号  命令查到进程号kill掉,在启动集群即可解决。


至此,集群搭建全部讲解完毕,预祝各位朋友可以搭建成功;下一篇将介绍在此基础上如何搭建出一个高可用的(HA),同时具有Failover(故障自动转移)功能的分布式集群。

Hadoop2.5.0 HA构建 链接:

http://www.jianshu.com/p/302ab34c8a80

如需转载,请注明出处,谢谢!!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Hadoop实操

如何修改CDSW会话的时区

无论我们的CDSW服务器上设置的为什么时区,CDSW中启动的会话默认时区为UTC,与我们的时区不一致影响使用。本篇文章Fayson主要介绍如何为CDSW的会话设...

15830
来自专栏用户2442861的专栏

git以及github的使用(1)

http://my.oschina.net/bxxfighting/blog/378196

6810
来自专栏信安之路

运维安全之安全隐患

由于发布网站时,服务器配置问题,导致目录浏览功能打开,在目录下不存在默认首页的情况下可以浏览目录下的文件目录,从而引起信息泄露,造成安全隐患。

11900
来自专栏ShaoYL

iOS 获取真机上系统动态库文件

27350
来自专栏web开发

gulp实现公共html代码复用

在开发网站的时候,尤其是类似于官网这样的项目,顶部都会有一个导航栏,底部会有一些其他信息,而这两个部分在每一个页面都是有的。我们不可能在每个html页面都写一遍...

42160
来自专栏ShaoYL

iOS 获取真机上系统动态库文件

364130
来自专栏smy

readlink: command not found 解决方案

/c/Program Files (x86)/Yarn/bin/yarn: line 3: readlink: command not found 用gitba...

39040
来自专栏地方网络工作室的专栏

Vue2+VueRouter2+Webpack+Axios 构建项目实战2017重制版(三)认识项目所有文件

Vue2+VueRouter2+Webpack+Axios 构建项目实战2017重制版(三)认识项目所有文件 在《Vue2+VueRouter2+Webpack...

23850
来自专栏魏艾斯博客www.vpsss.net

用 phpstudy 搭建本地 php 环境及安装 wordpress 教程

1.2K40
来自专栏古时的风筝

django开发个人简易Blog—nginx+uwsgin+django1.6+mysql 部署到CentOS6.5

前面说完了此项目的创建及数据模型设计的过程。如果未看过,可以到这里查看,并且项目源码已经放大到github上,可以去这里下载。 代码也已经部署到sina sea...

31090

扫码关注云+社区

领取腾讯云代金券