feat(iis-on-host-migration): done — attempt 2 close-out, 8/8 sites green @ 36h soak

Soak passed: traefik Up 38h, w3wp 8.8h (scheduled IIS pool recycle ~29h, not crash).
HTTPS smoke 11 hostnames через full traefik chain — 8/8 наших sites вернули
Microsoft-IIS/10.0. 3 hostname'а оказались off-infra (DNS снят / parked / external
nginx) — не regression миграции, заведена follow-up  iis-traefik-dead-routes-cleanup.

Wiki: Phase 11 close-out section в sources/iis-host-migration-2026-05-19, log
ingest+decision entries.

VM snolla-recovery ready для savestate (waits user go).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-21 08:09:01 +03:00
parent d0defa8e8e
commit a5e96432bc

View File

@@ -4,7 +4,7 @@ type: source
tags: [migration, iis, windows, recovery, traefik]
ingested: 2026-05-19
raw_path: ../../.tasks/iis-on-host-migration.md
updated: 2026-05-19
updated: 2026-05-21
---
# IIS Host Migration Session 2026-05-19
@@ -239,3 +239,37 @@ VM `snolla-recovery`: **running parallel** (24h+ soak), backend в traefik бо
- **Port forwards OpenWRT** (`host:18080/18180/18181/18189` → VM) — больше не нужны, удалить позже.
- **rimiz.ru / ics-artmaterials.com 404** — CMS-side routing issues, не инфра. Открытым.
- **X-Forwarded headers** (`:4443` в redirect URL) — известный bug [[traefik-on-windows-docker-desktop]] Pitfall 5, отдельная задача.
## Phase 11 — close-out 2026-05-21 (~36h soak)
Soak window 2026-05-19 22:00 MSK → 2026-05-21 ~08:00 MSK ≈ 36 hours. Verify:
- **Traefik:** `Up 38 hours` (`docker ps`) — zero restarts, zero unscheduled bouncing.
- **w3wp.exe** (IIS worker для `snolla` site): PID 10432, CreationDate 2026-05-20 23:19:21 MSK, uptime 8.8h. Это **scheduled IIS app pool recycle** (default 1740 min ≈ 29h), не crash — нормальное поведение pool'а после ~29h работы. Память 522 MB.
- **HTTPS smoke** 11 заявленных hosts через `docker exec traefik wget --spider --server-response https://<host>/`:
| Host | Code | Server | Verdict |
|---|---|---|---|
| `emspb.ru` | 301→www | Microsoft-IIS/10.0 | ✅ |
| `snolla.com` | 301→on.snolla | Microsoft-IIS/10.0 | ✅ |
| `on.snolla.com` | 200 | Microsoft-IIS/10.0 | ✅ |
| `pilorama98.ru` | 301→www | Microsoft-IIS/10.0 | ✅ |
| `labtools.ru` | 301→www | Microsoft-IIS/10.0 | ✅ |
| `labtools.pro` | 301→www | Microsoft-IIS/10.0 | ✅ |
| `tandemmebel.ru` | 301→www | Microsoft-IIS/10.0 | ✅ |
| `kupimknigi.spb.ru` | 200 | Microsoft-IIS/10.0 | ✅ |
| `maljarka.ru` | — | DNS bad address | ⚠️ off-infra (nslookup 8.8.8.8 → no A record) |
| `sestech.ru` | — | TLS cert `CN=*.domainparking.ru` (expired 2026-05-13) | ⚠️ off-infra (domain parking provider) |
| `ics-artmaterials.com` | 200 | `nginx-reuseport/1.21.1` | ⚠️ off-infra (A→87.236.16.28, мигрирован на сторонний WP-хостинг) |
**Итог:** 8/8 наших sites зеленые. 3 hostname'а из исходного списка task'а оказались **уже не на нашей инфраструктуре** — DNS либо снят, либо переключен на сторонние хостинги. Это не regression миграции; эти domains надо просто убрать из traefik/IIS routing'а как dead.
Decisions:
- iis-host migration close-out: **DONE 2026-05-21**.
- VM `snolla-recovery`: готова к savestate (soak passed, zero rollbacks). User-side savestate решает отдельно.
- 3 off-infra domains: новая задача — `iis-traefik-dead-routes-cleanup` (low prio).
## Артефакты Phase 11
- `.tasks/STATUS.md` — task → 🟢 done.
- (existing) traefik bak-серия `.bak-pre-attempt2-2026-05-19` — оставить ещё неделю (atomic revert на случай unforeseen regression).