Hadoop 快速入门

 

Required Software

  1. JavaTM 1.5.x
  2. ssh与sshd

如果没有安装请自行安装。我以CentOS 4.6为例。

下载hadoop,http://apache.mirror.phpchina.com/hadoop/core/ 我下载的是0.17.1版本。

解压hadoop-0.17.1.tar.gz,然后conf/hadoop-env.sh 设置JAVA_HOME ,我是可JAVA_HOME 去注释,值自己的路径。如:

export JAVA_HOME =/ usr / java / jdk1 . 6 . 0_06

如果不设置启动后用不了。

先从简单开始。

1、Local (Standalone) Mode ,叫单机模式。

[chenlb @master  hadoop - 0.17 . 1 ]$ bin / hadoop jar hadoop - 0.17 . 1 - examples . jar  grep  conf output  ' dfs[a-z.]+ '

 

[chenlb @master  hadoop - 0.17 . 1 ]$ cat output /*


如果,正常可以看到内容。像这样。

3        dfs .
3        dfs . class
2        dfs . period
2        dfs . replication
...    ...

2、Pseudo-Distributed Mode,虚拟分布模式。
vi conf/hadoop-site.xml
< configuration >
< property >
        
< name > fs.default.name name >
        
< value > hdfs://master:9000/ value >
property >
< property >
        
< name > mapred.job.tracker name >
        
< value > hdfs://master:9001/ value >
property >
< property >
        
< name > dfs.replication name >
        
< value > 1 value >
property >
< property >
        
< name > hadoop.tmp.dir name >
        
< value > /home/chenlb/hadoop-0.17.1/tmp/ value >
property >
configuration >

在/etc/hosts里添加本机ip对应master,例如我的:172.16.249.210    master
保证可以无密码登录。请看那一篇文章: http://www.blogjava.net/chenlb/archive/2008/07/03/212293.html

用ssh localhost试一下是否免密码登录。

格式化分布式文件系统:
[chenlb @master  hadoop - 0.17 . 1 ]$ bin / hadoop namenode  - format

启动Hadoop:
[chenlb @master  hadoop - 0.17 . 1 ]$ bin / start - all . sh 

默认可以在 ${HADOOP_HOME}/logs里看到日志。

可以用web看浏览NameNode和JobTracker
NameNode - http://localhost:50070/ JobTracker - http://localhost:50030/


把文件放到分布式文件系统里:

[chenlb @master  hadoop - 0.17 . 1 ]$ bin / hadoop dfs  - put conf input

此时已经在分布文件系统里建立了input文件夹。而conf是本地的文件夹。

执行示例:
[chenlb @master  hadoop - 0.17 . 1 ]$ bin / hadoop jar hadoop -*- examples . jar  grep  input output  ' dfs[a-z.]+ '

这里input和output都是分布式文件系统的的文件夹,而且output在分布式文件系统里不存在,否则报错(也可以先删除它bin/badoop dfs -rmr output)。

耐心等待。结束后可以查看。
[chenlb @master  hadoop - 0.17 . 1 ]$ bin / hadoop dfs  - get output output 
[chenlb
@master  hadoop - 0.17 . 1 ]$ cat output /*  

也可以直接在分布式文件系统里查:
[chenlb @master  hadoop - 0.17 . 1 ]$ bin / hadoop dfs  - cat output /*

成功运行后可以关闭它了:
[chenlb @master  hadoop - 0.17 . 1 ]$ bin / stop - all . sh

我在第2阶段,出了些问题:output已经存在,要先删除它(第二次运行前,可以不用output)。

下一篇讲:Fully-Distributed Mode

你可能感兴趣的:(Lucene)