我有一个 python 脚本来监控 Zookeeper 服务器的健康检查 - 基本上检查 Zookeeper 是否启动并运行。每分钟运行一次。
所以我刚刚写了一个简单的python方法,它将创建一个新的zookeeper kazoo客户端,然后启动和停止客户端。
def __zookeeper_check(self):
self.__logger.debug('inside the Healthcheck.__zookeeperCheck')
try:
zk = KazooClient(os.environ['ZOO_SERVERS'])
zk.start()
self.__logger.debug('Connected to Zookeeper')
output = 0
zk.stop()
except Exception:
self.__logger.error(traceback.format_exc())
output = 1
return output
这是正确的方法吗?显然,它在我的本地环境中运行良好,但考虑到当它进入实时生产环境时,考虑到其他 Zookeeper 客户端也将主动连接到同一个 Zookeeper 服务器,它不应该导致一些性能问题或破坏其他任何东西。