Описание
Эта таблица отсутствует, если данный узел не настроен на запуск ClickHouse Keeper в том же процессе. Она содержит по одной строке для каждого участника кластера Raft, объединяя статическую топологию кластера (из конфигурации Raft) с позицией собственного лога локального узла.
Каждый узел заполняет ровно одно значение last_log_index — в строке, соответствующей его собственному server_id. Позиции логов peer здесь не отображаются, поскольку они отслеживаются только на лидере, и это представление не симметрично для всего кластера.
Столбцы
server_id(Int32) — Идентификатор Raft-сервера этого участника кластера.host(String) — Хост, извлечённый из конечной точки (префикс перед последним двоеточием).endpoint(String) — Исходная конечная точка Raft в настроенном виде (host:port).is_observer(Bool) —true, если этот участник является наблюдателем без права голоса, настроенным через<can_become_leader>false</can_become_leader>.priority(Int32) — Приоритет Raft этого участника; при выборе лидера предпочтение отдаётся более высоким значениям.is_leader(Bool) —true, если этот участник является текущим лидером Raft.is_self(Bool) —true, если эта строка описывает локальный узел Keeper.last_log_index(Nullable(UInt64)) — Наибольший индекс журнала в локальном хранилище журнала Raft на этом узле. Заполняется только для строки, соответствующей текущему узлу (is_self = true);NULLдля остальных строк.
Пример:
SELECT * FROM system.keeper_cluster ORDER BY server_id;┌─server_id─┬─host──┬─endpoint───┬─is_observer─┬─priority─┬─is_leader─┬─is_self─┬─last_log_index─┐
│ 1 │ node1 │ node1:9234 │ false │ 3 │ true │ true │ 42 │
│ 2 │ node2 │ node2:9234 │ false │ 2 │ false │ false │ ᴺᵁᴸᴸ │
│ 3 │ node3 │ node3:9234 │ true │ 1 │ false │ false │ ᴺᵁᴸᴸ │
└───────────┴───────┴────────────┴─────────────┴──────────┴───────────┴─────────┴────────────────┘