docs: expand lint scope batch4 (3 files)

This commit is contained in:
Apple
2026-02-16 03:47:51 -08:00
parent 831f361f0f
commit 9c9f4fa182
4 changed files with 31 additions and 25 deletions

View File

@@ -31,7 +31,7 @@ GUARDIAN_INTERVAL=60
### 2. Запуск Node Guardian
#### Як фонове завдання (рекомендовано):
#### Як фонове завдання (рекомендовано)
```bash
# Створити systemd service
@@ -67,7 +67,7 @@ sudo systemctl start node-guardian
sudo systemctl status node-guardian
```
#### Або вручну:
#### Або вручну
```bash
cd /path/to/microdao-daarion
@@ -76,7 +76,7 @@ python3 scripts/node-guardian-loop.py
### 3. Перевірка роботи
#### Перевірити логи:
#### Перевірити логи
```bash
# Якщо systemd service
@@ -85,7 +85,7 @@ sudo journalctl -u node-guardian -f
# Або якщо запущено вручну - дивитись stdout
```
#### Перевірити в БД:
#### Перевірити в БД
```sql
-- Перевірити чи оновлюються метрики для НОДА2
@@ -104,7 +104,7 @@ ORDER BY updated_at DESC
LIMIT 1;
```
#### Перевірити Swapper State:
#### Перевірити Swapper State
```sql
SELECT
@@ -167,7 +167,7 @@ WHERE node_id = 'node-2-macbook-m4max'
На НОДА1 guardian зазвичай запускається автоматично через docker-compose або systemd.
### ENV змінні для НОДА1:
### ENV змінні для НОДА1
```bash
NODE_ID=node-1-hetzner-gex44
@@ -182,7 +182,7 @@ CITY_SERVICE_URL=https://daarion.space/api/city
## Архітектура
```
```text
┌─────────────────┐
│ Node Guardian │ (на кожній ноді)
│ (loop script) │
@@ -214,9 +214,14 @@ CITY_SERVICE_URL=https://daarion.space/api/city
## Важливі моменти
1. **Один Router/Swapper для всіх нод у проді**: На НОДА1 є один DAGI Router та один Swapper Service, які обслуговують всі ноди. Guardian на кожній ноді просто збирає метрики та пушить їх в БД з правильним `node_id`.
1. **Один Router/Swapper для всіх нод у проді**:
На НОДА1 є один DAGI Router та один Swapper Service, які обслуговують всі ноди.
Guardian на кожній ноді просто збирає метрики та пушить їх в БД
з правильним `node_id`.
2. **ENV змінні мають пріоритет**: Guardian використовує `NODE_SWAPPER_URL` та `NODE_ROUTER_URL` з ENV, якщо вони встановлені. Це дозволяє для НОДА2 використовувати `localhost`, а для НОДА1 - Docker service names.
2. **ENV змінні мають пріоритет**:
Guardian використовує `NODE_SWAPPER_URL` та `NODE_ROUTER_URL` з ENV,
якщо вони встановлені. Це дозволяє для НОДА2 використовувати `localhost`,
а для НОДА1 - Docker service names.
3. **Heartbeat оновлює node_cache**: Кожен heartbeat оновлює метрики в `node_cache` для конкретного `node_id`, тому дані не перетираються між нодами.