Команды Zookeeper используются для выполнения операций в службе Zookeeper.
Сначала выполните команду, чтобы открыть новый сеанс и войти в терминал.
$ sh zkCli.sh
Ниже объясняется использование основных распространённых команд. Содержание разрешений ACL будет подробно рассмотрено в последующих главах.
команда ls
Команда ls используется для просмотра списка каталогов по определённому пути.
Формат:
ls path
- path: обозначает путь.
$ ls /example

команда ls2
Команда ls2 используется для просмотра списка каталогов по определённому пути. Она выводит более подробную информацию, чем команда ls.
Формат:
ls2 path
- path: обозначает путь.
$ ls2 /example

команда get
Команда get используется для получения данных узла и информации о состоянии.
Формат:
get path [watch]
- path: обозначает путь.
- [watch]: выполняет прослушивание событий на узле.
В следующем примере одновременно открываются два терминала.
Терминал 1:
$ get /example watch

Измените этот узел в терминале 2:
$ set /example 1

Терминал 1 автоматически отображает событие NodeDataChanged:

команда stat
Команда stat используется для просмотра информации о состоянии узла.
Формат:
stat path [watch]
- path: обозначает путь.
- [watch]: выполняет прослушивание событий на узле.
В следующем примере просматривается состояние узла/example:
$ stat /example

команда create
Команда create используется для создания узла и присваивания ему значения.
Формат:
create [-s] [-e] path data acl
- [-s] [-e]: -s и -e оба необязательны. -s обозначает последовательный узел, -e обозначает эфемерный узел. Обратите внимание, что -s и -e можно использовать одновременно, и у эфемерных узлов нельзя создавать дочерние узлы.
- path: указывает путь создаваемого узла, например/example。
- data: данные, которые нужно сохранить в этом узле.
- acl: связано с правами доступа. По умолчанию — world, что означает, что любой в мире может получить к нему доступ.
В следующем примере добавляется эфемерный последовательный узел:
$ create -s -e /example 0

Созданный узел является одновременно последовательным и эфемерным.
команда set
Команда set используется для изменения данных, хранящихся в узле.
Формат:
set path data [version]
- path: путь к узлу.
- data: данные для сохранения.
- [version]: необязательно, номер версии (может использоваться как оптимистическая блокировка).
В следующем примере открываются два терминала, или вы также можете работать в одном терминале:
$ get /example

Как видно на рисунке ниже, успешно установить можно только с правильным номером версии:
$ set /example 0 1 $ set /example 0 2 $ set /example 0 10 $ set /example 0 6

команда delete
Команда delete используется для удаления узла.
Формат:
delete path [version]
- path: путь к узлу.
- [version]: необязательно, номер версии (как в команде set).
В следующем примере удаляются дочерние узлы узла/example:
$ ls /example $ delete /example/child $ get /example/child
