我使用的系统是centos6.5,jdk使用的是1.7.0_75,hadoop使用的是1.2.1版本,Mahout使用的是0.9版本,下面开始介绍安装配置过程。
一、安装JDK
1.下载jdk软件包。软件连接地址:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html?ssSourceSiteId=ocomen。下载好jdk-7u75-linux-i586.gz,使用tar命令解压到系统/usr/java路径下。
2.系统配置。使用命令vi /etc/profile,更改配置文件,添加如下命令:
export JAVA_HOME=/usr/java/jdk1.7.0_75
export PATH=$PATH:/usr/java/jdk1.7.0_75/bin
export CLASSPATH=.:/usr/java/jdk1.7.0_75/lib/dt.jar:/usr/java/jdk1.7.0_75/lib/tools.jar
export JAVA_HOME PATH CLASSPATH
退出编辑界面,保存文件。
3.运行命令source /etc/profile。
二、安装hadoop1.2.1
此处为单机安装测试,没有实际建立Hadoop集群,仅仅是搭建起Hadoop环境,如果想建立集群的话,可以对相关配置文件进行配置。
1.下载安装包:http://hadoop.apache.org/releases.html#Download,下载hadoop-1.2.1.tar.gz,解压到/usr/hadoop目录。
2.配置SSH无密码登录。使用命令:ssh-keygen -t rsa,进入.ssh目录(cd ~/.ssh),建立authorized_keys空白文件,使用命令cp id_rsa.pub authorized_keys,创建文件后在终端输入ssh localhost,如果不需要密码提示即可登录完成,即可进入下一步。如果出现问题,请自行网上查找相应解决办法。
3.设置Hadoop相关配置文件,文件路径为/usr/hadoop/conf(如果你和我的安装路径不一致,请按照本机实际情况自行寻找),主要有core-site.xml,hadoop-env.xml,hdfs-site.xml,mapred-site.xml。下面给出几个文件的可行配置方法:
a.core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<description>fs name url</description>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
b.hadoop-env.xml
添加jdk路径:
# The java implementation to use. Required.
export JAVA_HOME=/usr/java/jdk1.7.0_75
c.hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/hadoop/hadoopfs/data</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/usr/hadoop/hadoopfs/name</value>
</property>
</configuration>
d.mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
4.配置/etc/profile文件
添加如下命令:
export HADOOP_HOME=/usr/hadoop
export HADOOP_HOME_WARN_SUPPRESS=1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
然后source /etc/profile即可。
5.格式化Hadoop文件系统
进入/usr/hadoop/bin,使用命令hadoop namenode -format。
6.启动并验证
进入/usr/hadoop/bin,使用命令start-all.sh进行启动,使用jps命令进行验证,一般会出现namenode,datanode,secondarynamenode,jobtracker,tasktracker,jps几个进程,这样就可以继续进行下一步了。
7.使用浏览器登录验证
打开浏览器,输入"IP:50030"登录验证,可以看到搭建的环境信息,其中IP为你服务器的IP地址。
8.运行WordCount程序
资料大家去网上搜吧,也可以直接看《Mahout算法解析与案例实战》的29页,不再赘述。
三、安装Mahout0.9
1.下载软件包:http://mahout.apache.org/general/downloads.html,这里使用mahout-distribution-0.7-src.tar.gz。
2.解压文件,修改文件名为mahout(为了方便),移到/usr/即可。
3.打开/etc/profile添加配置命令:
export MAHOUT_HOME=/usr/mahout
export MAHOUT_CONF_DIR=$MAHOUT_HOME/conf
export PATH=$MAHOUT_HOME/conf:$MAHOUT_HOME/bin:$PATH
使用命令source /etc/profile。
4.验证安装成功与否。
进入/usr/mahout/bin,运行mahout命令,出现提供的众多算法可以认为安装成功。
5.测试与hadoop的协同共组
a.下载数据集:http://archive.ics.uci.edu/ml/databases/synthetic_control/synthetic_control.data
b.打开hadoop,使用命令hadoop fs -mkdir ./testdata,然后hadoop fs -put synthetic_control.data ./testdata进行数据上传,最后使用mahout org.apache.mahout.clustering.syntheticcontrol.kmeans.Job命令进行数据处理,等待结果,最后hadoop fs -ls ./output查看结果即可。
整篇博文看下来比较累,没有图片实际观察运行情况,仅仅是提供了一个通用的方法吧,有时间再来修饰这篇文章了,各位看官受累了。