Перейти к содержанию

Мониторинг сервера (хоста)

Мониториг хоста осуществляется стредствами Zabbix agent и шаблона "Linux by Zabbix agent". Полезными для наблюдения метрики:

  • утилизация CPU
  • утилизация дискового пространства
  • утилизация диска и размер очереди диска
  • утилизация ОЗУ
  • динамика использования подкачки (swap)

Мониторинг Docker

Мониториг хоста осуществляется стредствами Zabbix agent и шаблона "Docker by Zabbix agent 2". Полезными для наблюдения метрики:

  • Container {#NAME}: CPU percent usage
  • Container {#NAME}: CPU kernelmode usage per second
  • Container {#NAME}: CPU usermode usage per second
  • Container {#NAME}: Throttling periods
  • Container {#NAME}: Throttled time
  • Container {#NAME}: Memory usage
  • Container {#NAME}: Status
  • Container {#NAME}: Restart count
  • Container {#NAME}: Running
  • Container {#NAME}: OOMKilled

Мониторинг ClickHouse

Мониториг хоста осуществляется стредствами Zabbix agent и шаблона "ClickHouse by HTTP". Шаблон может быть добавлен как к серверу на котором запущен сервис clickhouse-server так и к другому серверу, который имеет доступ по сети до сервиса clickhouse-server.

Для того чтобы Zabbix agent мог получить метрики с ClickHouse сервера необходимо экспортировать порт HTTP интерфейса ClickHouse. Для этого на сервере на котором запущен сервис clickhouse-server нужно отредактировать значение переменной AW_CLICKHOUSE_HTTP_PORT_EXPORTED в файле .env, например:

AW_CLICKHOUSE_HTTP_PORT_EXPORTED=8123

После чего выполнить перезапуск сервиса clickhouse-server:

cd /opt/aw/app
docker compose up -d clickhouse-server

Далее в настройках хоста, в интерфейсе Zabbix, устанавливаем значение макросов:

{$CLICKHOUSE.LLD.FILTER.DB.MATCHES} = system
{$CLICKHOUSE.PASSWORD} = <пароль пользователя для подключения к ClickHouse>
{$CLICKHOUSE.USER} = <имя пользователя для подключения к ClickHouse>
# если Zabbix agent запущен на другом сервере
{$CLICKHOUSE.HOST} = <ip-адрес сервера clickhouse>
# если порт HTTP интерфейса ClickHouse отличается от 8123
{$CLICKHOUSE.PORT} = <ноиер порта HTTP интерфнйса ClickHouse>

Имя пользователя и пароль можно найти в файле .env проверив значение переменных:

# Имя пользователя
CLICK_USER=...
# Пароль пользователя
CLICK_PASS=...

Мониторинг PostgreSQL

Мониториг хоста осуществляется стредствами Zabbix agent 2 и шаблона "PostgreSQL by Zabbix agent 2". Для того чтобы Zabbix agent мог осуществлять сбор метрик с PostgreSQL необходимо выполнить установку дополнительного плагина.

Установка PostgreSQL плагина для Zabbix agent для дистрибутивов Linux основанных на Debian

  1. Добавляем репозиторий Zabbix, соглано документации
  2. Выполняем sudo apt update чтобы обновить список доступных пакетов
  3. Выполняем установку плагина командой sudo apt install zabbix-agent2-plugin-postgresql
  4. Проверяем что в конфигурационном файле Zabbix agent есть строчка вида: Include=/etc/zabbix/zabbix_agent2.d/plugins.d/*.conf
  5. Проверяем что файл /etc/zabbix/zabbix_agent2.d/plugins.d/postgresql.conf содержит строчку вида /etc/zabbix/zabbix_agent2.d/plugins.d/postgresql.conf
  6. Перезапускаем Zabbix agent командой: sudo systemctl status zabbix-agent2

Установка PostgreSQL плагина для Zabbix agent для RedOS

В репозиториях Red OS необходимый пакет уже присутствует, для установки достаточно выполнить команду:

sudo dnf install zabbix-agent2-plugin-postgresql

Установка PostgreSQL плагина для Zabbix agent для ALT Linux

В репозиториях ALT Linux необходимый пакет уже присутствует, для установки достаточно выполнить команду:

sudo apt-get update
sudo apt-get install zabbix-agent2-plugin-postgresql

Установка PostgreSQL плагина для Zabbix agent для дистрибутивов Linux основанных на RedHat

  1. Добавляем репозиторий Zabbix, соглано документации
  2. Выполняем установку плагина командой sudo dnf install zabbix-agent2-plugin-postgresql
  3. Перезапускаем Zabbix agent командой: sudo systemctl restart zabbix-agent2

Настройка мониторинга PostgreSQL

Для того чтобы Zabbix agent мог получить метрики с PostgreSQL сервера необходимо экспортировать порт TCP для подключения к СУБД. Для этого на сервере на котором запущен сервис db нужно отредактировать значение переменной DB_PORT_EXPORTED в файле .env, например:

DB_PORT_EXPORTED=5432

После чего выполнить перезапуск сервиса db:

cd /opt/aw/app
docker compose up -d db

Далее в настройках хоста, в интерфейсе Zabbix, устанавливаем значение макросов:

{$PG.CONNSTRING.AGENT2} = tcp://localhost:5432
{$PG.DATABASE} = workspace
{$PG.LLD.FILTER.DBNAME} = workspace
{$PG.PASSWORD} = <пароль пользователя для подключения к БД>
{$PG.USER} = <имя пользователя для подключения к БД>

Имя пользователя и пароль можно найти в файле .env проверив значение переменных:

# Имя пользователя
DB_USERNAME=...
# Пароль пользователя
DB_PASSWORD=...

Для хоста в интерфейсе Zabbix добавляем шаблон PostgreSQL by Zabbix agent 2