12. ZooKeeper配额和认证


ZooKeeper具有与其数据模型相关的可配置配额(quota)。 可以设置znode上的配额限制和存储的数据量。如果ZooKeeper命名空间中的一个子树超出与其关联的配额,ZooKeeper会在日志中打印警告消息。但是,如果超出指定的配额,操作并不会取消。

ZooKeeper配额存储在/zookeeper/quota路径的ZooKeeper树中。 可以从ZooKeeper客户端API和ZooKeeper Java shell中设置,列出和删除配额。 以下截图显示了使用对应setlistdel命令的结果:

在上面的示例中,创建了一个/quota_example的新建znode,并设置了两个子znode的配额。 然后,列出了分配的配额,以及如何删除分配的配额。

当我们在/quota_example下面创建第三个子节点时,ZooKeeper日志文件中会显示以下警告消息,通知我们超出了配额:

ZooKeeper还提供可配置的选项来控制服务的身份验证和授权。
zookeeper.DigestAuthenticationProvider.superDigest参数使ZooKeeper ensemble管理员能够以超级用户身份访问znode层次结构。 ZooKeeper服务不对通过身份验证的用户进行任何ACL检查。 此功能在默认情况下是禁用的。

要为超级用户生成Digest认证,可以使用参数super:<password>调用org.apache.zookeeper.server.auth.DigestAuthenticationProvider的Java系统属性。 一旦生成了Digest认证,需要在启动ZooKeeper服务器时提供super:<data>作为系统属性。

ZooKeeper客户端需要传递super:<password> Digest和认证数据方案来与ZooKeeper服务器进行认证。 在使用ZooKeeper shell时,可以使用addauth命令。

优质内容筛选与推荐>>
1、高级IO
2、C语言第五次作业
3、附加作业
4、新浪移植1nutz接口,三张表的关联
5、php的memcache配置大全


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号