- 浏览: 159929 次
- 性别:
- 来自: 北京
最新评论
-
w156445045:
我最近想写这方面的论文,学位论文啊,哎。希望博主能给点思路,谢 ...
《Lucene+Nutch搜索引擎》看过以后。。。 -
inprice:
这也要研究啊!!!!! 失望ing.........
完成了对于heritrix的初步研究 -
dt_fb:
您好,我想问问您,你有跳过recrawl.sh这个脚本文件么? ...
Nutch开源搜索引擎的crawl日志分析及工作目录说明 -
lovepoem:
能增量吗?是不是还是把所有的url遍历出来。和以前的对比。算是 ...
Nutch开源搜索引擎增量索引recrawl的终极解决办法 -
itang:
见到牛人照片了, MS下巴动过刀(开玩笑)
搜索引擎名人堂之Jeff Dean
--------------------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>
参考文章
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 server之后,如果想运行这种单机上的伪分布式,是不是还需要手动1)格式化HDFS;2)start-all.sh;3)hadoop dfs -put 之后,才可以在eclipse中运行啊?
我在配置好了hadoop server之后直接运行,好像不好使。
对了,欢迎您加入Hadoop高手联盟QQ群,群号码是:31676520
发表评论
-
Nutch1.0开源搜索引擎与Paoding在eclipse中用plugin方式集成(终极篇)
2009-09-14 13:15 4334本文主要描述的是如何将paoding分词用plugi ... -
Nutch1.0的那些事
2009-09-10 12:37 2197很久没有更新博客了,应该快一年了。现在呢,我把去年 ... -
配置linux服务器之间ssh不用密码访问
2008-11-05 13:55 3907在配置nutch的时候,我 ... -
搜索引擎术语
2008-10-15 15:30 2548最近monner兄共享了一篇 ... -
搜索引擎机器人研究报告
2008-10-13 15:35 1932从该文对googlebot的分析看,googlebot似乎是想 ... -
搜索引擎算法研究
2008-10-13 15:11 21221.引言 万维网WWW(World Wide Web ... -
谁说搜索引擎只关注结果-看我viewzi的72变
2008-10-04 20:15 1837搜索引擎给大家的感觉,就是用起来简单,以google为首,一个 ... -
《Lucene+Nutch搜索引擎》看过以后。。。
2008-10-03 23:42 7639研究搜索引擎技术快一 ... -
微软有趣的人物关系搜索引擎——人立方
2008-10-03 20:00 3963最近,微软亚洲研究院 ... -
Nutch开源搜索引擎增量索引recrawl的终极解决办法(续)
2008-09-28 19:30 3476十一要放假了,先祝广大同学们节日快乐! 在之前的一篇文章中, ... -
Nutch:一个灵活可扩展的开源web搜索引擎
2008-09-28 11:46 2267在网上找到一篇于2004年11月由CommerceNet La ... -
Google公司都是些什么牛人?
2008-09-27 17:31 2074Google公司都是些什么牛人? 1 Vi ... -
搜索引擎名人堂之Doug Cutting
2008-09-27 11:41 2640Doug Cutting是一个开源搜索技术的提倡者和创造者。他 ... -
Nutch开源搜索引擎增量索引recrawl的终极解决办法
2008-09-26 19:12 5175本文重点是介绍Nutch开源搜索引擎如何在Hadoop分布式计 ... -
Nutch开源搜索引擎与Paoding中文分词用plugin方式集成
2008-09-26 15:31 4594本文是我在集成中文分词paoding时积累的经验,单独成一篇文 ... -
关于Hadoop的MapReduce纯技术点文章
2008-09-24 18:10 3517本文重点讲述Hadoop的整 ... -
MapReduce-免费午餐还没有结束?
2008-09-24 09:57 1485Map Reduce - the Free Lunch is ... -
搜索引擎名人堂之Jeff Dean
2008-09-22 15:09 14976最近一直在研究Nutch,所以关注到了搜索引擎界的一些名人,以 ... -
Lucene于搜索引擎技术(Analysis包详解)
2008-09-22 14:55 2223Analysis 包分析 ... -
Lucene与搜索引擎技术(Document包详解)
2008-09-22 14:54 1723Document 包分析 理解 ...
相关推荐
Hadoop的核心组件包括Hadoop Distributed File System(HDFS)和MapReduce,这两个组件共同构成了一个高性能、高可靠性的分布式计算平台。在本文中,将会详细介绍基于Hadoop构建高可靠分布式计算平台的过程以及对高...
这是对搭建环境的初步验证,以确保后续的Hadoop分布式计算能够正常进行。 10. 分布式部署方法 分布式部署方法涉及到的配置和步骤比较多,包括但不限于环境变量设置、格式化文件系统、启动集群服务等。在集群搭建...
3. 了解并实践分布式计算框架MapReduce,它是Hadoop处理大数据的核心组件,用于实现分布式批处理任务。 4. 熟悉YARN(Yet Another Resource Negotiator),它是Hadoop的资源管理和调度系统,负责分配集群资源并管理...
本篇文章将深入探讨如何搭建一个完整的Hadoop分布式集群,特别关注Java编程环境下的配置和操作。 首先,我们需要理解Hadoop的架构。Hadoop由两个主要组件构成:Hadoop Distributed File System (HDFS) 和 MapReduce...
- 至少三台服务器,其中一台作为Master节点,其他作为Slave节点。 - Master节点需具备足够的内存和CPU资源来支持NameNode、JobTracker和SecondaryNameNode等核心组件。 - Slave节点需具备足够的磁盘空间用于存储数据...
在大数据处理领域,Hadoop是一个关键的开源框架,它提供了在分布式计算环境中存储和处理海量数据的能力。本教程将详细介绍如何在虚拟机中搭建一个完全分布式Hadoop环境,适用于学习者和专业人士。以下是具体步骤: ...
配置一个Hadoop分布式集群,通常需要多台服务器或虚拟机,彼此之间通过网络连接。在这个案例中,我们有三台机器,分别命名为hadoop1、hadoop2和hadoop3,都运行Linux系统,且已安装JDK 1.6.0。每台机器都需要有自己...
Hadoop 作为目前最流行的分布式计算框架之一,对于大数据处理和分析具有着极其重要的作用。然而,对于新手来说,搭建 Hadoop 服务器可能是一个相当大的挑战。因此,本文将手把手教你搭建 Hadoop 服务器,帮助你快速...
Hadoop是一个开源的分布式计算框架,主要用于处理和存储大量数据。在学习和测试Hadoop时,我们通常会采用伪分布式模式,它在单个节点上模拟整个Hadoop集群,既保留了分布式特性,又简化了配置过程。以下将详细介绍...
在参考文献中提到的倪星宇,是上海交通大学电子信息与工程学院的硕士研究生,其研究方向为智慧电厂云计算平台的构建,体现了Hadoop平台在电力等传统行业的智能化转型中的应用价值。 通过以上分析,我们可以看出,...
Hadoop是一个分布式计算框架,主要提供了分布式文件存储(DFS)和Map/Reduce核心功能。在这里,我们将详细介绍Hadoop集群的安装步骤,包括准备工作、安装Hadoop软件、配置集群环境等内容。 准备工作 在安装Hadoop...
Hadoop是一种能够处理大量数据的大规模分布式存储与计算平台,被广泛应用于大数据处理领域。本篇教程将详细介绍如何在多台服务器上部署Hadoop集群,分为八个步骤进行讲解。通过本文的学习,您将能够独立完成Hadoop的...
Hadoop是Apache基金会旗下的一个开源分布式计算框架,它最初由Doug Cutting及其团队开发,旨在处理大规模数据集。Hadoop的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce。HDFS是一种分布式文件...
1. **Hadoop概述**:Hadoop由Apache基金会开发,基于Java语言,设计为分布式计算系统,它支持数据密集型应用,能够处理PB级别的数据。Hadoop的核心包括两个主要部分:Hadoop Distributed File System (HDFS)和...
本文档详细介绍了如何在三台服务器上搭建 Hadoop 2.6.4 的集群模式,并提供了具体的步骤指导,适用于初学者及有经验的运维工程师。 #### 二、环境准备与配置 ##### 2.1 服务器配置 本示例中采用三台服务器构建集群...
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是一款开源的分布式计算框架,由Apache基金会开发,用于处理和存储海量数据。它的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce,能够实现数据的高容错性和高扩展性。在本安装文档中,我们...
Hadoop是一个开源的分布式计算框架,广泛应用于大数据处理。在Linux环境下安装和配置Hadoop是一项基础但重要的任务,尤其对于那些需要处理大规模数据的组织。本文将详细介绍如何在Linux服务器集群上安装和配置Hadoop...