- close [resilience-roadmap-design] 🟢 — roadmap expanded via interactive workshop with user (per-service RTO/RPO matrix for 10 services, CMS backup 2-phase plan, IIS migration track, 4 secondary topics documented as recommendations) - file 3 impl-tasks ⚪ ready (spawned by roadmap-design): - cms-stopgap-backup-daily — Phase 1, plug RPO=∞ via daily rsync to kreknin - mssql-minio-migration-to-vds — Phase 2 enabler, achieves RPO 1h target - windows-hosting-vendor-research — design-task for IIS migration off home host - unblock [admin-infra-project-review] 🔵 → ⚪ (last blocker cleared) - expand .wiki/concepts/future-resilient-architecture-goals.md with §Workshop pass 1 (canonical) above original §Pre-workshop placeholder (historical) Key user-decisions zafiksirovany in workshop: - CMS RTO 4h / RPO 1h (not 1h/15min — overkill for one-person infra) - MSSQL+MinIO migrate to VDS (not Windows-side managed hosting) - MSSQL Always-On AG rejected — log shipping every 60min sufficient - IIS long-term dies with snolla-on-node; transitional via managed Windows host - Cloud off-site = Yandex Object Storage when needed (kreknin already off-site) - Monitoring = Uptime Kuma on VDS, high-priority among not-filed Acceptance per spec (user confirmed plan + concrete impl-tasks top-3 + doc committed) — met. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
55 lines
6.2 KiB
Markdown
55 lines
6.2 KiB
Markdown
# windows-hosting-vendor-research
|
||
|
||
## Goal
|
||
**Design-таска (1 день)**. Выбрать вендора managed Windows hosting для будущего переезда IIS с [[../entities/windows-recovery-host]] (домашней машины). Цель — конкретный recommendation: **vendor + tariff + migration approach + cost estimate**.
|
||
|
||
Это **переходный** трек до завершения snolla node-rewrite'а (после которого IIS не нужен вообще, всё в docker/VDS). Не файлим impl-таску миграции до этой research'и — vendor выбираем сначала. Output этой таски — pre-requisite для будущей impl-таски `iis-migration-to-managed-windows-hosting` (большая, не сейчас).
|
||
|
||
## Key constraints для оценки
|
||
- **RDP-доступ** обязателен (IIS configs руками удобнее, web-deploy не масштабируется на 8+ sites)
|
||
- **.NET Framework 4.8 native** (snolla CMS на 4.8.1, **не** .NET Core/.NET 6+)
|
||
- **IIS 10** или совместимый (URL Rewrite 2.1 нужен — см. [[../.wiki/concepts/cms-server-port-leak-fix]])
|
||
- **HTTPS + custom certs / LE** — currently traefik 4443 → IIS 8089; на managed может быть vendor-managed cert или своя LE setup
|
||
- **SSH / SFTP / WinRM для deploys** (для sites contents — IIS site dirs ~100MB-1GB каждая)
|
||
- **External MSSQL/MinIO connection** обязателен (после [[mssql-minio-migration-to-vds]] они на [[../entities/vds-kzntsv]]) — **не нужно** DB на этом hosting
|
||
- **Public IP** или alternative (Cloudflare Tunnel?) — куда DNS клиентских доменов будет указывать
|
||
- **Budget reference:** current Rusonyx VDS 160 NVMe ~2000₽/мес; managed Windows обычно 2-3x = 4000-6000₽/мес ожидаемо
|
||
|
||
## Candidates для investigation
|
||
- **Rusonyx** (у тебя уже там VDS-аккаунт + опыт онбординга — см. [[../.wiki/concepts/rusonyx-vps-onboarding-quirks]]) — есть Windows VPS-планы
|
||
- **Selectel** — managed cloud, есть Windows VPS dedicated, хорошие reviews
|
||
- **FirstVDS** — Windows VPS традиционно, дешевле Selectel
|
||
- **Beget** — Windows hosting, обычно shared (проверить про CMS-deploy access — нужен ли VPS-уровень)
|
||
- **JustHosting / IHC** — может быть relevant как backup-option
|
||
|
||
## Acceptance
|
||
1. **Comparison table:** vendor × columns:
|
||
- RDP / SSH / WinRM
|
||
- .NET Framework version (native install? сами ставим? supports 4.8?)
|
||
- IIS version + URL Rewrite доступность
|
||
- Public IP (включён? extra?)
|
||
- Cost monthly (Windows VPS tariff + Windows license если BYOL)
|
||
- One-time setup cost
|
||
- Migration friction (есть ли import tools? чистый IIS deploy?)
|
||
- SLA (uptime guarantee, ticket response time)
|
||
- User reviews / community feedback
|
||
2. **Top-1 recommendation** с обоснованием trade-off'а (cheap-and-simple vs feature-rich). Не меню — одна рекомендация.
|
||
3. **Migration approach outline:** backup IIS sites + configs → deploy on target → DNS swap → cutover plan. Один level deep (не runbook полный, его пишет уже impl-таска).
|
||
4. **Cost estimate:** monthly + one-time setup для recommended vendor.
|
||
5. **Documented in** `.wiki/concepts/windows-hosting-vendor-comparison-2026.md` (создать) — markdown с table + recommendation + sources (links to vendor pages, дата сверки).
|
||
6. **Follow-up impl-task** `iis-migration-to-managed-windows-hosting` file'нута как ⚪ ready **после** research (не самим этим таском — пусть future-agent file'нёт когда vendor выбран и user готов начать миграцию).
|
||
|
||
## Decisions log
|
||
- 2026-05-21: создана из roadmap-workshop'а ([[../.wiki/concepts/future-resilient-architecture-goals]] §"IIS migration track"). User-stated long-term direction: snolla на node, после чего IIS не нужен вообще. Pre-this: managed Windows host = переходный, чтобы убрать SPOF домашней машины. **Не оптимизируем под "идеальный навсегда"** — vendor выбираем чтобы comfortably прожить 6-18 мес. Поэтому cost > feature-completeness в trade-off.
|
||
|
||
## Open questions
|
||
- [ ] **Дата ожидаемого готового snolla-on-node** — влияет на whether-to-bother миграцией. Если node-build готов через 3 мес → managed hosting вообще не нужен, stay on windows-recovery-host as-is + accept SPOF risk; если через 12+ мес → migration оправдана. User input needed.
|
||
- [ ] **Будет ли куплен Windows Server license отдельно** (если vendor требует BYOL — Bring Your Own License) или vendor-included? Добавляет cost.
|
||
- [ ] **DDoS protection требуется?** На текущем setup нет (через бытовой провайдер); на public managed Windows тоже обычно нет default, доп-опция. Defer пока не было атаки.
|
||
- [ ] **Multi-site IIS vs single-site:** 8 hosts на одном IIS instance vs split по бOльшему количеству VPS. Single-site проще, multi-site = sub-SPOF разбит, но 2-3x cost. Default рекомендация — single-site если cost важен.
|
||
|
||
## Notes
|
||
**Anti-pattern для избегания:** не выбирать первого попавшегося vendor без сравнения. RU Windows-hosting рынок небольшой, но цены и качество разнятся 2-5x. Read reviews on vds.menu, otzyvy.pro перед commitment.
|
||
|
||
**После выбора:** трехмесячный pilot с одним low-traffic site (например `kupimknigi.spb.ru` — самый низкий трафик per [[../.wiki/concepts/recovery-architecture-snapshot]]) перед миграцией всех 8. Снижает risk catastrophic migration failure.
|