如何在Centos6.5下部署hadoop2.2单机伪分布式(二)

前端之家收集整理的这篇文章主要介绍了如何在Centos6.5下部署hadoop2.2单机伪分布式(二)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
hadoop2.x的稳定版本,已经发布多时了,散仙一直都用的hadoop1.x的版本,最近有项目用到hadoop2.x,所以就开始折腾hadoop2.x了,在hadoop2.x的版本里,目前最新版本已经到hadoop2.4了,但散仙在这里用的是hadoop2.2.0的版本,为什么用它? 因为这是一个稳定的版本,所以相对来说,问题比较少。
散仙在上篇博客,已经讲了如何在编译hadoop2.2.0的64位的版本,如果有不清楚怎么编译,可以参考散仙上篇博文,在这里就不涉及了。

下面,散仙以表格的形式描述下伪分布式安装
系统环境如下:

序号 名称 描述
1 系统环境 Centos6.5
2 JAVA环境 JDK1.7
3 Haoop版本 hadoop2.2.0


安装步骤如下:
序号 步骤
1 解压hadoop,并配置环境变量
2 使用which hadoop命令,测试是否成功
3 配置core-site.xml
4 配置hdfs-site.xml
5 配置yarn-site.xml(非必须,使用默认也可)
6 配置mapred-site.xml
7 配置mapred-env.sh里面的JAVA路径
8 如上的配置完成后,需要新建几个文件夹,来提供HDFS的格式化底层一个是hadoop的tmp文件夹,另外的是namenode和datanode的文件夹,来分别存储各自的信息
9 上面一切完成后,即可执行hadoop namenode -format 进行格式化
10 然后启动伪分布式集群,执行命令sbin/start-all.sh 最后使用JPS查看JAVA进程
11 配置本机的hosts文件,映射主机名信息


下面来详细说下,各个步骤的具体操作:
在这之前,最好配置好本机的SSH无密码登陆操作,避免hadoop进程之间通信时,需要验证。

下面是各个xml文件的配置

Xml代码
  1. @H_502_221@<!--core-site.xml配置-->@H_502_221@
  2. @H_502_221@<configuration>@H_502_221@
  3. @H_502_221@<property>@H_502_221@
  4. @H_502_221@<name>@H_502_221@fs.default.name</name>@H_502_221@
  5. @H_502_221@<value>@H_502_221@hdfs://192.168.46.28:9000</value>@H_502_221@
  6. @H_502_221@</property>@H_502_221@
  7. @H_502_221@<property>@H_502_221@
  8. @H_502_221@<name>@H_502_221@hadoop.tmp.dir</name>@H_502_221@
  9. @H_502_221@<value>@H_502_221@/root/hadoop/tmp</value>@H_502_221@
  10. @H_502_221@</property>@H_502_221@
  11. @H_502_221@
  12. @H_502_221@</configuration>@H_502_221@

Xml代码
  1. @H_502_221@<!--hdfs-site.xml配置-->@H_502_221@
  2. @H_502_221@
  3. @H_502_221@<configuration>@H_502_221@
  4. @H_502_221@<property>@H_502_221@
  5. @H_502_221@<name>@H_502_221@dfs.replication</name>@H_502_221@
  6. @H_502_221@<value>@H_502_221@1</value>@H_502_221@
  7. @H_502_221@</property>@H_502_221@
  8. @H_502_221@
  9. @H_502_221@<property>@H_502_221@
  10. @H_502_221@<name>@H_502_221@dfs.namenode.name.dir</name>@H_502_221@
  11. @H_502_221@<value>@H_502_221@/root/hadoop/nddir</value>@H_502_221@
  12. @H_502_221@</property>@H_502_221@
  13. @H_502_221@
  14. @H_502_221@
  15. @H_502_221@<property>@H_502_221@
  16. @H_502_221@<name>@H_502_221@dfs.datanode.data.dir</name>@H_502_221@
  17. @H_502_221@<value>@H_502_221@/root/hadoop/dddir</value>@H_502_221@
  18. @H_502_221@</property>@H_502_221@
  19. @H_502_221@
  20. @H_502_221@<property>@H_502_221@
  21. @H_502_221@<name>@H_502_221@dfs.permissions</name>@H_502_221@
  22. @H_502_221@<value>@H_502_221@false</value>@H_502_221@
  23. @H_502_221@</property>@H_502_221@
  24. @H_502_221@
  25. @H_502_221@</configuration>@H_502_221@


Xml代码
  1. @H_502_221@<!--yarn-site.xml不用配置,使用默认属性即可-->@H_502_221@
  2. @H_502_221@<configuration>@H_502_221@
  3. @H_502_221@
  4. @H_502_221@
  5. @H_502_221@</configuration>@H_502_221@

Xml代码
  1. @H_502_221@<!--mapred-site.xml的配置-->@H_502_221@
  2. @H_502_221@<configuration>@H_502_221@
  3. @H_502_221@<property>@H_502_221@
  4. @H_502_221@<name>@H_502_221@mapreduce.cluster.temp.dir</name>@H_502_221@
  5. @H_502_221@<value></value>@H_502_221@
  6. @H_502_221@<description>@H_502_221@Nodescription</description>@H_502_221@
  7. @H_502_221@<final>@H_502_221@true</final>@H_502_221@
  8. @H_502_221@</property>@H_502_221@
  9. @H_502_221@
  10. @H_502_221@<property>@H_502_221@
  11. @H_502_221@<name>@H_502_221@mapreduce.cluster.local.dir</name>@H_502_221@
  12. @H_502_221@<value></value>@H_502_221@
  13. @H_502_221@<description>@H_502_221@Nodescription</description>@H_502_221@
  14. @H_502_221@<final>@H_502_221@true</final>@H_502_221@
  15. @H_502_221@</property>@H_502_221@
  16. @H_502_221@</configuration>@H_502_221@


mapred-env.sh里面的配置
Java代码
  1. @H_502_221@@H_502_221@#LicensedtotheApacheSoftwareFoundation(ASF)underoneormore
  2. @H_502_221@#contributorlicenseagreements.SeetheNOTICEfiledistributedwith
  3. @H_502_221@#this@H_502_221@workfor@H_502_221@additionalinformationregardingcopyrightownership.
  4. @H_502_221@#TheASFlicensesthis@H_502_221@filetoYouundertheApacheLicense,Version2.0@H_502_221@
  5. @H_502_221@#(the"License"@H_502_221@);youmaynotusethis@H_502_221@fileexceptincompliancewith
  6. @H_502_221@#theLicense.YoumayobtainacopyoftheLicenseat
  7. @H_502_221@#
  8. @H_502_221@#http://www.apache.org/licenses/LICENSE-2.0@H_502_221@
  9. @H_502_221@#
  10. @H_502_221@#Unlessrequiredbyapplicablelaworagreedtoinwriting,software
  11. @H_502_221@#distributedundertheLicenseisdistributedonan"ASIS"@H_502_221@BASIS,
  12. @H_502_221@#WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied.
  13. @H_502_221@#SeetheLicensefor@H_502_221@thespecificlanguagegoverningpermissionsand
  14. @H_502_221@#limitationsundertheLicense.
  15. @H_502_221@
  16. @H_502_221@exportJAVA_HOME=/usr/local/jdk
  17. @H_502_221@
  18. @H_502_221@exportHADOOP_JOB_HISTORYSERVER_HEAPSIZE=1000@H_502_221@
  19. @H_502_221@
  20. @H_502_221@exportHADOOP_MAPRED_ROOT_LOGGER=INFO,RFA
  21. @H_502_221@
  22. @H_502_221@#exportHADOOP_JOB_HISTORYSERVER_OPTS=
  23. @H_502_221@#exportHADOOP_MAPRED_LOG_DIR=""@H_502_221@#Wherelogfilesarestored.$HADOOP_MAPRED_HOME/logsbydefault@H_502_221@.
  24. @H_502_221@#exportHADOOP_JHS_LOGGER=INFO,RFA#HadoopJobSummarylogger.
  25. @H_502_221@#exportHADOOP_MAPRED_PID_DIR=#Thepidfilesarestored./tmpbydefault@H_502_221@.
  26. @H_502_221@#exportHADOOP_MAPRED_IDENT_STRING=#Astringrepresentingthis@H_502_221@instanceofhadoop.$USERbydefault@H_502_221@
  27. @H_502_221@#exportHADOOP_MAPRED_NICENESS=#Theschedulingpriorityfor@H_502_221@daemons.Defaultsto0@H_502_221@.


然后,建对应的几个文件夹即可,路径都在hadoop2.2的根目录下即可,
后执行格式化命令bin/hadoop namenode -format即可;

最后使用jps命令,查看进程,如果有以下几个进程名称,就代表部署伪分布式成功

Java代码
  1. @H_502_221@4887@H_502_221@NodeManager
  2. @H_502_221@4796@H_502_221@ResourceManager
  3. @H_502_221@4661@H_502_221@SecondaryNameNode
  4. @H_502_221@4524@H_502_221@Datanode
  5. @H_502_221@4418@H_502_221@NameNode
  6. @H_502_221@6122@H_502_221@Jps


然后,访问界面端口,注意与之前的配置文件里一致,namenode的端口号仍为50070,原来1.x的50030端口,已经没有了,可以访问8088的yarn的端口,来查看,具体的截图如下:







OK,此时,我们已经成功的完成伪分布式的部署,下一步我们要做的,就是跑一个经典的MR程序Hellow World,来测试我们的集群了。

猜你在找的CentOS相关文章