随着大数据的越发流行,大大小小的互联网公司都开始参与一些大数据相关的业务,都想从中分一杯羹。Hadoop是大数据的典型代表,也可以说现在的领头大哥,很多互联网巨头都在使用hadoop,包括BAT等大公司。但是由于hadoop对于管理维护的人员要求比较高,企业需要对其投入大量的人力、财力。这里介绍个工具ambari,是apache开源社区的*子项目,由hortonworks公司开发维护的,并作为apache的一个子项目,hortonworks公司可以说是apache的新贵公司,实力相当雄厚。ambari主要功能是通过web端界面提供UI来实现hadoop及生态工具的自动化安装、配置、监控、报警功能于一体的工具。可以通过web界面点击鼠标来部署维护hadoop集群,可以大量减轻运维人员的劳动量。
其实关于ambari工具我也只是了解个皮毛,大概知道它的功能和简单系统结构。接触ambari也纯属偶然,公司最近需要做大数据方面的产品,想做一个类似ambari的工具,但是ambari工具的界面不是特别友好,架构也有点复杂,我们公司期望做一个可视化友好的,简单的,类似ambari的工具。所以最近开始研究这个ambari工具,大都是英文资料,研究起来也是很费力的。
前几天初次研究ambari系统的时候,也尝试安装ambari工具。安装方式主要2种:公共源安装和源码编译安装。初次使用源码安装,ambari-server大部分似乎是使用java编写的,编译工具是maven,之前没用过,尝试编译,中间遇到过很多次错误,编译安装过程中需要下载很多依赖的包,如果网络不好的话,安装过程中会中断,我记得试着安装了好几次,他妹的都被龟速的网络给卡住,实在没心情搞源码编译了,就放弃了。结果去采用yum方式来安装ambari,本想着这种方式肯定是万无一失,于是乎按照ambari官方文档进行了安装,配置ambari源,安装server,ambari-server setup设置server的环境和数据库等,设置完毕,开启server。在浏览器172.16.1.27:8080打开,顺利打开。按照向导开始部署hadoop测试集群,设定stack名称,填写主机列表,配置server的ssh私钥,开始安装ambari-agent(ambari-server自动会向各主机列表执行安装命令),第一步就报错,大概意思是yum安装ambari-agent失败,原因是找不到ambari-agent源。于是自己手动去搜索ambari-agent软件包,也没有搜素到,至于ambari-server等一些列的包,就是没有ambari-agent,当时这个问题困扰了我好长时间,也没有查出什么原因;前天又开始搞一下ambari,想大概看一下源码,就无意间看了下官方的一些文档,妹的,文档也藏得这么神秘,嵌套了好几层的目录。文档中只说明支持64系统,并没有说支持32bit的。后来又尝试了64bit的centos6.4系统,似乎可以了,以前的问题没有了,继续尝试安装hadoop集群,到最后安装hadoop的各个服务组件时候,需要向互联网源去下载hadoop的相关安装包,yum源是hortonworks官方的,速度可以说是很操蛋,需要下载的包还很多,很大。尝试过N次,最后都因为网络中断超时导致安装失败。最后又拿出了杀手锏,想自己搭建一个yum源服务器,让测试主机从内网的yum服务器去下载,这样应该可以了吧。于是乎去虚拟机上又搭建了个服务器,采用http方式的,步骤比较简单,搭建http服务器,简单配置,把下载到的rpm包放到相关目录,再执行createrepo命令,似乎是这个命令来生成repo的相关格式数据,即可从web浏览器上查看到相关安装包。于是就不再说了,成功安装,但是中间有点问题,可能是虚拟机本身内存太小,安装过程中有警告信息,没有理会,安装完毕后,有一个host经常会挂掉,应该是虚机内存问题,至少反映了ambari工具的功能还是比较强悍的,显示出来的dashboard也比较漂亮,要是能显示中文就更好了。
其中的一些技术细节先不记录了,下次有时间总结一下ambari的安装过程,包括建立yum本地源的过程。