在搭建这个环境的过程中,走了许多的弯路,也纠结了好几天,之前是在Windows操作系统到VMware虚拟机上的Ubuntu之间的文件传递,在网上查了很多资料是通过shared folder可以实现虚拟机和物理主机之间共享文件,但是试了很多次,同时也从新装了许多次Ubuntu操作系统,但是最终还是没有通过shared folder的方法把文件传过来。最后通过同学了解到只要安装了VMwareTools就可以直接把物理主机上的文件拷贝到虚拟机上。当时感觉自己好几天折腾的东西,就这么简单的解决了,但是把java的安装文件从物理主机拷贝到虚拟机上时,并不是按照二进制的方式进行传输的,所以在Ubuntu的操作系统上安装时,会出现文件出错的错误。于是又在虚拟机上下载了一个java安装文件。进行的安装,设置好环境变量。之后还有安装ssh。用户机器之前传输数据。
之后安装Hadoop,在hadoop官网上下载最新的hadoop安装文件,hadoop-0.20.203.0rc1.tar.gz。之后建立了一个文件夹
$ mkdir hadoop
进行解压:$tar zxvf hadoop-0.20.203.0rc1.tar.gz
$ls
之后设置环境变量。
$gedit conf/hadoop-env.sh
添加java的环境变量:
export JAVA_HOME=/home/moguichi/java/jdk1.6.0_25,这是我的jdk的安装路径。
之前以为设置好hadoop运行的java环境就可以了,但是在运行wordcount例子的时候,提示错误。经过网上查询才知道,是自己没有设置hadoop的hdfs的节点。之后需要设置core-site.xml如下
$gedit conf/core-site.xml
在中间加入:
fs.default.name
hdfs://localhost:9000
在设置hdfs-site.xml
同样在中间加入:
dfs.replication
1
之后设置mapred-site.xml同样在中间加入
mapred.job.tracker
localhost:9001
最后运行wordcount实例:
格式化HDFS
$bin/hadoop namenode -format
免密码SSH设置
现在确认能否不输入口令,用SSH登录localhost:
$ ssh localhost