docs: Update Wiki from main repository
+15
-13
@@ -14,7 +14,7 @@ Manage Cloudflare zones, DNS records, domain groups, and TLS certificate expiry
|
|||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|----------|-------------|
|
|----------|-------------|
|
||||||
| `CLOUDFLARE_API_TOKEN` | API token with Zone.DNS permissions |
|
| `CLOUDFLARE_API_TOKEN` | API token: Zone.DNS **и** для Worker — Account Workers Scripts Write + Workers KV Storage Write |
|
||||||
| `DATABASE_URL` | SQLite path (`sqlite:/data/app.db`) |
|
| `DATABASE_URL` | SQLite path (`sqlite:/data/app.db`) |
|
||||||
| `JWT_SECRET` | JWT signing secret |
|
| `JWT_SECRET` | JWT signing secret |
|
||||||
| `ADMIN_USERNAME` | Admin username |
|
| `ADMIN_USERNAME` | Admin username |
|
||||||
@@ -25,8 +25,6 @@ Manage Cloudflare zones, DNS records, domain groups, and TLS certificate expiry
|
|||||||
| `HEALTH_DOWN_FAILURES` | Ошибок подряд до `down` (default `2`). То же в UI. |
|
| `HEALTH_DOWN_FAILURES` | Ошибок подряд до `down` (default `2`). То же в UI. |
|
||||||
| `HEALTH_SUCCESS_RECOVERIES` | Успехов подряд для recovery `CHECKING → HEALTHY` (default `2`). То же в UI. |
|
| `HEALTH_SUCCESS_RECOVERIES` | Успехов подряд для recovery `CHECKING → HEALTHY` (default `2`). То же в UI. |
|
||||||
| `HEALTH_LATENCY_WARN_MS` | Латентность-порог для `degraded` (default `1000`). То же в UI. |
|
| `HEALTH_LATENCY_WARN_MS` | Латентность-порог для `degraded` (default `1000`). То же в UI. |
|
||||||
| `HEALTH_WORKER_URL` | URL Worker health-probe (fallback). Переопределяется в **Настройки → Health-check**. |
|
|
||||||
| `HEALTH_WORKER_TOKEN` | Bearer-токен Worker (fallback). В GET `/settings` не отдаётся целиком. |
|
|
||||||
|
|
||||||
## Load balancing & health checks
|
## Load balancing & health checks
|
||||||
|
|
||||||
@@ -58,22 +56,26 @@ health-check работают на двух уровнях:
|
|||||||
|
|
||||||
| | Local | Cloudflare Worker |
|
| | Local | Cloudflare Worker |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| Кто пробирует | процесс API CFDM | Worker на edge Cloudflare |
|
| Кто пробирует | процесс API CFDM | Worker на edge (Cron Trigger) |
|
||||||
| Планировщик | глобальный cron CFDM | тот же cron вызывает Worker |
|
| Планировщик | глобальный cron CFDM | cron Worker + ingest KV в CFDM |
|
||||||
| Пороги Slow/Down | Настройки → Health-check | те же |
|
| Пороги Slow/Down | Настройки → Health-check | те же |
|
||||||
| Результат | SQLite `ip_health_status` | та же SQLite + `colo` |
|
| Результат | SQLite `ip_health_status` | та же SQLite + `colo` из KV |
|
||||||
| Регионы Health Checks | нет | нет (на Free продукта нет) |
|
| Регионы Health Checks | нет | нет (на Free продукта нет) |
|
||||||
|
|
||||||
**Cloudflare в CFDM — это Worker**, не [Health Checks API](https://developers.cloudflare.com/api/resources/healthchecks).
|
**Cloudflare в CFDM — это Worker**, не [Health Checks API](https://developers.cloudflare.com/api/resources/healthchecks).
|
||||||
Продукт Health Checks на Free-плане недоступен и **не используется**. Worker
|
Продукт Health Checks на Free-плане недоступен и **не используется**.
|
||||||
stateless: конфиг и журнал (`health_probe_log`) живут в SQLite CFDM.
|
|
||||||
|
|
||||||
Деплой Worker: [`workers/health-probe/README.md`](../workers/health-probe/README.md)
|
Worker **сам** опрашивает IP/порты/протоколы (TCP/HTTP, паттерн [UptimeFlare](https://github.com/lyc8503/UptimeFlare): `sockets.opened`, p-limit 5).
|
||||||
(`wrangler deploy`). URL и токен — **Настройки → Health-check**. Если Worker не
|
CFDM создаёт скрипт через Workers Scripts API, кладёт список целей в KV и читает результаты.
|
||||||
задан, cloudflare-цели **не** пробируются как Local.
|
Публичный URL API не нужен. Если Worker/KV не готовы, cloudflare-цели **не** пробируются как Local.
|
||||||
|
|
||||||
Reconcile DNS запускается cron-задачей `health-check`. Free Workers ≈ 100k
|
Кнопка **Создать / обновить Worker** — **Настройки → Health-check**. Токен:
|
||||||
запросов/сутки; cron раз в 2 мин × число IP должен влезать.
|
Account `Workers Scripts Write` + `Workers KV Storage Write`. Zone DNS недостаточно.
|
||||||
|
|
||||||
|
Free: 5 Cron Triggers на аккаунт; KV 1000 writes/сутки (интервал ≥ 2 мин);
|
||||||
|
≤ 48 целей за тик. Исходник: [`workers/health-probe/`](../workers/health-probe/).
|
||||||
|
|
||||||
|
Reconcile DNS запускается cron-задачей `health-check` после ingest KV.
|
||||||
|
|
||||||
## Docker
|
## Docker
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user