tasks: close windows-hosting-vendor-research + add iis-migration-to-ruvds
User selected RUVDS (Windows Server 2025 Core, 2GB RAM, 30GB HDD) outside research process. Vendor decision made, migration task created as ready. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
80
.tasks/iis-migration-to-ruvds.md
Normal file
80
.tasks/iis-migration-to-ruvds.md
Normal file
@@ -0,0 +1,80 @@
|
||||
# iis-migration-to-ruvds
|
||||
|
||||
## Goal
|
||||
|
||||
Migrate 11 IIS sites from [[../entities/windows-recovery-host]] (DESKTOP-NSEF0UK) to RUVDS Windows Server 2025 Core. Убрать SPOF домашней машины.
|
||||
|
||||
**Pre-requisites done:**
|
||||
- MSSQL+MinIO уже на [[../entities/vds-kzntsv]] (см [[mssql-minio-migration-to-vds]])
|
||||
- RUVDS purchased: Windows Server 2025 Core, 2GB RAM, 30GB HDD, 1IP, DC Королёв
|
||||
- RDP ready (credentials в secure storage)
|
||||
|
||||
## Target sites (11)
|
||||
|
||||
From [[../.wiki/concepts/recovery-architecture-snapshot]]:
|
||||
- snolla.com
|
||||
- pilorama98.ru
|
||||
- labtools.ru / labtools.pro
|
||||
- tandemmebel.ru
|
||||
- emspb.ru
|
||||
- kupimknigi.spb.ru (low-traffic — pilot candidate)
|
||||
- on.snolla.com
|
||||
- maljarka.tandemmebel.ru
|
||||
- + 3 others (see source)
|
||||
|
||||
## Migration approach
|
||||
|
||||
1. **RDP-first setup** (RUVDS):
|
||||
- Verify .NET Framework 4.8 installed (`Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\'`)
|
||||
- Verify IIS 10 installed (`Get-WindowsFeature Web-Server`)
|
||||
- Install URL Rewrite 2.1 (download + Server Manager cmd)
|
||||
- Configure firewall: allow 80/443 inbound
|
||||
- Test external MSSQL connection to VDS (89.253.255.94:1433)
|
||||
- Test external MinIO connection to VDS (minio.kzntsv.site:443)
|
||||
|
||||
2. **Backup source** (windows-recovery-host):
|
||||
- Export IIS configuration: `%systemroot%\system32\inetsrv\appcmd.exe list site -config > sites-backup.txt`
|
||||
- Export applicationHost.config: `C:\Windows\System32\inetsrv\config\applicationHost.config`
|
||||
- Backup inetpub\wwwroot\ (11 sites, ~100MB-1GB each)
|
||||
- Document Web.config connection strings (MSSQL/MinIO endpoints)
|
||||
|
||||
3. **Deploy to target** (RUVDS):
|
||||
- Create IIS sites matching source structure
|
||||
- Copy site contents (RDP drive mount or WinRM copy)
|
||||
- Update Web.config connection strings → point to VDS MSSQL/MinIO
|
||||
- Import SSL certificates (traefik LE certs) or setup new LE on IIS
|
||||
|
||||
4. **Pilot on kupimknigi.spb.ru**:
|
||||
- DNS pointing test (local hosts file or temporary DNS)
|
||||
- Smoke test: homepage + admin + database connectivity
|
||||
- 24h soak — monitor stability
|
||||
- If OK → proceed with remaining 10 sites
|
||||
|
||||
5. **DNS swap cutover**:
|
||||
- Update DNS A records → RUVDS IP
|
||||
- Monitor traefik logs on windows-recovery-host (should see 0 traffic)
|
||||
- Keep windows-recovery-host warm for 1 week rollback window
|
||||
|
||||
## Acceptance criteria
|
||||
|
||||
- [ ] RUVDS IIS serving all 11 sites
|
||||
- [ ] All sites functional (no 500 errors, DB connectivity OK)
|
||||
- [ ] DNS pointed to RUVDS
|
||||
- [ ] 24h stability soak passed
|
||||
- [ ] Rollback plan documented (revert DNS to home IP)
|
||||
- [ ] windows-recovery-host VM shutdown / saved-state
|
||||
|
||||
## Open questions
|
||||
|
||||
- [ ] **RUVDS public IP** — assigned yet? Need for DNS A records.
|
||||
- [ ] **SSL strategy** — use existing traefik LE certs (export?) or setup new LE on IIS?
|
||||
- [ ] **Traefik на RUVDS?** — IIS-only (port 80/443 direct) или traefik reverse proxy again?
|
||||
- [ ] **Backup strategy for RUVDS IIS** — VDS snapshot? IIS native backup?
|
||||
|
||||
## Notes
|
||||
|
||||
- **Windows Server 2025 Core** = GUI-less, PowerShell-only management. No Server Manager desktop.
|
||||
- **2GB RAM constraint** — IIS + 11 sites = tight. Monitor memory after pilot.
|
||||
- **Migration is transitional** — long-term snolla-on-node makes IIS obsolete. Don't over-engineer.
|
||||
|
||||
<!-- created-by: user-decision / 2026-05-22 / trigger: RUVDS purchased -->
|
||||
Reference in New Issue
Block a user