5. 安装Eclipse
(对于正常运行Hadoop,Eclipse是不需要的。这个是用来看代码的)
6. 配置文件(hadoop-env.sh、core-site.xml、hdfs-site.xml和mapred-site.xml)
我使用的是 hadoop1.0.3版本,在之前提到的hadoop下载地址下载。解压hadoop压缩文件即可,我是解压到~/eric/下。下面便是配置这四个配置文件。切记你在Ubuntu下的用户有对需要使用的文件夹有读写权限,这是很重要的。最好不要在命令行中使用sudo,最好chmod来改变文件夹的权限。
(1)hadoop-env.sh
替换成自己的JAVA_HOME路径,切记要去掉“#”,我的路径是 export JAVA_HOME=/usr/lib/jvm/jdk6/jdk1.6.0_32
export HADOOP_PID_DIR=/home/eric/hadoop-pid这个是为可能会遇到的守护进程启动不了问题所修改的,路径可以自己人为指定,而且在/etc/profile文件末尾添加 export HADOOP_PID_DIR=/home/eric/hadoop-pid。这个是我在解决no namenode to stop 和 no datanode to stop时解决问题所遇到的另一个问题,指定了这个路径,问题便解决了。
(2)core-site.xml
首先拷贝src/core文件夹下的core-default.xml文件到conf目录下,然后重命名成core-site.xml(默认在conf文件夹下的core-site.xml内容是空的),进行如下修改: <property><name>hadoop.tmp.dir</name>
<value>/home/eric/hadoop-datastore/hadoop-${user.name}</value>
<description>A base for other temporary directories.</description>
</property>
<!-- 这个配置非常重要,在其他配置文件中是会用到这个路径的。 -->
<property><name>fs.default.name</name>
<value>hdfs://localhost:9999</value>
<description>description>
</property>
<!-- 这个配置非常重要,这是在之后的编程中要匹配的地址,确保端口号没被使用. -->
(3)hdfs-site.xml
首先拷贝src/hdfs文件夹下的hdfs-default.xml文件到conf目录下,然后重命名成hdfs-site.xml(默认在conf文件夹下的hdfs-site.xml内容是空的),进行如下修改: <property><name>dfs.replication</name>
<value>1</value>
<description></description>
</property>
<!-- 由于是在单节点上配置,所以副本为1.没有尝试不是1的结果,但是有的文档说是会因为找不到其他的datanode节点而出现错误。 -->
<property><name>dfs.data.dir</name>
<value>${hadoop.tmp.dir}/dfs/data</value>
<description></description>
</property> <property>
<name>dfs.name.dir</name>
<value>${hadoop.tmp.dir}/dfs/name</value>
<description></description>
</property>
<!-- 以上这两个配置项也是很重要的,默认的是使用了在core-site.xml中的hadoop.tmp.dir路径下的。保持这样就行,在之后的format的时候,会显示这个dfs.name.dir的。 -->
(4)mapred-site.xml
<property>
<name>mapred.job.tracker</name>
<value>localhost:9998</value>
<description></description>
</property>
<! -- 配置job tracker -->