`
郑云飞
  • 浏览: 794832 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hadoop伪分布模式搭建

阅读更多
Hadoop伪分布模式搭建 
首先要了解一下Hadoop的运行模式:
单机模式(standalone)
       单机模式是Hadoop的默认模式。当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选择了最小配置。在这种默认模式下所有3个XML文件均为空。当配置文件为空时,Hadoop会完全运行在本地。因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何Hadoop的守护进程。该模式主要用于开发调试MapReduce程序的应用逻辑。
伪分布模式(Pseudo-Distributed Mode)
      伪分布模式在“单节点集群”上运行Hadoop,其中所有的守护进程都运行在同一台机器上。该模式在单机模式之上增加了代码调试功能,允许你检查内存使用情况,HDFS输入输出,以及其他的守护进程交互。
      全分布模式(Fully Distributed Mode)
     Hadoop守护进程运行在一个集群上。
     
1. 配置conf文件夹下hadoop-env.sh文件的JAVA_HOME环境变量指向Java安装目录
<SPAN class=link_title><SPAN class=link_title></SPAN></SPAN>
2. 安装SSH:包括ssh, sshd, ssh-keygen;
3. 生成SSH密钥对,不设置口令:
ssh-keygen -t rsa
     4. 设置授权密钥:
01.ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 
02.cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
   5. 配置conf下的几个XML文件
core-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
<description>The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation.
</description>
</property>

</configuration>
mapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
<description>The host and port that the MapReduce job tracker runs at.
</description>
</property>

</configuration>
hdfs-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>
<name>dfs.replication</name>
<value>1</value>
<description>The actual number of replication can be specified when the file is created.
</description>
</property>

</configuration>
     6. 启动Hadoop的几个守护进程
bin/start-all.sh
7. 查看Hadoop的几个守护进程,
jps
    如果正常应该可以看到以下结果,包括NameNode, DataNode, SecondaryNameNode, JobTracker, TaskTracker。
  1. 16982 DataNode
  2. 17249 SecondaryNameNode
  3. 16730 NameNode
  4. 17746 Jps
  5. 17364 JobTracker
  6. 17629 TaskTracker
复制代码
由于我之前配置的时候,SSH没有设置密钥授权,所以每次启动一个守护进程时总要手动输入一次机器密码,进行步骤4之后可以解决这个问题。                第一次启动时可以看到NameNode,关掉再启动时通过jps看不到NameNode,解决方法:关掉这些进程(bin/stop-all.sh),重新格式化,再启动,这时发现少了DataNode这个守护进程,重新格式化还是没有,又重头开始配置Hadoop,结果还是不行。

                上网搜了一下,找到了解决方法:
有时数据结构出现问题会产生无法启动datanode的问题。
然后用 hadoop namenode -format 重新格式化后仍然无效,/tmp中的文件并没有清除。
其实还需要清除/tmp/hadoop*里的文件。
执行步骤:
一、先删除hadoop:/tmp 
bin/hadoop fs -rmr /tmp
二、停止 hadoop 
bin/stop-all.sh
三、删除/tmp/hadoop*
rm -rf /tmp/hadoop*
四、格式化hadoop
bin/hadoop namenode -format
五、启动hadoop 
bin/start-all.sh
之后即可解决这个datanode没法启动的问题
8. 检查运行状态
Hadoop管理界面:http://localhost:50030


Hadoop Task Tracker 状态:http://localhost:50060


Hadoop DFS 状态:http://localhost:50070


                9. 结束Hadoop
bin/stop-all.sh
Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程
历时一周多,终于搭建好最新版本hadoop2.2集群,期间遇到各种问题,作为菜鸟真心被各种折磨,不过当wordcount给出结果的那一刻,兴奋的不得了~~(文当中若有错误之处或疑问欢迎指正,互相学习)

PS: 
第一部分 Hadoop 2.2 下载

          Hadoop我们从Apache官方网站直接下载最新版本Hadoop2.2。官方目前是提供了linux32位系统可执行文件,所以如果需要在64位系统上部署则需要单独下载src 源码自行编译。
如下图所示,下载红色标记部分即可。如果要自行编译则下载src.tar.gz.



第二部分 集群环境搭建
1、这里我们搭建一个由三台机器组成的集群:
192.168.0.1     hduser/passwd        cloud001       nn/snn/rm        CentOS6 64bit
192.168.0.2     hduser/passwd        cloud002        dn/nm             Ubuntu13.04 32bit
192.168.0.3     hduser/passwd        cloud003        dn/nm              Ubuntu13.0432bit
1.1 上面各列分别为IP、user/passwd、hostname、在cluster中充当的角色(namenode, secondary namenode, datanode , resourcemanager, nodemanager)
1.2   Hostname可以在/etc/hostname中修改(ubuntu是在这个路径下,redhat稍有不同)
1.3  这里我们为每台机器新建了一个账户hduser.这里需要给每个账户分配sudo的权限。(切换到root账户,修改/etc/sudoers文件,增加:hduser  ALL=(ALL) ALL )
2、修改/etc/hosts 文件,增加三台机器的ip和hostname的映射关系
                192.168.0.1     cloud001
                192.168.0.2     cloud002
                192.168.0.3     cloud003
3、打通cloud001到cloud002、cloud003的SSH无密码登陆
3.1 安装ssh
         一般系统是默认安装了ssh命令的。如果没有,或者版本比较老,则可以重新安装:
  sodu apt-get install ssh
3.2设置local无密码登陆
安装完成后会在~目录(当前用户主目录,即这里的/home/hduser)下产生一个隐藏文件夹.ssh(ls  -a 可以查看隐藏文件)。如果没有这个文件,自己新建即可(mkdir .ssh)。
具体步骤如下:
1、 进入.ssh文件夹
2、 ssh-keygen -t  rsa 之后一路回 车(产生秘钥)
3、 把id_rsa.pub 追加到授权的 key 里面去(cat id_rsa.pub >> authorized_keys)
4、 重启 SSH 服 务命令使其生效 :service sshd restart(这里RedHat下为sshdUbuntu下为ssh)
此时已经可以进行ssh localhost的无密码登陆
     【注意】:以上操作在每台机器上面都要进行。
3.3设置远程无密码登陆
这里只有cloud001是master,如果有多个namenode,或者rm的话则需要打通所有master都其他剩余节点的免密码登陆。(将001的authorized_keys追加到002和003的authorized_keys)
进入001的.ssh目录
scp authorized_keys hduser@cloud002:~/.ssh/ authorized_keys_from_cloud001
进入002的.ssh目录
cat authorized_keys_from_cloud001>> authorized_keys
至此,可以在001上面sshhduser@cloud002进行无密码登陆了。003的操作相同。
4、安装jdk(建议每台机器的JAVA_HOME路径信息相同)
注意:这里选择下载jdk并自行安装,而不是通过源直接安装(apt-get install)

 

分享到:
评论

相关推荐

    hadoop伪分布模式搭建(详细步骤)_hadoop伪分布式搭建全过程-CSDN博客.mhtml

    hadoop伪分布模式搭建(详细步骤)_hadoop伪分布式搭建全过程-CSDN博客.mhtml

    Hadoop伪分布模式环境搭建[超详细]

    详细介绍了Hadoop伪分布模式环境的搭建步骤。

    搭建伪分布模式Hadoop.pdf

    以下为文章部分标题 1.搭建单机模式Hadoop (1)关闭防火墙(2)关闭selinux防火墙(3)设置主机名(4)映射主机名与ip地址 2.安装JDK(2)上传JDK至服务器(4)配置JAVA环境变量...验证伪分布模式Hadoop是否安装部署成功

    hadoop2.7.3伪分布式模式搭建 手把手教学.pdf

    hadoop2.7.3伪分布式模式搭建,一个pdf文档,思路步骤清晰,按着步骤能得出结果,手把手教学。

    ubuntu环境下hadoop环境搭建(伪分布模式)

    ubuntu环境下hadoop环境搭建(伪分布模式),是本人学习大数据以来对于hadoop环境搭建的一些经验,现在写成文档的形式分享给大家。

    徐老师大数据 Hadoop架构完全分析课程 Hadoop入门学习视频教程

    012.Hadoop配置伪分布模式.mp4 013.Hadoop配置完全分布模式之修改虚拟机名称和目录.mp4 014.Hadoop配置完全分布模式之修改登录提示和主机名.mp4 -015.Hadoop配置完全分布模式之使用符号链接实现配置分离.mp4 -016....

    搭建hadoop伪分布式.docx

    伪分布式运行模式 这种模式也是在一台单机上运行,但用不同的Java进程模仿分布式运行中的各类结点(NameNode,DataNode,JobTracker,TaskTracker,SecondaryNameNode),请注意分布式运行中的这几个结点的区别:从分布式...

    linuxhadoop搭建手册以及三种集群模式配置

    资源名称:linux ...单机模式和伪分布式模式的配置基本相同,本文档将重点介绍,在此基础上给出完全分布式模式搭建还需要的工作。有需要的朋友可以下载 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    Windows上Hadoop环境搭建简介

    也是伪分布模式,一两个小时就搞完了, 但是我们在Windows上搭建完后,连启动都有问题, 后来发现是版本自身的bug, 这个问题在中文网站上基本上就没有人描述过, Hadoopor上有人描述,但没有解决方法。 所以我决定...

    hadoop2.5.2的本地模式、伪分布式集群、分布式集群和HDFS系统的高可用的环境搭建.docx

    hadoop2.5.2的本地模式、伪分布式集群、分布式集群和HDFS系统的高可用的环境搭建.docx hadoop2.5.2的本地模式、伪分布式集群、分布式集群和HDFS系统的高可用的环境搭建.docx hadoop2.5.2的本地模式、伪分布式集群、...

    史上最详细的Hadoop环境搭建

    史上最详细的Hadoop环境搭建,CentOS+Hadoop等详解 第一部分:Linux环境安装 第二部分:Hadoop本地模式安装 第三部分:Hadoop伪分布式模式安装 第四部分:完全分布式安装 第五部分:Hadoop HA安装

    Host-noly 模式下hadoop1.1.2伪分布式安装

    9 安装hadoop1.1.2 10 启动时没有NameNode的可能原因: 11 运行简单的 MapReduce 计算 每一步骤配有解释,代码,还有运行结果截图。 强烈鄙视一大堆代码和解释,不配执行结果,自己运行时候出一大堆错!!!

    hadoop环境配置与搭建

    hadoop配置学习,本地版、伪分布式、完全分布式模式的环境搭建。全面讲解。

    Hadoop大数据平台构建、规划大数据平台集群教学课件.pptx

    伪分布模式 在单机上运行。 使用分布式文件系统。 hadoop集群只有一个节点,因此hdfs的块复制将限制为单个副本。 在单个节点上运行NameNode、DataNode、JobTracker、TaskTracker、SeconderyNameNode 这5个进程。 ...

    全球最详细的从零起步搭建Hadoop单机和伪分布式开发环境图文教程

    本文从零起步构建Hadoop单机版本和伪分布式的开发环境,涉及: 1, 开发Hadoop需要的基本软件; 2, 安装每个软件; 3, 配置Hadoop单机模式并运行Wordcount示例;...4, 配置Hadoop伪分布式模式并运行Wordcount示例;

    基于hadoop的云计算研究报告

    1. Hadoop的基本结构和包含部分 2. 云存储虚拟平台的搭建 3. Hadoop的环境配置 4. 建立Hadoop集群的实验 5. Hadoop单机模式 6. Hadoop伪布式模式 7. Hadoop完全分布式模式

    hadoop学习路线

    2、能够在linux环境搭建hadoop、hbase等的伪分布和分布模式,进入公司后可以自己搭建环境; 3、能够使用java语言、shell命令行两种方式操作hadoop、zookeeper、hbase、hive、sqoop等,进入公司可以直接上手工作,不...

    尚硅谷大数据之Hadoop入门

    尚硅谷大数据之Hadoop入门,Hadoop是目前大数据领域的流行框架,用java编写,运行在Linux集群上,这篇笔记关于Hadoop做了详细的介绍,并且还讲解了如何搭建Hadoop本地模式,伪分布模式和完全分布式模式

    新版Hadoop视频教程 段海涛老师Hadoop八天完全攻克Hadoop视频教程 Hadoop开发

    第一天 hadoop的基本概念 伪分布式hadoop集群安装 hdfs mapreduce 演示 01-hadoop职位需求状况.avi 02-hadoop课程安排.avi 03-hadoop应用场景.avi 04-hadoop对海量数据处理的解决思路.avi 05-hadoop版本选择和...

    Hadoop实战中文版

    2.2.2 验证SSH安装 2.2.3 生成SSH密钥对 2.2.4 将公钥分布并登录验证 2.3 运行Hadoop 2.3.1 本地(单机)模式 2.3.2 伪分布模式 2.3.3 全分布模式 2.4 基于Web 的集群用户界面 2.5 小结 第3章 Hadoop组件...

Global site tag (gtag.js) - Google Analytics