zookeeper zknodes遍历更新acl的

zookeeper zknodes traversal to update acl's

目前,我有带 ACL 属性 world:anyone:crdwa 的 zknode。有了新要求,我需要更新 ACL 以使用身份验证方案。为此,我也需要使用身份验证方案 ACL 更新所有当前的 zknode。我打算编写一个 python 脚本并这样做进行 DFS 遍历。我想伸出手来学习,是否有开源库或更好的方法来实现同样的目标?

用 Python(或任何选择的语言)编写遍历脚本是一个可行的解决方案。

在撰写本文时,Apache ZooKeeper 的当前版本不提供任何 built-in 递归遍历 znode 层次结构的功能。 Apache JIRA Issue ZOOKEEPER-1962 跟踪能够执行递归列表的 zkCli ls -R 命令的开发。这计划在 Apache ZooKeeper 3.5.3 中发布。如果您想要 Java 中的解决方案,您可以调整该补丁中的代码,甚至应用该补丁并构建您自己的自定义 ZooKeeper 构建,以便您可以使用新的 zkCli 功能。

即使您决定编写自己的实现,我也建议您阅读有关该 JIRA 和补丁的讨论。在我们提交补丁之前,讨论了一些值得考虑的边缘情况。