Production checklist

Перед запуском

  • [ ] HTTPS на cabinet origin (terminate на nginx/caddy/cloud LB)
  • [ ] COOKIE_SECURE=true — куки только по HTTPS
  • [ ] SESSION_KEY — 32+ байт, pinned в env (изменение invalidates all sessions)
  • [ ] CA_DIR — на persistent volume; secrets.key оттуда нельзя терять
  • [ ] Postgres — managed (RDS / Cloud SQL) или собственный HA
  • [ ] VictoriaMetrics — отдельный диск под storageDataPath (retention влияет на размер)
  • [ ] SMTP — настроен (без него console-mailer печатает в stdout, годится только для dev)
  • [ ] Backup стратегия для Postgres (state) + VictoriaMetrics (TSDB)

Resource sizing

Минимум для production:

  • API: 2 vCPU / 4 GB RAM
  • Postgres: 2 vCPU / 8 GB RAM + 50 GB SSD
  • VictoriaMetrics: 4 vCPU / 16 GB RAM + 500 GB SSD (для 30-дневного retention при 1000 series/host × 100 хостов)
  • Cabinet: 1 vCPU / 1 GB RAM (Next.js prod build)