From f204e94930e7c5da010f879c49a0d6b069b79310 Mon Sep 17 00:00:00 2001 From: Ruslan Gilfanov Date: Sun, 21 Jun 2026 22:54:42 +0300 Subject: [PATCH] =?UTF-8?q?monitoring:=20=D0=BF=D0=BE=D0=B4=D0=BA=D0=BB?= =?UTF-8?q?=D1=8E=D1=87=D1=91=D0=BD=20ru1=20(host-net=20=D0=B0=D0=B3=D0=B5?= =?UTF-8?q?=D0=BD=D1=82,=20=D0=B2=D0=B8=D0=B4=D0=B8=D1=82=20VPN-=D0=B8?= =?UTF-8?q?=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81=D1=8B)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- servers/ru1.md | 4 ++++ stacks/monitoring-agent/docker-compose.yml | 20 ++++++++----------- .../prometheus/targets/cadvisor/ru1.yml | 3 +++ .../prometheus/targets/node/ru1.yml | 3 +++ 4 files changed, 18 insertions(+), 12 deletions(-) create mode 100644 stacks/monitoring/prometheus/targets/cadvisor/ru1.yml create mode 100644 stacks/monitoring/prometheus/targets/node/ru1.yml diff --git a/servers/ru1.md b/servers/ru1.md index e1adb11..2c6550b 100644 --- a/servers/ru1.md +++ b/servers/ru1.md @@ -44,6 +44,10 @@ VPN entry-нода в РФ. Точка входа в топологии **RU↔D - OpenVPN: `~/gen_client.sh --profile de|ru|both <имя>`, PKI `~/easy-rsa/pki`, профили `~/clients/`. CRL отключён. - WireGuard: `~/wireguard/gen_client.sh <имя>` → `~/wireguard/clients/<имя>.conf` (горячее добавление). +## Мониторинг +- Агент `~/monitoring-agent` (node-exporter + cadvisor, **host-network** → видит ens3/wg0/wg1/tun0/tun1) → Prometheus `fr1`, instance `ru1`. +- Порты 9100/8080 закрыты `iptables INPUT DROP ! -s 161.97.93.252` (только fr1, сохранено netfilter-persistent). Скрейп по публичному IP. + ## Прочее в `~` - `badvpn`, `gost`, `smart-routing`, `tun2socks.log`, `net-backup`, `works`, `telemt-build`, `cloudflared.deb`. diff --git a/stacks/monitoring-agent/docker-compose.yml b/stacks/monitoring-agent/docker-compose.yml index 452dfbf..83524fb 100644 --- a/stacks/monitoring-agent/docker-compose.yml +++ b/stacks/monitoring-agent/docker-compose.yml @@ -1,14 +1,15 @@ -# Агент мониторинга для удалённых нод (node-exporter + cadvisor). -# Prometheus на fr1 скрейпит 9100/8080. На ноде ограничить доступ к этим портам -# только IP fr1 (DOCKER-USER iptables) — метрики идут по публичной сети. -# hostname менять под конкретную ноду (здесь de1). +# Каноничный агент мониторинга для удалённой ноды: node-exporter + cadvisor в host-network +# (node-exporter видит реальные интерфейсы хоста — ens3/eth0/wg*/tun*). +# Порты 9100/8080 ОБЯЗАТЕЛЬНО закрыть на ноде только для IP fr1 +# (ufw allow from / iptables INPUT DROP ! -s ). Скрейп — по публичному IP ноды. +# Используется на ru1. de1 пока на старом bridge-варианте (сетевые метрики = docker-бридж). name: monitoring-agent services: node-exporter: image: prom/node-exporter:latest - container_name: node-exporter - hostname: de1 + network_mode: host + pid: host restart: unless-stopped command: - '--path.procfs=/host/proc' @@ -19,13 +20,10 @@ services: - /proc:/host/proc:ro - /sys:/host/sys:ro - /:/rootfs:ro - pid: host - ports: - - "9100:9100" cadvisor: image: gcr.io/cadvisor/cadvisor:latest - container_name: cadvisor + network_mode: host restart: unless-stopped privileged: true devices: @@ -36,5 +34,3 @@ services: - /sys:/sys:ro - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro - ports: - - "8080:8080" diff --git a/stacks/monitoring/prometheus/targets/cadvisor/ru1.yml b/stacks/monitoring/prometheus/targets/cadvisor/ru1.yml new file mode 100644 index 0000000..4dbc905 --- /dev/null +++ b/stacks/monitoring/prometheus/targets/cadvisor/ru1.yml @@ -0,0 +1,3 @@ +- targets: ["85.198.109.86:8080"] + labels: + instance: ru1 diff --git a/stacks/monitoring/prometheus/targets/node/ru1.yml b/stacks/monitoring/prometheus/targets/node/ru1.yml new file mode 100644 index 0000000..c14ffe1 --- /dev/null +++ b/stacks/monitoring/prometheus/targets/node/ru1.yml @@ -0,0 +1,3 @@ +- targets: ["85.198.109.86:9100"] + labels: + instance: ru1