</pre><p>首先说一下配置环境:三台电脑</p><p></p><pre name="code" >192.168.30.149 hadoop149 namenode和jobtracker ###因为149机器稍微好一点 192.168.30.150 hadoop150 datanode和TaskTracker 192.168.30.148 hadoop150 datanode和TaskTracker

配置ssh无需密码登陆:

$ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa $ cat~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys我的master在149可以吧149的.pub文件拷贝到150和148上 然后执行<pre name="code" >cat~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys<span style="color:#ff0000;">如果存在问题有可能是文件权限问题!</span>

我用的hadoop版本是hadoop-0.20.2 下载地址:

</pre><p>google吧 过两天弄个网盘都放在上面再写到这里。</p><p></p><p>下载后:编辑几个文件:</p><p>在/root/hadoop-0.20.2/conf中(这里注意的是几台电脑的hadoop文件路径必须相同):加入如下一句话</p><p></p><p>   [root@localhostconf]# vim <span style="color: rgb(255, 0, 0); ">hadoop-env.sh </span>      </p><p></p><pre name="code" > exportJAVA_HOME=/usr/java/jdk1.7.0_01 ###设置变量

   [root@localhostconf]# vim core-site.xml 

<?xmlversion="1.0"?> <?xml-stylesheettype="text/xsl" href="configuration.xsl"?> <!-- Put site-specificproperty overrides in this file. --> <configuration> <property> <name>fs.default.name</name> <value>hdfs://192.168.30.149:9000</value> ###具体的意义之后会讲解 </property> </configuration>

[root@localhostconf]# vim mapred-site.xml 

<?xmlversion="1.0"?> <?xml-stylesheettype="text/xsl" href="configuration.xsl"?> <!-- Putsite-specific property overrides in this file. --> <configuration> <property> <name>mapred.job.tracker</name> <value>hdfs://192.168.30.149:9004</value> </property> </configuration>

[root@localhostconf]# vim hdfs-site.xml

<?xmlversion="1.0"?> <?xml-stylesheettype="text/xsl" href="configuration.xsl"?> <!-- Putsite-specific property overrides in this file. --> <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> </configuration><span style="font-family: Arial, Verdana, sans-serif; white-space: normal; background-color: rgb(255, 255, 255); ">        </span>

[root@localhostconf]# vim masters 

hadoop149

[root@localhostconf]# vim slaves 

hadoop150 hadoop148

一共编辑了5个文件,具体意义代表什么,之后会讲到

这里注意要被指/etc/hosts文件,如下(192.168.30.149):

         [root@localhostconf]# vim /etc/hosts

 

# Do not removethe following line, or various programs # that requirenetwork functionality will fail. 127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 192.168.30.149hadoop149 192.168.30.150hadoop150 192.168.30.148hadoop148

4.启动hadoop:

这里用简单的命令进行启动,

         A.格式化文件系统:                 

#bin/hadoop namenode –format

         B.启动hadoop                 

#bin/start-all.sh

         C.利用hadoop自带的例子测试hadoop是否启动成功                  

#bin/hadoop fs -mkdir input ###在文件系统中创建input文件夹 #bin/hadoopfs -put README.txt input ###把本地readme.txt上传到input中 #bin/hadoop fs –lsr ###查看本件系统所有文件 存在文件并且大小不为0则hadoop文件系统搭建成功。 #bin/hadoopjar hadoop-0.20.2-examples.jar wordcount input/README.txt output ###将输出结果输出到output中 #bin/hadoop jar hadoop-0.20.2-examples.jar wordcount input/1.txt output

11/12/02 17:47:14 INFOinput.FileInputFormat: Total input paths to process : 1

11/12/02 17:47:14 INFO mapred.JobClient:Running job: job_201112021743_0001

11/12/02 17:47:15 INFOmapred.JobClient:  map 0% reduce 0%

11/12/02 17:47:22 INFOmapred.JobClient:  map 100% reduce 0%

11/12/02 17:47:34 INFOmapred.JobClient:  map 100% reduce 100%

11/12/02 17:47:36 INFO mapred.JobClient:Job complete: job_201112021743_0001

11/12/02 17:47:36 INFO mapred.JobClient:Counters: 17

11/12/02 17:47:36 INFOmapred.JobClient:   Job Counters

11/12/02 17:47:36 INFOmapred.JobClient:     Launched reducetasks=1

11/12/02 17:47:36 INFOmapred.JobClient:     Launched maptasks=1

11/12/02 17:47:36 INFOmapred.JobClient:     Data-local maptasks=1

11/12/02 17:47:36 INFOmapred.JobClient:   FileSystemCounters

11/12/02 17:47:36 INFOmapred.JobClient:    FILE_BYTES_READ=32523

11/12/02 17:47:36 INFOmapred.JobClient:    HDFS_BYTES_READ=44253

11/12/02 17:47:36 INFOmapred.JobClient:    FILE_BYTES_WRITTEN=65078

11/12/02 17:47:36 INFOmapred.JobClient:    HDFS_BYTES_WRITTEN=23148

11/12/02 17:47:36 INFOmapred.JobClient:   Map-Reduce Framework

11/12/02 17:47:36 INFOmapred.JobClient:     Reduce inputgroups=2367

11/12/02 17:47:36 INFOmapred.JobClient:     Combine outputrecords=2367

11/12/02 17:47:36 INFOmapred.JobClient:     Map inputrecords=734

11/12/02 17:47:36 INFOmapred.JobClient:     Reduce shufflebytes=32523

11/12/02 17:47:36 INFOmapred.JobClient:     Reduce outputrecords=2367

11/12/02 17:47:36 INFO mapred.JobClient:     Spilled Records=4734

11/12/02 17:47:36 INFOmapred.JobClient:     Map outputbytes=73334

11/12/02 17:47:36 INFOmapred.JobClient:     Combine inputrecords=7508

11/12/02 17:47:36 INFOmapred.JobClient:     Map outputrecords=7508

11/12/02 17:47:36 INFOmapred.JobClient:     Reduce inputrecords=2367 

也可以通过本地浏览器进行查看状态:50070和50030端口(注意配置本地C:\Windows\System32\drivers\etc\hosts文件)

192.168.30.150 hadoop150 192.168.30.149 hadoop149 192.168.30.148 hadoop148