听说Hadoop很久了,今天开始尝试自己搭建一个集群来玩玩,同时学习下Linux各种操作。
主要参考资料当然是官方文档了:
Hadoop 集群搭建:http://hadoop.apache.org/common/docs/r0.19.2/cn/cluster_setup.html
Hadoop 快速入门:http://hadoop.apache.org/common/docs/r0.19.2/cn/quickstart.html
采用的操作系统是 Ubuntu 11.04.03 64-bit Server。
通过VMware 来创建虚拟网络,这也是现实问题,没有那么多机器啊
预计的设计是这样,4台虚拟机:NameServer, JobTracker, DataNode01, DataNode02。
主机为Win7。
首先安装系统,这个没有什么好说的,VMware有Easy Install,中间偶尔干涉一下,就完事了。
然后安装必须的软件,第一个就是JAVA,Hadoop推荐使用Sun公司的Java, 但是用apt-get install java, 只有openjdk之类的。于是上网搜了半天,找到一篇文章(http://blog.csdn.net/ansomray/article/details/5825096),根据其说明,添加apt source,再重新安装,命令如下:
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
sudo apt-get update
sudo apt-get install sun-java6-jdk
然后设置JAVA_HOME:
sudo vi /etc/environment
在其中添加
JAVA_HOME=/usr/lib/jvm/java-6-sun
CLASSPATH=.:/usr/lib/jvm/java-6-sun/lib
接着再安装ssh,这个没有什么好说的:
sudo apt-get install ssh
sudo apt-get install rsync
再来就是获取Hadoop的发行版,这个可以从 这里获取稳定发行版。
在Win7中下载下来后,问题就来了,怎么从Ubuntu Server中访问Win7的东西,这玩意儿只有命令行啊。继续搜索,发现是通过mount 的方式来处理: 先在mnt下建立一个目录,然后把Win7中共享的文件mount 到那个目录上,这样就可以访问了。命令如下:
sudo mkdir /mnt/HostShare
sudo mount -t cifs -o username=myname,password=11111 //192.168.0.100/share /mnt/HostShare
这里本来是查到的用smbfs,结果Ubuntu说这个好像将从2.6.27内核中删除,不推荐使用,于是采用了cifs。同时好像必须要同时提供username和password,不然就会说writen-protected,mount不上去。
最后当然是建立Hadoop目录,解压弄下来的文件,我下载的是.tar.gz文件,所以命令如下:
sudo tar zxvf hadoop.tar.gz
sudo mv hadoop-hadoop-0.20.203 /hadoop
第二个命令是把解压后的文件夹移动到根目录并重命名为hadoop,这个是为了管理方便。
这样,基本的软件准备就搞定了,下面就是拷贝装好的第一台虚拟机,再复制三台出来,分别按照预定各自命名,然后就是组建网络了。
时间太晚了,明天再写吧。