Настройка мониторинга базы данных Сlickhouse через clickhouse_exporter
Предполагается что Prometheus уже установлен и настроен.
- На сервер с ClickHouse скачать clickhouse_exporter
- Переместить clickhouse_exporter в /usr/bin/
Установить владельца/группу для clickhouse_exporter'а:
sudo chown root:root /usr/bin/clickhouse_exporter
Проверить, что clickhouse_exporter исполняемый файл, и если это не так, то сделать его исполняем:
sudo chmod +x /usr/bin/clickhouse_exporter
Создать сценарий запуска systemd сервиса clickhouse_exporter'а. Создать файл /etc/systemd/system/clickhouse_exporter.service:
[Unit] Description=Prometheus Clickhouse Exporter After=network.target [Service] Type=simple Restart=always User=prometheus Group=prometheus Environment=CLICKHOUSE_USER=javauser Environment=CLICKHOUSE_PASSWORD=javapassword ExecStart=/usr/local/bin/clickhouse_exporter [Install] WantedBy=multi-user.target
При необходимости можно создать отдельного пользователя в ClickHouse для мониторинга. Создать /etc/clickhouse-server/users.d/monitoring.xml:
<yandex> <users> <monitoring> <password>monitoring</password> <networks incl="networks" replace="replace"> <ip>::1</ip> <ip>127.0.0.1</ip> </networks> <profile>readonly</profile> <quota>default</quota> <allow_databases> <database>test</database> </allow_databases> </monitoring> </users> </yandex>
И указать его в enviroment в clickhouse_exporter.service(п.6).
Запустить clickhouse_exporter:
systemctl start clickhouse_exporter
Добавить новый источник в конфигурацию prometheus.yml:
scrape_configs: - job_name: clickhouse static_configs: - targets: ['<IP-адрес и порт сервера clickhouse_exporter>'] labels: alias: clickhouse
Перезапустить Prometheus:
systemctl restart prometheus
- Добавить дашбоард в Grafana. Например, базовый дашбоард Clickhouse (id 882).