如何初始化 Apache-Zookeeper 的白名单?

Joh*_*hnB 4 apache-kafka apache-zookeeper

我是 Apache Kafka 的新手。我已将其安装到 Ubuntu Linux VM (18.04) 中。

我已经使用默认配置从 Kafka 目录启动了 Zookeeper。 Apache Kafka 启动

Zookeeper 看起来启动成功了。从另一个终端窗口我试图测试。我正在使用 Telnet 连接到它并尝试发送“stat”命令。

当我这样做时,我收到以下错误消息: Zookeeper 错误信息

我是 Apache/kafka 的新手,Linux 经验有限。我用谷歌搜索,但我不太清楚如何更新白名单。

我从 Zookeeper 文档中找到了以下片段:

4lw.commands.whitelist(Java 系统属性:zookeeper.4lw.commands.whitelist)

3.4.10 中的新功能:此属性包含逗号分隔的四字母单词命令列表。引入它是为了对 ZooKeeper 可以执行的命令集提供细粒度的控制,因此用户可以在必要时关闭某些命令。默认情况下,如果未指定该属性,则它包含除“wchp”和“wchc”之外的所有支持的四字母单词命令。如果指定了该属性,则仅启用白名单中列出的命令。

以下是启用 stat、ruok、conf 和 isro 命令同时禁用其余四字母词命令的配置示例: 4lw.commands.whitelist=stat, ruok, conf, isro 用户还可以使用星号选项,这样他们就不会不必将每个命令一一包含在列表中。例如,这将启用所有四个字母的单词命令:4lw.commands.whitelist=*

有人可以解释白名单的用法以及如何正确初始化它吗?

谢谢,约翰B

Joh*_*hnB 10

这对我有用;在命令行中设置环境变量。

KAFKA_OPTS="-Dzookeeper.4lw.commands.whitelist=*" bin/zookeeper-server-start.sh config/zookeeper.properties
Run Code Online (Sandbox Code Playgroud)


小智 8

对于 mac,我添加了

4lw.commands.whitelist=stat、ruok、conf、isro

在/usr/local/etc/zookeeper/zoo.cfg


zmi*_*ike 5

对我来说,config/zookeeper.properties将以下行之一(或变体)添加到文件(在安装文件夹中)有效。

  • 4lw.commands.whitelist=stat, ruok, conf, isro
  • 4lw.commands.whitelist=*

  • 谢谢。这个对我有用!但是......在最新版本(3.6.3)中,还有另一个属性文件“conf/zoo.cfg”的路径 (2认同)