Skip to content

Установка Glaber на Ubuntu 22.04

Для установки нужны привилегии root или подобные:

$ sudo -s

Добавление репозитория glaber. Устанавливаем дополнительные пакеты:

# apt-get update && apt-get install wget gnupg2 lsb-release apt-transport-https -y

Добавляем ключ репозитория:

# wget --quiet -O - https://glaber.io/repo/key/repo.gpg | apt-key add -

Добавляем репозиторий в файл списка репозиториев:

# echo "deb [arch=amd64] https://glaber.io/repo/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/glaber.list

Скачиваем и обновляем пакеты из репозитория:

# apt update

Устанавливаем Glaber сервер, веб-интерфейс, agent:

# apt install glaber-server-pgsql glaber-frontend-php php8.1-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent

Предварительно установите на том же сервере или отдельном Postgresql или Mysql. Убедитесь что приложение базы данных запущено.

Наполнение базы данных

Используя команды ниже создайте базу данных и пользователя glaber:

# sudo -u postgres createuser --pwprompt glaber
# sudo -u postgres createdb -O glaber glaber

Импортируем схему базы данных и данные. Если у вас установлен пароль он будет запрошен при запуске следующей команды # zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix

Предварительно Clickhouse должен быть установлен на отдельном сервере или текущем и настроен согласно нашим рекомендациям.

Импортируем схему базы данных для Clickhouse.

Скачаем схему базы данных из файла https://gitlab.com/mikler/glaber/-/blob/master/database/clickhouse/history.sql.

Далее используем этот файл для создания структуры в Clickhouse:

# clickhouse-client --password --multiquery <  history.sql

Настройте учетные данные для подключения к базе данных в файле конфигурации /etc/zabbix/zabbix_server.conf:

BName=glaber
DBUser=glaber
DBPassword={пароль}
HistoryModule=clickhouse;{"url":"http://127.0.0.1:8123", "username":"default", "password":"password", "dbname":"glaber",  "disable_reads":100, "timeout":10 }

Настройка PHP для запуска веб интерфейса Glaber. Измените файл /etc/zabbix/nginx.conf, раскомментируя и определяя директивы 'listen' и 'server_name':

# listen 8080;
# server_name example.com;

Запустите сервисы Glaber server, Nginx, php-fpm и agent. Также рекомендуется добавить сервисы в автозапуск системы:

# systemctl enable zabbix-server zabbix-agent nginx php8.1-fpm nginx --now

Проверьте что веб-интерфейс Glaber доступен

Рекомендации настройки Clickhouse

  1. Задаём ограничение времени хранения логов.

  2. Меняем или добавляем параметр в файл: cat /etc/clickhouse-server/config.d/query_log.xml

<yandex>
    <query_log replace="1">
    <database>system</database>
<table>query_log</table>
    <flush_interval_milliseconds>7500</flush_interval_milliseconds>
    <engine>
      ENGINE = MergeTree
      PARTITION BY event_date
      ORDER BY (event_time)
      TTL event_date + interval 90 day
      SETTINGS ttl_only_drop_parts=1
    </engine>
</query_log>

  1. Отключаем thread log в файле /etc/clickhouse-server/config.d/disable_query_thread_log.xml.

  2. Отключаем встроенные метрики Clickhouse если хотим мониторить его параметры внешним мониторингом.

  3. Меняем или создаем файл /etc/clickhouse-server/config.d/disable_metric_logs.xml.

  4. Отключаем part_log.

  5. Меняем или создаем файл /etc/clickhouse-server/config.d/part_log.xml.

  6. Включаем log queries (в новых версиях Clickhouse включен по-умолчанию).

  7. Меняем или создаем файл /etc/clickhouse-server/users.d/log_queries.xml

  8. Запись данных на диск сразу в отсортированном виде.

  9. Меняем или создаем файл /etc/clickhouse-server/users.d/enable_on_disk_operations.xml.