如何保持 kazoo 与 zookeeper 的连接?

How to keep kazoo connected to zookeeper?

我正在尝试使用 Zookeeper 同步管理分布式集群。

现在我正在使用 ec2 spot 实例,我希望每个 ec2 spot 实例都连接并在 zookeeper 上创建 znode,其中包含一些元数据,例如实例 ID、私有主机名、实例类型。

到目前为止,我设法让每个 spot 实例在 zookeeper 上使用各自的元数据创建 znode。但我想让它成为这样一种方式,当实例(现场实例)被带走时,那个 znode 就会自己消失。

或者有更好的方法吗?

使用 zookeeper 的临时节点。对于 kazzoo,只需使用带有临时参数集的创建:

client.create(path, ephemeral=True)

但请记住,您不能在临时节点下创建节点。