FreeBSD下安装配置Hadoop集群(一)

Hadoop其实本身是Linux下开发的应用,不过得益于虚拟机技术,也可以运行在其他平台。例如FreeBSD

不过,Linux用的好好的,为什么用FreeBSD呢?

这个问题的回答其实比较复杂,基于几个方面考虑。

FreeBSD下安装配置Hadoop集群(一) 

FreeBSD下安装配置Hadoop集群(二) 

FreeBSD下安装配置Hadoop集群(三)

FreeBSD下安装配置Hadoop集群(四)

一、磁盘IO速度

其实根据我以前的评测,FreeBSD的UFS2写入速度并不如EXT4快,甚至慢很多,但是读取速度明显快于EXT4和EXT3。每读取1G的数据,基本要比EXT4快0.8-1.5秒。Hadoop的HDFS是构建在基本文件系统上的,所以,基本文件系统的读写速度决定了HDFS的读取速度,而HADOOP处理的都是TB级数据,所以,1G感觉不明显,1TB读取就大约快了800-1500秒,相当于快了15-30分钟。HDFS的设计初衷就是一次写入多次读取,所以读取速度越快越好。

二、网络IO速度

FreeBSD是TCP/IP协议的最早实现者,所以,在这个网络数据传输速度和稳定性上,FreeBSD还是要优于Linux的。

三、高度精简系统强壮,稳定和高安全性

FreeBSD的系统在默认安装情况下,是高度精简的,除了内核和常用命令,并没有多余的东西,非常干净和稳定。其稳定性也是久经考验,10年不关机的故事不是神话,据说目前Hotmail还有一部分FreeBSD的服务器。网络安全方面得天独厚,被发现的远程漏洞明显少于Linux。另外,由于UFS2默认采用实时写入的方式,基本不用考虑掉电的数据安全问题。

基于以上几方面考虑,似可认为,FreeBSD更适合大数据的挖掘工作。省时很重要,我们一生有多少分钟可以浪费在盯着屏幕等待map/reduce脚本的执行上呢?

不过,在FreeBSD上安装hadoop也存在一些缺憾,比如,默认的csh不支持执行hadoop脚本,需要自己编译安装bash。因为许可协议问题,FreeBSD对JDK的安装不是很友好,需要自己下载所有的安装包才行,并不能通过ports直接make install。

不过,为了节约生命,这些我都可以忍了。

那么,开始介绍FreeBSD安装Hadoop。

先进入/usr/ports/Java/jdk16目录,执行make install,这是一定会报错的。不过我们需要的就是报错信息,根据报错信息提示,我们下载几个安装文件,放到/usr/ports/distfiles下面,大概有5,6个文件。然后我们再返回/usr/ports/java/jdk16下执行make install,等待安装完成。

然后去hadoop.apache.org下载hadoop-0.20.205.0,尽管hadoop发布了0.22,0.23,和1.0。但是我不建议使用,因为目前hadoop的外围诸如Hive,HBase等,对这些新版本支持并不好,所以还是下一个稳定支持的版本比较好。

其实hadoop的安装很简单,就不需要安装,只要找个目录解压缩就可以了。

当然,为了正常使用hadoop,你还需要执行以下步骤

#cd /usr/ports/shells/bash
#make install
#cd /usr/ports/devel/apache-ant
#make install

###添加hadoop用户

#pw user add hadoop
#chsh hadoop

###将/bin/sh改为/usr/local/bin/bash,保存退出

#chown -R hadoop:hadoop /path/to/your/hadoop
#su hadoop
#export JAVA_HOME=/usr/local/jdk16_21
#export HADOOP_HOME=/path/to/your/hadoop

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/dcb1b3e224777fd99b0729ba4fbff799.html