Включение/выключение ClickHouse
Начиная с версии 10.4, в сервисе онлайн-консультирования Webim появилась возможность пользоваться улучшенным модулем Статистики, работающим на СУБД ClickHouse. Ниже приведены инструкции по включению и отключению ClickHouse и модуля Статистики v2.
N.B.
То, как именно обновляются данные в Статистике v2, зависит от способа наполнения ClickHouse. Подробнее: Режимы подсчёта и обновления статистики.
Важно
Параметры analytics_v2_*, описанные ниже, актуальны начиная с версии 10.8. В версиях 10.4–10.7 использовались прежние имена (clickhouse_stats, stats_v2, dashboard_v2 и др.) — см. описание параметров account config.
Ручная установка и настройка ClickHouse
-
Установите ClickHouse 23.12 на отдельном сервере. Эта версия указана в требованиях к программному обеспечению. Аппаратные рекомендации — в документации ClickHouse.
Важно
Не используйте быстрый старт ClickHouse (
curl https://clickhouse.com/ | sh) и не ставьте пакетыclickhouse-server/clickhouse-clientбез номера версии: так устанавливается текущий релиз, а не версия из требований к программному обеспечению. Webim тестирует и поддерживает указанную там линейку.Команды ниже — для Debian и Ubuntu (apt). Для RPM-дистрибутивов (RHEL, CentOS и аналоги) используйте официальную инструкцию ClickHouse и фиксируйте версию пакетов из требований, не ставьте их без номера версии.
На Debian и Ubuntu добавьте официальный репозиторий по инструкции ClickHouse и зафиксируйте версию пакетов:
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg curl -fsSL 'https://packages.clickhouse.com/rpm/lts/repodata/repomd.xml.key' | sudo gpg --dearmor -o /usr/share/keyrings/clickhouse-keyring.gpg ARCH=$(dpkg --print-architecture) echo "deb [signed-by=/usr/share/keyrings/clickhouse-keyring.gpg arch=${ARCH}] https://packages.clickhouse.com/deb stable main" | sudo tee /etc/apt/sources.list.d/clickhouse.list sudo apt-get update apt-cache madison clickhouse-server | grep 23.12 # подставьте вместо 23.12.X.Y номер сборки линейки 23.12 из вывода команды выше, один и тот же для всех трёх пакетов sudo apt-get install clickhouse-server=23.12.X.Y clickhouse-client=23.12.X.Y clickhouse-common-static=23.12.X.Y sudo apt-mark hold clickhouse-server clickhouse-client clickhouse-common-static sudo systemctl start clickhouse-serverКоманда
apt-mark holdне даётaptавтоматически обновить ClickHouse до любой другой версии, в том числе более новой сборки той же линейки. Если нужной сборки нет в индексе репозитория, скачайте три пакета в одной и той же версии из архива и установите локальные.debчерезapt-get install.Если ClickHouse запускается в Docker, указывайте тег сборки требуемой линейки, например
clickhouse/clickhouse-server:23.12.X.Y, а неlatest.23.12.X.Yзамените на номер сборки из выводаapt-cache madison. -
Установите пароль для пользователя
default. Для этого откройте файл/etc/clickhouse-server/users.xml, найдите в нём элемент<password>, находящийся по умолчанию в подразделе<default>раздела<users>. Между тегами элемента<password>введите новый пароль:<users> <default> <password>your-password</password> -
Разрешите пользователю
defaultсоздавать других пользователей и выдавать им права. Для этого вам необходимо в открытом ранее файлеusers.xmlнайти элемент<access_management>и раскомментировать его, приведя к следующему виду:<access_management>1</access_management> -
В файле конфигурации
/etc/webim/db.json.d/db.jsonдопишите в объект"dbs"параметры БД ClickHouse:"stats_root": "default": { "type": "clickhouse", "host": "<DB IP address>", "port": 9000, "user": "default", "password": "<your-password>" } }, "stats": {}Менеджмент БД со стороны сервера будет происходить через пользователя
default. Позднее в ClickHouse будет создана учётная запись для Вашего аккаунта в Webim. -
Перейдите в account config. Включите параметр
analytics_v2_chat_backend_population, после чего перезагрузите Chat Backend. -
При необходимости включите параметр
analytics_v2_chat_backend_realtime_populationи задайтеanalytics_v2_chat_backend_realtime_population_period(в секундах), чтобы настроить период обновления realtime-данных. -
После перезагрузки активируйте нужные вам опции account config для отображения в меню разделов ClickHouse-статистики:
-
analytics_v2_stats: модуль Статистики на ClickHouse -
analytics_v2_dashboard: Панель управления на ClickHouse -
analytics_v2_builder: Конструктор отчётов на ClickHouse
Ссылки на новую версию статистики заменят аналогичные ссылки на предыдущую версию.
-
Отключение ClickHouse
Для отключения ClickHouse достаточно проделать следующие шаги:
-
Удостоверьтесь, что опции account config, отвечающие за ClickHouse-статистику, выключены (
analytics_v2_stats,analytics_v2_dashboard,analytics_v2_builder,analytics_v2_chat_backend_populationиanalytics_v2_chat_backend_realtime_population).Параметр
analytics_v2_chat_backend_realtime_population_periodотдельно отключать не нужно: это числовая настройка периода, а не переключатель. -
В файле конфигурации
/etc/webim/db.json.d/db.jsonудалите объекты"stats_root"и"stats". -
Перезагрузите Chat Backend.
После этого вы можете отключить сервер ClickHouse:
sudo systemctl stop clickhouse-server