Hama单机模式下的安装

作者:王连平

如有转载,请注明文章出处:http://blog.csdn.net/wlp001007/article/details/44096061


Hama是Apache公司对Google公司的Pregel模型的开源实现,实际上则是对经典的BSP模型的实现。Hama将BSP模型同Hadoop的HDFS结合,并且很好的使用了zookeeper来做分布式工作。它目前有三种执行引擎,即Hadoop的MapReduce引擎,BSP引擎和微软的Dryad引擎。Hadoop的Mapreduce引擎用来矩阵计算,BSP引擎和Dryad引擎主要用来图形计算。因此,在利用hama进行编程时,我们会实现不同的计算框架,例如实现bsp()函数(bsp模型),或者实现compute()的函数(类似于Pregel)等。总之,hama是一个集多种分布式处理模型优点为一体的计算框架,具有很多的优点。下面是我记录的在单机分布下进行的Hama安装过程。

 一、 软件环境

     操作系统:Ubuntu 10.04 LTS-Lucid Lynx

     java(jdk)版本:jdk1.8.0_40

     hadoop版本:hadoop-1.0.3

     hama版本:hama-0.6.4

  二、安装步骤

   1.安装好合适版本的jdk和hadoop,并且进行测试,保证他们能用。

   2. 下载hama安装文件,从http://hama.apache.org/downloads.html处下载合适的版本,我当时下的是0.6.4版本的。主要这里有如下几个文件

        

其中带src的为源码文件,可以供我们学习,同时也可以根据自己的需求修改源码,然后再编译;不带的则为编译好的hama,建议都下载下来,不过本文安装的时候只是用后者。

   3. 在用户主目录下创建合适的安装目录文件,我这里是在~下创建了hama文件夹作为安装目录,即~/hama为安装目录。

   4. 将下载好的hama-0.6.4.tar.gz拷贝到~/hama中去,并用tar zvxf hama-0.6.4.tar.gz进行解压。

   5. 进入hama-0.6.4中的conf文件夹,修改hama-env.sh文件,在其中加入java的home路径,即加入:   

                                                                          

  6. 修改 hama-site.xml文件,这时hama配置的核心文件,具体内容如下:

<configuration>
  <property>
    <name>bsp.master.address</name>
    <value>192.168.91.128:40000</value>
    <description>The address of the bsp master server. Either the
    literal string "local" or a host:port for distributed mode
    </description>
  </property>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://192.168.91.128:9000/</value>
    <description>
      The name of the default file system. Either the literal string
      "local" or a host:port for HDFS.
    </description>
  </property>
 <property>
 <name>hama.zookeeper.quorum</name>
<value>192.168.91.128</value>
<description>Comma separated list of servers in the ZooKeeper Quorum.
    For example, "host1.mydomain.com,host2.mydomain.com,host3.mydomain.com".
    By default this is set to localhost for local and pseudo-distributed modes
    of operation. For a fully-distributed setup, this should be set to a full
    list of ZooKeeper quorum servers. If HAMA_MANAGES_ZK is set in hama-env.sh
    this is the list of servers which we will start/stop zookeeper on.
    </description>
</property>
<property>
    <name>hama.zookeeper.property.clientPort</name>
    <value>2181</value>
  </property>
</configuration>

      这里简单的解释下,bsp.master.address即bsp中的BSPMaster的地址和端口。这里因为是单机模式,所以ip地址为本机地址。fs.default.name这个值要特别注意,是hadoop中nameNode的地址和端口,因为hama要用到hadoop的hdfs分布式文件系统。剩下的俩个是zookeeper的相关配置,因为是单机模式下配置,这里简单的配置为本机的ip地址,端口一般是固定的。

7.另外,在conf文件夹下还有一个groomservers文件,这个在分布式环境下配置groomserver的地址,在单机模式下就不用配置了,里面默认值为localhost。同时,你也可以在~/.bashrc中添加hama的环境变量,这样每次启动就不同转到相应的目录下去了。

8. 启动hadoop,并验证是否启动成功。命令:HADOOP_HOME/bin/start-all.sh,如果启动成功,如下:


  启动hama,命令:HAMA_HOME/bin/start-bspd.sh,结果如下:


出现上述结果,则表明hama已经成功启动。

9. 测试样例程序,这里我测试了最贱单PI程序,第一次我输入错误了,却带来了惊喜,如下:

 

由于pi该小写,写成大写,发现它提示了example中所有实例代码的名字。之后运行如下:


上图可以看出运行成功!

至此,在单机模式下的hama配置已经完成。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值