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

HADOOP的初次尝试

阅读更多
Hadoop的下载地址:
http://www.apache.org/dyn/closer.cgi/hadoop/core/
版本:hadoop0.17.1

JDK的安装:
要求必须安装jdk1.5.07以上的版本。


分步式环境的搭建:
1、 硬件环境
我们采用了3台机器来构建,都安装的是Red Hat 4.1.2-42系统,并且都有一个名为“mingjie“的帐号,如下:
           主机名称:hdfs1    ip:192.168.0.221        功能:NameNode,JobTracker
           主机名称:hdfs2    ip:192.168.0.227       功能:DataNode,TaskTracker
主机名称:hdfs3    ip:192.168.0.228       功能:DataNode,TaskTracker

重点:修改3台机器的/etc/hosts,让彼此的主机名称和ip都能顺利解析
         127.0.0.1       localhost
          192.168.0.37    hdfs1
          192.168.0.43    hdfs2
          192.168.0.53    hdfs3
2、 每台机器都要安装java环境,我们的路径统一为“/opt/modules/jdk1.6“,并添加到系统环境变量sudo vi /etc/profile

JAVA_HOME=/opt/modules/jdk1.6
PATH=$JAVA_HOME/bin:$PATH:$CATALINA_HOME/bin
CLASSPATH=$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
3、 下载hadoop0.17.1,将hadoop解压到/home/mingjie/,建议最好也将hadoop的目录添加到环境变量里面去:

HADOOP_HOME=/home/mingjie/hadoop-0.17.1 #这是hadoop的主目录  
export HADOOP_HOME
HADOOP_CONF_DIR=$HADOOP_HOME/conf   #这是hadoop的配置文件目录
export HADOOP_CONF_DIR
HADOOP_LOG_DIR=/home/mingjie/hadoop-0.17.1/log    #存放运行日志目录  
export HADOOP_LOG_DIR  
export PATH=$PATH:$HADOOP_HOME/bin

4、 安装ssh,并生成公钥和私钥
 运行 ssh-keygen -t rsa,根据屏幕提示直接选择“回车”
 会在用户目录~/.ssh/产生两个文件,id_rsa,id_rsa.pub
 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 
以上配置完成后,执行一下ssh localhsot,确认你的每台机器都可以使用ssh

5、 将master服务器上的authorized_keys的内容加到slave两台机器的authorized_keys文件中。让master也可以不需要密码访问2台slave服务器。

sudo scp authorized_keys hdfs2:/home/mingjie/.ssh/  
sudo scp authorized_keys hdfs3:/home/mingjie/.ssh/   
ssh hdfs2  
ssh hdfs3 
6、 接下来,我们要修改hadoop的[conf/masters]、[conf/slaves]这2个文件:
       Master设置(<HADOOP_HOME>/conf/masters):hdfs1
       Slave设置(<HADOOP_HOME>/conf/slaves):hdfs2 hdfs3
7、 修改[conf/hadoop-env.sh]:
       export JAVA_HOME=/opt/jdk1.6.0_03
8、 修改[conf/hadoop-site.xml],这里只是几个常用的属性配置,有关hadoop的性能优化调整,需要研究hadoop-default.xml:
<configuration>
   <property>  
      <name>fs.default.name</name>//你的namenode的配置,机器名加端口  
      <value>hdfs://hdfs1:54310/</value>
   </property>
   <property>
     <name>mapred.job.tracker</name>//你的JobTracker的配置,机器名加端口  
      <value>hdfs://hdfs1:54311</value>
   </property>
   <property>
      <name>dfs.replication</name>//数据需要备份的数量,默认是三  
      <value>1</value>
   </property>
   <property>
      <name>hadoop.tmp.dir</name>//Hadoop的默认临时路径,这个最好配置,如果在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删除此文件中的tmp目录即可。不过如果删除了NameNode机器的此目录,那么就需要重新执行NameNode格式化的命令。   
      <value>/home/mingjie/hadoop-0.17.1/tmp/</value>
   </property>
   <property>  
      <name>mapred.child.java.opts</name>//java虚拟机的一些参数可以参照配置  
      <value>-Xmx512m</value>
   </property>
   <property> 
      <name>dfs.block.size</name>//block的大小,单位字节,后面会提到用处,必须是512的倍数,因为采用crc作文件完整性校验,默认配置512是checksum的最小单元。 
      <value>5120000</value>
      <description>The default block size for new files.</description>
   </property>
</configuration>
9、 然后将hadoop的整体环境拷贝到hdfs2、hdfs3上面去
    scp -r /home/mingjie/hadoop.0.17.1 hdfs2:/home/mingjie/ hadoop.0.17.1
    scp -r /home/mingjie/ hadoop.0.17.1 hdfs3:/home/mingjie/ hadoop.0.17.1
10、 在hdfs1这个namenode上面格式化一个新的分布式文件系统HDFS,就是hadoop-site.xml文件中指定的hadoop.tmp.dir路径
         <HADOOP_HOME>/bin/hadoop namenode –format

到此大致上就完成了hadoop环境布署
        启动hadoop:<HADOOP_HOME>/bin/start-all.sh
停止hadoop:<HADOOP_HOME>/bin/stop-all.sh

说明:
    (1) 执行启动Hadoop进程后,
 在master服务器会启动3个java进程,分别的NameNode,SecondNameNode,JobTracker,在LOG目录下会产生2个文件,分别对应NameNode的运行日志和JobTracker的运行日志,
 在slave服务器会启动2个java进程,分别为DataNode,TaskTracker,,在LOG目录下会产生2个文件,分别对应DataNode的运行日志和TaskTracker的运行日志,可以通过查看日志分析hadoop的启动是否正确。
(2) 通过IE浏览分布式文件系统中的文件
 访问 http://hdfs1:50030 可以查看JobTracker的运行状态。
 访问 http://360quan-1:50060可以查看 TaskTracker的运行状态。
 访问 http://360quan-1:50070可以查看NameNode以及整个分布式文件系统的状态。
分享到:
评论
1 楼 davidgrubby 2008-09-06  
当初研究nutch的时候也研究过hadoop,是一种并行运算的东东,里面实现的map reduce算法一直没搞清楚,lz能不能顺便做一些讲解啊。

相关推荐

    hadoop2.6.5伪分布式搭建

    7. **Hadoop 的初次启动**: - 进入 Hadoop 目录,格式化 NameNode:`bin/hadoop namenode -format`。 - 启动 Hadoop:`bin/start-all.sh`。 - 关闭 Hadoop:`bin/stop-all.sh`。 8. **解决常见问题**: - 如果...

    Ubuntu上搭建Hadoop2.x详细文档

    - 可以尝试上传文件到HDFS,使用`$HADOOP_HOME/bin/hdfs dfs -put localfile /hadoop/input`命令上传文件,然后使用`$HADOOP_HOME/bin/hdfs dfs -ls /`列出文件。 #### 总结 本文档详细介绍了如何在Ubuntu系统上...

    hadoop本地运行所需winutils.exe文件

    当我们尝试在Windows环境下运行Hadoop相关的程序,如Hive或HBase,如果缺少winutils.exe,就会遇到"Could not locate executable null \bin\winutils.exe in the hadoop binaries"这样的错误提示。 Hadoop原本设计...

    hadoop2.6.0伪分布安装

    在本例中,初次尝试时选择了错误的 JDK 版本,建议重新下载正确的 JDK 并进行安装。 2. **下载正确版本**:确保下载的是二进制分发包(例如 hadoop-2.6.0.tar.gz)而非源码包。源码包需要编译才能使用,这会增加...

    windows下安装云计算环境hadoop的完整步骤

    在 Windows 环境下搭建 Hadoop 集群是一项挑战性的任务,尤其是对于初次接触大数据处理框架的开发者来说。本文将详细阐述在 Windows 平台上安装配置 Hadoop 的具体步骤及注意事项,确保读者能够顺利搭建出一个可运行...

    hadoop-2.9.1-tar.zip

    6. **运行示例程序**:可以尝试运行Hadoop自带的WordCount程序,验证Hadoop环境的正确性。 7. **安全配置(可选)**:在生产环境中,可能还需要配置Hadoop的安全特性,如Kerberos认证,以确保数据安全。 Hadoop ...

    成功安装-安装hadoop遇到的问题

    在安装Hadoop的过程中,往往会出现各种问题,尤其是在初次尝试或者对系统配置不熟悉时。这篇博文"成功安装-安装hadoop遇到的问题"可能提供了一些在实际操作中可能会遇到的难点和解决方案。虽然没有具体的描述内容,...

    hadoop.txt

    在初次启动Hadoop集群或者在更改了某些配置(如:修改dfs.name.dir)后,可能需要重新格式化NameNode。执行此命令前,请确保已经备份了现有数据,并且了解格式化操作将清除所有数据。 - **命令语法**: ```bash ....

    在Ubunt-11.04上布署hadoop-0.20.2集群云平台

    ### 在Ubuntu 11.04上部署Hadoop-0.20.2集群云平台的知识点 ...对于初次尝试部署Hadoop集群的用户来说,按照本实验指导进行操作可以有效提高成功率。同时,在实际应用中还需根据具体需求对配置进行适当调整。

    linux安装详解

    - 尝试运行一些简单的Hadoop MapReduce示例,如WordCount,验证Hadoop是否正常工作。 通过以上步骤,你将能够成功地在Linux系统上安装和配置Hadoop,为大数据分析和处理打下基础。这个过程可能会遇到一些问题,但...

    Ambari 官网提供的信息内容

    对于初次使用Ambari的用户而言,建议先阅读[Ambari的安装指南](http://incubator.apache.org/ambari/1.2.3/installing-hadoop-using-ambari/content/index.html)。该指南详细介绍了如何在不同的操作系统(如Linux)...

    RunDeck 部署文档

    文档中提到通过添加`172.16.11.53 hadoop-01`到`/etc/hosts`解决了访问问题。 #### 五、总结 - 通过上述步骤,我们了解了如何在Linux环境下部署RunDeck。尽管过程中遇到了不少挑战,但最终成功实现了部署目标。未来...

    HadoopPMapPReduce-.rar_Java编程_Java_

    在IT行业中,大数据处理是一个至关重要的领域,而Hadoop作为开源的大数据处理框架,其核心组件MapReduce在其中起着核心作用。...无论你是初次接触Hadoop还是希望提升现有技能,这都是一个不可多得的学习资源。

    如何销售大数据.pptx

    "如何销售大数据.pptx"中提到的新客户初次接触时可能会遇到的挑战,包括客户对大数据技术的陌生、对高端产品的误解以及对开源系统的偏好。以下是一些有效的应对策略: 1. **提升知名度**:通过引用知名媒体的报道,...

    Spark开发及本地环境搭建指南

    - **Hadoop版本:** 可以选择与你的集群相匹配的Hadoop版本,这对于确保应用程序能够在目标环境中顺利运行至关重要。 - **Spark-Hive集成:** 如果你的项目需要使用Hive进行数据处理,可以选择启用Spark-Hive集成。 - ...

    新手如何学习编程.doc

    对于初次接触编程领域的新手而言,如何有效地学习编程是一大挑战。本文将根据“新手如何学习编程”的主题,结合提供的部分文件内容,详细阐述几个关键的学习步骤与建议。 #### 一、确认兴趣与适应性 在开始学习...

    nutch入门教程

    初次使用Nutch时,可以先尝试爬行企业内部网络,熟悉Nutch的抓取流程。这涉及到配置Nutch的抓取策略,如定义起始URL,设置抓取深度,以及配置过滤规则避免抓取不必要的页面。 **3.2 爬行全网** 随着对Nutch掌握...

    Neural-Network-Java

    "意味着这是一个作者初次尝试用Java编程的项目,可能代码风格和设计可能会比较初级,但对于初学者来说,它是很好的学习资源。 "这是我的‘Nerual-Network-CSharp’项目的音译"表明作者之前可能有使用C#实现神经网络...

    Azkaban软件及安装教程

    4. **启动Solo Server**:如果你是初次尝试,可以先使用单机模式的Azkaban Solo Server,只需运行`bin/start-solo-server.sh`(或`.bat`)脚本。 5. **访问Web界面**:在浏览器中输入`http://localhost:8080`,默认...

    【大数据入门笔记系列】第二节 Zookeeper简介

    Zookeeper是一个分布式协调服务,它是Apache Hadoop项目的一个子项目,专为大规模分布式应用设计。Zookeeper的主要功能包括配置管理、命名服务、分布式同步、组服务等,它使得分布式系统中的节点能够协同工作,解决...

Global site tag (gtag.js) - Google Analytics