Установка Glaber на Ubuntu 22.04
Для установки нужны привилегии root или подобные:
$ sudo -s
Устанавливаем дополнительные пакеты:
# apt-get update && apt-get install wget gnupg2 lsb-release apt-transport-https -y
Добавляем ключ репозитория Glaber:
# wget -qO /etc/apt/trusted.gpg.d/glaber_repo.gpg https://glaber.ru/repo/key/repo.gpg
Добавляем репозитории Glaber в файл списка репозиториев:
# echo "deb [arch=amd64] https://glaber.io/repo/3.4/deb/ubuntu-$(lsb_release -sr | cut -f1 -d.) $(lsb_release -sc) main" > /etc/apt/sources.list.d/glaber.list
# echo "deb [arch=amd64] https://glaber.io/repo/3.5/deb/ubuntu-$(lsb_release -sr | cut -f1 -d.) $(lsb_release -sc) main" >> /etc/apt/sources.list.d/glaber.list
# echo "deb [arch=amd64] https://glaber.io/repo/common/deb/ubuntu-$(lsb_release -sr | cut -f1 -d.) $(lsb_release -sc) main" >> /etc/apt/sources.list.d/glaber.list
Обновляем базу пакетов:
# apt update
Смотрим все доступные пакеты Glaber:
$ apt-cache search glaber
Устанавливаем Glaber-сервер, веб-интерфейс, agent:
# apt install glaber-server-pgsql glaber-frontend-php php8.1-pgsql glaber-nginx-conf glaber-agent
Если нам нужно установить определённую версию пакета Glaber, то смотрим все доступные версии этого пакета, например:
$ apt list -a glaber-agent
Listing... Done
glaber-agent/focal 1:3.5.134-f331c4cc-ubuntu-20 amd64
glaber-agent/focal 1:3.4.262-7a0a1260-ubuntu-20 amd64
После этого устанавливаем нужную версию пакета следующим образом:
# apt install glaber-agent=1:3.5.134-f331c4cc-ubuntu-20 amd64
# apt install glaber-agent=1:3.5.*
Предварительно установите на том же сервере или отдельном 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
-
Задаём ограничение времени хранения логов.
-
Меняем или добавляем параметр в файл: 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>
-
Отключаем thread log в файле /etc/clickhouse-server/config.d/disable_query_thread_log.xml.
-
Отключаем встроенные метрики Clickhouse если хотим мониторить его параметры внешним мониторингом.
-
Меняем или создаем файл /etc/clickhouse-server/config.d/disable_metric_logs.xml.
-
Отключаем part_log.
-
Меняем или создаем файл /etc/clickhouse-server/config.d/part_log.xml.
-
Включаем log queries (в новых версиях Clickhouse включен по-умолчанию).
-
Меняем или создаем файл /etc/clickhouse-server/users.d/log_queries.xml
-
Запись данных на диск сразу в отсортированном виде.
-
Меняем или создаем файл /etc/clickhouse-server/users.d/enable_on_disk_operations.xml.