继phpHiveAdmin之后,推出第二个开源项目:EasyHadoop。

和phpHiveAdmin一样,EasyHadoop也是个为懒惰而生的项目。简而言之,就是在一个网页上对Hadoop集群进行安装,重启,修改配置文件,查看log等功能。后续还会加入hive,hbase,pig之类的。

当然,Cloudera Manager是个不错的选择,不过一旦集群数量超过50,当然仍然可以使用hadoop,但是那个好用的界面会提示你购买许可协议。所以,基于这一点,为了打破商业公司的垄断,为开源做一点微薄的贡献。更是为自己部署集群的时候可以更快捷方便,业余时间在家花了3周左右时间开发了这么一个东西。软件本身完全开源,遵循GPLv3协议。

简单介绍一下工作原理,软件分为两部分:Agent和Central。
其中,Agent是用Python写的一个多线程的Socket Daemon,需要你自己上传到每台Hadoop节点服务器上,并启动它。可以安全的绑定在内网地址上,只要给一个-a参数就可以。

之后,就可以部署Central了,Central是用php+mysql写的一个界面,感谢  hivefans 推荐我使用twitter开源的html框架。让我这种完全不会前端的人,也能做出相对漂亮的界面。你只需要架设一个LNMP的环境,就可以开始使用了。Central发送命令通过socket跟各节点之间通信。这封装在从socket扩展出的各个类中,可以自行扩展。

主要特点是针对node进行配置管理和推送,快速安装部署hadoop,支持LZO。对Hadoop节点中的各种角色namenode,tasktracker之类的在Central进行启动停止重启等,还有查看节点上的日志文件。查看节点进程存活状态等。

项目也是托管在  github 上面。



另外,由于bootstrap实在太好用了,顺便把phpHiveAdmin的界面也给换了。

可以到 http://online.phphiveadmin.net 查看目前的界面和功能测试。