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

研究hadoop分布式计算平台及三台服务器的实现

阅读更多
--------------------20080819------------
参考文章
http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop1/index.html
http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop2/index.html
http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop3/
http://hi.baidu.com/zeorliu/blog/item/3633468235fce8a40cf4d23d.html

按照developerworks上的这几篇文章去做,就可以把hadoop配置起来,我在这里就不多啰嗦了,下面呢是我在配置过程中遇到问题时的一些记录,可以参考一下。

--------------20080819------------------
安装cygwin
http://bbs.wuyou.com/viewthread.php?tid=119296&extra=page%3D6


体验hadoop
$ cd /cygdrive/e/workspace/searchengine/hadoop/hadoop-0.18.0
$ mkdir test-in 
$ cd test-in
#在 test-in 目录下创建两个文本文件, WordCount 程序将统计其中各个单词出现次数
$ echo "hello world bye world" >file1.txt  
$ echo "hello hadoop goodbye hadoop" >file2.txt
$ cd ..
$ bin/hadoop jar hadoop-0.18.0-examples.jar wordcount test-in test-out
#执行完毕,下面查看执行结果:
$ cd test-out
$ cat part-00000
bye     1
goodbye  1
hadoop  2
hello    2
world   2

-------------------------20080822
伪分布式运行模式

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

从分布式存储的角度来说,集群中的结点由一个 NameNode 和若干个 DataNode 组成, 另有一个 Secondary NameNode 作为 NameNode 的备份。从分布式应用的角度来说,集群中的结点由一个 JobTracker 和若干个 TaskTracker 组成,JobTracker 负责任务的调度,TaskTracker 负责并行执行任务。TaskTracker 必须运行在 DataNode 上,这样便于数据的本地计算。JobTracker 和 NameNode 则无须在同一台机器上。

(1) 按代码清单2修改 conf/hadoop-site.xml。注意 conf/hadoop-default.xml 中是 Hadoop 缺省的参数,你可以通过读此文件了解 Hadoop 中有哪些参数可供配置,但不要修改此文件。可通过修改 conf/hadoop-site.xml 改变缺省参数值,此文件中设置的参数值会覆盖 conf/hadoop-default.xml 的同名参数。

<configuration>
  <property>
    <name>fs.default.name</name>
    <value>localhost:9000</value>
  </property>
  <property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
  </property>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>

(2)配置 SSH,如代码清单3所示:
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

$ cd /cygdrive/c/hadoop-0.16.0
$ bin/hadoop namenode –format

$ bin/start-all.sh 
$ ps –ef

$ bin/hadoop dfs -put ./test-in input 
#将本地文件系统上的 ./test-in 目录拷到 HDFS 的根目录上,目录名改为 input
#执行 bin/hadoop dfs –help 可以学习各种 HDFS 命令的使用。
$ bin/hadoop jar hadoop-0.18.0-examples.jar wordcount input output
#查看执行结果:
#将文件从 HDFS 拷到本地文件系统中再查看:
$ bin/hadoop dfs -get output output
$ cat output/*
#也可以直接查看
$ bin/hadoop dfs -cat output/*
$ bin/stop-all.sh #停止 hadoop 进程

故障诊断

(1) 执行 $ bin/start-all.sh 启动 Hadoop 进程后,会启动5个 java 进程, 同时会在 /tmp 目录下创建五个 pid 文件记录这些进程 ID 号。通过这五个文件,可以得知 namenode, datanode, secondary namenode, jobtracker, tasktracker 分别对应于哪一个 Java 进程。当你觉得 Hadoop 工作不正常时,可以首先查看这5个 java 进程是否在正常运行。

(2) 使用 web 接口。访问 http://localhost:50030 可以查看 JobTracker 的运行状态。访问 http://localhost:50060 可以查看 TaskTracker 的运行状态。访问 http://localhost:50070 可以查看 NameNode 以及整个分布式文件系统的状态,浏览分布式文件系统中的文件以及 log 等。

(3) 查看 ${HADOOP_HOME}/logs 目录下的 log 文件,namenode, datanode, secondary namenode, jobtracker, tasktracker 各有一个对应的 log 文件,每一次运行的计算任务也有对应用 log 文件。分析这些 log 文件有助于找到故障原因。


---------------------20080825---------------------
下载所有版本,取0.18做为研究版本,需要下载jdk1.6来编译,才能通过


---------------------20080826---------------------------
安装IBM MapReduce Tools for Eclipse
1)配置Hadoop Home Directory ,注意这个目录下面需要有*core.jar包
2)配置运行,start Hadoop Server,需要指定cygwin的目录方式,才能找到hadoop home

用192.168.1.91~93做测试,91为linux1,92为linux2,93为linux3.
linux1通过可信任的ssh方式来登录linux2,linux3,来控制tasktracker和datanode

hadoop目录:/home/kevin/hadoop-0.18
jdk目录:/home/kevin/jdk1.6.0_10

>>>>>配置文件
masters内容如下:
linux1

slaves内容如下:
linux2
linux3

hadoop-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://linux1:9000/</value>
<description>The name of the default file system. Either the literal string
"local" or a host:port for DFS.</description>
</property>
<property>
<name>mapred.job.tracker</name>
<value>hdfs://linux1:9001/</value>
<description>The host and port that the MapReduce job tracker runs at. If
"local", then jobs are run in-process as a single map and reduce task.</description>
</property>
<property>
<name>dfs.name.dir</name>
<value>/home/kevin/hadoopfs/name</value>
<description>Determines where on the local filesystem the DFS name node
should store the name table. If this is a comma-delimited list of directories
then the name table is replicated in all of the directories,
for redundancy. </description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/kevin/hadoopfs/data</value>
<description>Determines where on the local filesystem an DFS data node
should store its blocks. If this is a comma-delimited list of directories,
then data will be stored in all named directories, typically on different devices.
Directories that do not exist are ignored.</description>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
<description>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.</description>
</property>
</configuration>
分享到:
评论
1 楼 bacoo 2008-11-13  
我也在用cygwin搭建hadoop平台,在配置hadoop server时遇到了问题,看到你在文中提到“配置运行,start Hadoop Server,需要指定cygwin的目录方式,才能找到hadoop home ”,这是什么意思?该如何操作才可以?


此外,配置好了hadoop server之后,如果想运行这种单机上的伪分布式,是不是还需要手动1)格式化HDFS;2)start-all.sh;3)hadoop dfs -put 之后,才可以在eclipse中运行啊?
我在配置好了hadoop server之后直接运行,好像不好使。

对了,欢迎您加入Hadoop高手联盟QQ群,群号码是:31676520

相关推荐

    基于Hadoop的高可靠分布式计算平台的构建.pdf

    Hadoop的核心组件包括Hadoop Distributed File System(HDFS)和MapReduce,这两个组件共同构成了一个高性能、高可靠性的分布式计算平台。在本文中,将会详细介绍基于Hadoop构建高可靠分布式计算平台的过程以及对高...

    Hadoop大数据计算平台搭建实践.pdf

    这是对搭建环境的初步验证,以确保后续的Hadoop分布式计算能够正常进行。 10. 分布式部署方法 分布式部署方法涉及到的配置和步骤比较多,包括但不限于环境变量设置、格式化文件系统、启动集群服务等。在集群搭建...

    实验2 基于华为云的Hadoop分布式系统搭建1

    3. 了解并实践分布式计算框架MapReduce,它是Hadoop处理大数据的核心组件,用于实现分布式批处理任务。 4. 熟悉YARN(Yet Another Resource Negotiator),它是Hadoop的资源管理和调度系统,负责分配集群资源并管理...

    Hadoop搭建完全分布式集群

    本篇文章将深入探讨如何搭建一个完整的Hadoop分布式集群,特别关注Java编程环境下的配置和操作。 首先,我们需要理解Hadoop的架构。Hadoop由两个主要组件构成:Hadoop Distributed File System (HDFS) 和 MapReduce...

    hadoop完全分布式集群搭建笔记

    - 至少三台服务器,其中一台作为Master节点,其他作为Slave节点。 - Master节点需具备足够的内存和CPU资源来支持NameNode、JobTracker和SecondaryNameNode等核心组件。 - Slave节点需具备足够的磁盘空间用于存储数据...

    Hadoop完全分布式环境搭建.docx

    在大数据处理领域,Hadoop是一个关键的开源框架,它提供了在分布式计算环境中存储和处理海量数据的能力。本教程将详细介绍如何在虚拟机中搭建一个完全分布式Hadoop环境,适用于学习者和专业人士。以下是具体步骤: ...

    Hadoop-0.21.0分布式集群配置

    配置一个Hadoop分布式集群,通常需要多台服务器或虚拟机,彼此之间通过网络连接。在这个案例中,我们有三台机器,分别命名为hadoop1、hadoop2和hadoop3,都运行Linux系统,且已安装JDK 1.6.0。每台机器都需要有自己...

    hadoop服务器搭建全攻略

    Hadoop 作为目前最流行的分布式计算框架之一,对于大数据处理和分析具有着极其重要的作用。然而,对于新手来说,搭建 Hadoop 服务器可能是一个相当大的挑战。因此,本文将手把手教你搭建 Hadoop 服务器,帮助你快速...

    hadoop的伪分布式模式配置与安装伪分布式模式

    Hadoop是一个开源的分布式计算框架,主要用于处理和存储大量数据。在学习和测试Hadoop时,我们通常会采用伪分布式模式,它在单个节点上模拟整个Hadoop集群,既保留了分布式特性,又简化了配置过程。以下将详细介绍...

    基于Hadoop云计算平台的构建.pdf

    在参考文献中提到的倪星宇,是上海交通大学电子信息与工程学院的硕士研究生,其研究方向为智慧电厂云计算平台的构建,体现了Hadoop平台在电力等传统行业的智能化转型中的应用价值。 通过以上分析,我们可以看出,...

    Hadoop集群安装详细步骤

    Hadoop是一个分布式计算框架,主要提供了分布式文件存储(DFS)和Map/Reduce核心功能。在这里,我们将详细介绍Hadoop集群的安装步骤,包括准备工作、安装Hadoop软件、配置集群环境等内容。 准备工作 在安装Hadoop...

    8步安装好你的hadoop

    Hadoop是一种能够处理大量数据的大规模分布式存储与计算平台,被广泛应用于大数据处理领域。本篇教程将详细介绍如何在多台服务器上部署Hadoop集群,分为八个步骤进行讲解。通过本文的学习,您将能够独立完成Hadoop的...

    CentOS下Hadoop+Hbase+ZooKeeper分布式存储部署详解

    Hadoop是Apache基金会旗下的一个开源分布式计算框架,它最初由Doug Cutting及其团队开发,旨在处理大规模数据集。Hadoop的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce。HDFS是一种分布式文件...

    hadoop集群搭建文档资料

    1. **Hadoop概述**:Hadoop由Apache基金会开发,基于Java语言,设计为分布式计算系统,它支持数据密集型应用,能够处理PB级别的数据。Hadoop的核心包括两个主要部分:Hadoop Distributed File System (HDFS)和...

    hadoop2.6.4集群模式安装文档

    本文档详细介绍了如何在三台服务器上搭建 Hadoop 2.6.4 的集群模式,并提供了具体的步骤指导,适用于初学者及有经验的运维工程师。 #### 二、环境准备与配置 ##### 2.1 服务器配置 本示例中采用三台服务器构建集群...

    hadoop安装配置文档.pdf

    2. 在所有服务器及虚拟机上绑定hosts文件,以确保主机名可以被解析。 3. 准备相关软件包,如hadoop-0.20.2-cdh3u5.tar.gz、hbase-0.90.6-cdh3u5.tar.gz、hive-0.7.1-cdh3u5.tar.gz、zookeeper-3.3.5-cdh3u5.tar.gz和...

    hadoop超级详细安装文档

    Hadoop是一款开源的分布式计算框架,由Apache基金会开发,用于处理和存储海量数据。它的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce,能够实现数据的高容错性和高扩展性。在本安装文档中,我们...

    Hadoop安装与配置详细教程(Linux)

    Hadoop是一个开源的分布式计算框架,广泛应用于大数据处理。在Linux环境下安装和配置Hadoop是一项基础但重要的任务,尤其对于那些需要处理大规模数据的组织。本文将详细介绍如何在Linux服务器集群上安装和配置Hadoop...

Global site tag (gtag.js) - Google Analytics