zkbrowserlite for zookeeper在CentOS的搭建

因为工作中需要用到Zookeeper的图形界面,在网上搜索下,有如下几个:
1.https://github.com/killme2008/node-zk-browser,是基于Node.js实现的,需要安装Node.js和express.js,所以,没有采用;
2.https://github.com/abbaspour/zkbrowser-lite是用webpy实现的简单图形界面,应该够用了,所以就用这个

系统环境:
CentOS5.5、Zookeeper3.3.3

根据ReadMe文件可以看出,zkbrowser-lite是基于zkpython和web.py的

步骤如下:

1.从https://zookeeper.apache.org/下载zookeeper-3.3.3.tar.gz

2.解压缩zookeeper-3.3.3.tar.gz到/usr/zookeeper-3.3.3

3.CentOS的python默认版本是2.5,需要升级到2.6以上,在http://www.python.org下载python2.7.1安装好

4.从http://webpy.org/下载WEBPY,支持web的python扩展包

5.安装apache-ant,可以采用yum的方式安装好

6.进入目录/usr/zookeeper-3.3.3/src/c,编译,./configure&&make&make install

7.切换到目录/usr/zookeeper-3.3.3/src/contrib/zkpython/,运行ant install命令

8.从https://github.com/abbaspour/zkbrowser-lite下载ZIP包,解压缩到/usr/zkbrowser-lite

9.在/etc/profile添加环境变量LD_LIBRARY_PATH=/usr/zookeeper-3.3.3/src/c/.libs,用命令source /etc/profile使它生效

10.启动Zookeeper Server,首先创建号zookeeper的data目录和dataLog目录,然后修改配置文件zoo.cfg,运行./zkServer.sh start启动

11.进入/usr/zkbrowser-lite目录,修改code.py.注意:如果报错socket.error,需要把code.py最后几行改成这样:

Python代码  收藏代码
  1. #!/usr/bin/env python  
  2. import web  
  3. from zk import ZooKepperConnection  
  4.   
  5. urls = ('/(.*)', 'node')  
  6. render = web.template.render('templates/')  
  7.   
  8. zkc = ZooKepperConnection("127.0.0.1:2181")  
  9.   
  10. class node:  
  11.     def GET(self, url = ""):  
  12.         name = url if not url.endswith('/') else url[:-1]  
  13.         home = web.ctx.homedomain + ('/' + name if name != "" else '')  
  14.         raw_data = zkc.raw_data(name)  
  15.         data = raw_data[0]  
  16.         info = raw_data[1]  
  17.         children = zkc.children(name)  
  18.         return render.page(home, name, data, info, children)  
  19. if __name__ == '__main__':  
  20.   app = web.application(urls, globals())  
  21.   app.internalerror = web.debugerror  
  22.   app.run()  


运行python code.py 8080命令就可以启动了,然后在浏览器输入http://127.0.0.1:8080访问
原文地址:https://www.cnblogs.com/shihao/p/2324616.html