基于python的apache zookeeper服务注册守护进程
zk_watcher的Python项目详细描述
zk_watcher是一个python脚本,用于处理与apache的注册 动物园管理员服务。
zk_watcher的目标是监视主机上的特定服务 并将该计算机注册为给定路径上该服务的提供者 动物园管理员服务。
一个简单的例子是通过运行服务来让zk_watcher监视apache httpd
Apache2状态以固定间隔,并在给定时间向ZooKeeper注册
路径(例如/services/production/webserver)。只要命令返回
一个安全的退出代码( 如果服务检查失败,主机将立即被取消-
从那条路注册的。 要安装,请运行 或 要进行配置,请编辑'/etc/zk/config.cfg'文件。文件由部分组成
每个点都指向要监视和注册的特定服务
动物园管理员。提供了一个示例文件,但可以如下所示 如果要创建digset身份验证令牌并将其用于
与zookeeper的客户端会话,可以将设置添加到配置文件中
像这样 如果您这样做,请查看nd_service_注册表文档以了解如何
使用auth令牌,默认情况下设置哪些权限。 有关配置和运行时选项,请参阅“zk_watcher.rst”文件。 现在您必须将此软件包安装为根目录,或者必须创建
提前/etc/zk目录并将其所有权更改为您的安装
用户名。setup.py为
配置文件,如果无法在该路径创建文件,则将失败。这个遗嘱
在下一个版本中修复。 代码贡献可以通过nextdoor gerrit code review系统完成。
为了做出贡献,您需要遵循以下说明: 将以下行放入~/.ssh/config:: 然后确认您可以连接到gerrit:: 安装和配置git更改:: 复制回购协议并设置挂钩: 进行更改并提交:/services/production/webservers/web1.mydomain.com:80
安装
python setup.py install
pip install zk_watcher
服务配置
[ssh]
cmd: /etc/init.d/sshd status
refresh: 60
service_port: 22
service_hostname: 123.234.123.123
zookeeper_path: /services/ssh
zookeeper_data: { "foo": "bar", "bah": "humbug" }
[apache]
cmd: /etc/init.d/apache status
refresh: 60
service_port: 22
zookeeper_path: /services/web
zookeeper_data: foo=bar, bah=humbug
身份验证
[auth]
user: username
password: 123456
运行它
注意事项
参与此代码
Host review.opensource.nextdoor.com
Port 29418
User <YOUR USERNAME>
$ ssh review.opensource.nextdoor.com
**** Welcome to Gerrit Code Review ****
Hi Matt Wise, you have successfully connected over SSH.
Unfortunately, interactive shells are disabled.
To clone a hosted Git repository, use:
git clone ssh://<YOUR USERNAME>@review.opensource.nextdoor.com:29418/REPOSITORY_NAME.git
Connection to review.nextdoortest.com closed.
$ sudo easy_install pip
$ sudo pip install git-change
$ git clone review.opensource.nextdoor.com:zkwatcher
$ cd zkwatcher
$ etc/configure-repository.sh
$ touch MyFile
$ git add MyFile
$ git change create
推荐PyPI第三方库