Дашборды «Кластер» и «Запросы»: системные таблицы через clusterAllReplicas #116
Notifications
Due Date
No due date set.
Blocks
Depends on
#117 Хвост этапа 9: runbook keeper и system.text_log
ddmitry/clickstream-data-platform
#114 Пол мониторинга: источник ClickHouse в Grafana и экспортёр Kafka
ddmitry/clickstream-data-platform
Reference: ddmitry/clickstream-data-platform#116
Reference in new issue
Block a user
Part of #11. Блокируется #114.
Цель
Два оставшихся дашборда ADR 0002: «Кластер» — что с машиной, «Запросы» — что
выполнялось и сколько съело. Учебный результат у обоих один по форме: симптом
инфраструктуры оказывается следствием решения человека.
На приёмке они работают инструментом: этап 5 — партиционная переобработка, то
самое место, где рождаются лишние части; этап 8 — Superset с вопросом «почему
мой дашборд тормозит».
Что войдёт
Два дашборда в
infra/grafana/provisioning/dashboards/. Состав обоих и доводпро
clusterAllReplicas— ADR 0002, раздел «Решение».Сверх ADR:
на вставке и оседание после слияний: форма кривой и есть урок;
clusterAllReplicasназывается в набореdocs/architecture/monitoring/, не в JSON панели.Границы
system.text_logне включать: он в хвосте этапа, #117.дашборд, отвечающий на три вопроса сразу, не отвечает ни на один.
Кому что
Заголовки панелей и SQL — Opus. Кодексу — сборка JSON, прогоны под нагрузкой,
снятие приёмки.
Сначала прочитать
docs/adr/0002-monitoring-scope.md— состав обоих дашбордов и довод проclusterAllReplicas;docs/adr/0004-resource-limits.md— «коробка» и отказ ноды по памяти приздоровом виде снаружи;
docs/architecture/storage.md— раскладка таблиц и реплик.Проверка
make config-test; на стендеmake smokeиmake check-clickhouseзелёные.без
clusterAllReplicasне остаётся ни одной.make generate-batch) на «Кластере» виден подъёмпроцессора и обращений к дискам и оседание после слияний.
и числом прочитанных строк.
Слито в PR #123.
Три пункта приёмки закрыты как написаны, четвёртый — нет, и он оставлен без галочки намеренно.
«Панель по системной таблице без
clusterAllReplicasне остаётся ни одной» — одна осталась: очередь распределённых DDL. Она лежит не у ноды, а в keeper, обе ноды читают из него одну и ту же очередь целиком, и запрос с обёрткой вернул каждую запись дважды (124 записи с каждой ноды на день замера). Обёртка там добавила бы не правды, а дублей.Довод и замер записаны в ADR 0002 и в cluster.md. Там же второй, мягкий случай: панель слияний обёртку использует, но складывает ноды в один ряд намеренно — шарды сливают симметрично.