Skip to content

mon26 — Мониторинг

Общее

Параметр Значение
Тип CX33 (4 vCPU, 7.6 GB RAM, 80 GB SSD)
ОС Ubuntu 24.04.4 LTS (Noble Numbat)
Ядро 6.8.0-90-generic
Public IP 46.224.166.151
Private IP 10.26.0.3
Timezone Asia/Jerusalem
Проект infra26
SSH ssh digi.i26.mon26 (порт 1022)
Ansible playbook project/mon26.yml

Сервисы

Системные

Сервис Версия Порт Описание
Nginx 0.0.0.0:80, 0.0.0.0:443 SSL-терминация для UI мониторинга
node_exporter 10.26.0.3:9100 Prometheus-метрики хоста
bareos-filedaemon 10.26.0.3:9102 Клиент резервного копирования
glpi-agent 1.15 Инвентаризация (glpi.digiproduct.co.il)

Docker-контейнеры

Контейнер Образ Порт (приватный) Память Описание
prometheus prom/prometheus:v3.1.0 10.26.0.3:9090 2 GB / 1 GB Сбор метрик
grafana grafana/grafana:11.4.0 10.26.0.3:3000 512 MB / 256 MB Визуализация
loki grafana/loki:3.3.2 10.26.0.3:3100 512 MB / 256 MB Агрегация логов
alertmanager prom/alertmanager:v0.28.1 10.26.0.3:9093 256 MB / 64 MB Алерты
blackbox-exporter prom/blackbox-exporter:v0.25.0 10.26.0.3:9115 256 MB / 64 MB HTTP-проверки
cadvisor gcr.io/cadvisor/cadvisor:v0.55.1 10.26.0.3:8080 1 GB / 256 MB Метрики Docker

Публичные URL

Сервис URL Backend
Grafana https://mon26.digiproduct.co.il 10.26.0.3:3000
Prometheus https://prom26.digiproduct.co.il 10.26.0.3:9090
Alertmanager https://am26.digiproduct.co.il 10.26.0.3:9093

Доступ ограничен сетью 10.26.0.0/16.

Nginx

SSL-терминация для трёх мониторинговых сервисов.
Каждый домен: HTTP → redirect 301 HTTPS, HTTPS → proxy_pass на соответствующий контейнер.
ACME-challenge обслуживается из /var/www/html на порту 80.

Сертификаты (Let's Encrypt, certbot):

Домен Сервис
mon26.digiproduct.co.il Grafana
prom26.digiproduct.co.il Prometheus
am26.digiproduct.co.il Alertmanager

Cron: 0 3 * * *certbot-helper.sh >> /var/log/certbot-combine.log 2>&1

Alertmanager

Параметр Значение
Retention 120 ч
SMTP smarthost mail.digiproduct.co.il:25
From [email protected]
To [email protected]
Telegram chat -1003173654302

Docker-сети

Все контейнеры в сети infra (192.168.20.0/24):

Контейнер IP
prometheus 192.168.20.90
blackbox-exporter 192.168.20.91
alertmanager 192.168.20.92
loki 192.168.20.93
grafana 192.168.20.94
cadvisor 192.168.20.80

Данные хранятся в /docker/volumes/<container>/.

Мониторинг

  • node_exporter слушает 10.26.0.3:9100, скрейпится Prometheus локально (46.224.166.151)
  • cAdvisor (10.26.0.3:8080) скрейпится Prometheus локально
  • glpi-agent: роль infra, env production-infra26, provider Hetzner, DC fsn1

Резервное копирование (Bareos)

Параметр Значение
Клиент bareos-filedaemon на 10.26.0.3:9102
Директор bkp26 (10.26.0.8), FQDN bkp26-local.digiproduct.co.il
Хранилище Hetzner Object Storage fsn1.your-objectstorage.com
Бакет digibkpinfra26
Расписание WeeklyCycle
Удержание 90 дней
Макс. томов (incremental) 100
Spool dir /var/lib/bareos/spool/mon26

Файрвол

UFW отключён. Файрвол управляется через iptables (/etc/iptables/rules.v4).
Открытые порты: 80/tcp, 443/tcp, 1022/tcp (SSH).

Ansible-роли

Плейбук project/mon26.yml:

Роль Статус Назначение
infra26 закомментирована (уже применена) базовая настройка: swap 4GB, Docker, apt-upgrade, timezone
node_exporter закомментирована (уже применена) Prometheus-экспортер хоста
compose_cadvisor закомментирована (уже применена) Docker-метрики (cAdvisor)
glpi_agent закомментирована (уже применена) инвентаризация
systemd_nginx закомментирована (уже применена) Nginx + certbot для SSL-терминации
compose_monitor закомментирована (уже применена) стек мониторинга (Prometheus, Grafana, Loki, Alertmanager, Blackbox)
systemd_bareos_client закомментирована (уже применена) bareos-filedaemon
bareos_bkp_system_s3 активна настройка задания бэкапа системы в S3

Заметки

  • SSH нестандартный порт: 1022
  • Журнал systemd ограничен 300 MB (@daily journalctl --vacuum-size=300M)
  • Swap 4 GB создаётся ролью infra26 при первом деплое