[A04.P005] F5 completada: BD sysdasuten restaurada en dasu-sql4 (RESTORE 26s, CHECKDB OK). OpenSSH y credenciales configurados.
This commit is contained in:
@@ -13,5 +13,7 @@
|
||||
"srv-ns8:rmonla": "eyJpdiI6IlJ4cHZkbFpJQWVsTTl3T1YiLCJ0YWciOiJ3WTZGMDEvNHNsZm1wZm5jMEF4Q1lBPT0iLCJkYXRhIjoibFljUHRYTm44bUxvQjhCa2tBPT0ifQ==",
|
||||
"dasu-sql3:Administrador": "eyJpdiI6IlRiMDh3U1N2aVhTcDYzbzciLCJ0YWciOiI5NVNyUDFlMXlrM0dGRlNqUXhLbEt3PT0iLCJkYXRhIjoiVkp2V09zSjczcS96UktTSlZTOFdBdz09In0=",
|
||||
"srvv-nginx-rm:rmonla": "eyJpdiI6ImFsQnk5UjhLaDFYWHJsWnciLCJ0YWciOiJJaEtCS215ekkwYVdFR0ZHNzFVN0VBPT0iLCJkYXRhIjoiUkcvSS9sMjhoQnFpRmZobFZBPT0ifQ==",
|
||||
"srv-xen01:rmonla": "eyJpdiI6ImdURFJuRDNucGpETkxVVjAiLCJ0YWciOiJWdnNzdmRxRGthS0RnUTBWeE1xYUpRPT0iLCJkYXRhIjoiaGszT2lYRkNONVVWakFhQjdnPT0ifQ=="
|
||||
"srv-xen01:rmonla": "eyJpdiI6ImdURFJuRDNucGpETkxVVjAiLCJ0YWciOiJWdnNzdmRxRGthS0RnUTBWeE1xYUpRPT0iLCJkYXRhIjoiaGszT2lYRkNONVVWakFhQjdnPT0ifQ==",
|
||||
"dasu-sql4:Administrador": "eyJpdiI6ImQzc09sRmo2NEZBbHZmN2IiLCJ0YWciOiJxK3Z3RU9uZG1QMXNUV1hJbEFmV3d3PT0iLCJkYXRhIjoicXd5dDI4bHBkeFNhRk1yTzluczlxdz09In0=",
|
||||
"dasu-sql4:sa": "eyJpdiI6Ik43aWR5d2RacFVFR3pyNysiLCJ0YWciOiJxeVAyTmxtYXloNTdFTVlvMFphQ2hRPT0iLCJkYXRhIjoiT0lrR1FGMXRVZ0czYU5PK1ZFcG8wUT09In0="
|
||||
}
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"id":237,"cmd":"Stop-Service sshd; (Get-Content C:\\ProgramData\\ssh\\sshd_config) -replace \\\"#Port 22\\\",\\\"Port 7022\\\" | Set-Content C:\\ProgramData\\ssh\\sshd_config; Start-Service sshd; New-NetFirewallRule -Name sshd7022 -DisplayName OpenSSH-7022 -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 7022; Get-Service sshd | Select-Object Status"}
|
||||
{"id":245,"cmd":"sqlcmd -S localhost -U sa -P UTNlarioja00DASU -Q \"SELECT name, state_desc, recovery_model_desc, compatibility_level FROM sys.databases WHERE name = 'sysdasuten'; DBCC CHECKDB('sysdasuten') WITH NO_INFOMSGS;\""}
|
||||
@@ -5,10 +5,19 @@
|
||||
**Código:** A04.P005
|
||||
**Fecha:** 27 de marzo de 2026
|
||||
**Autor:** Sistema ADN
|
||||
**Versión:** 3.1
|
||||
**Estado:** ⏸️ PAUSADO POR CORTE DE LUZ (Backup en srv-dasu listo, pendiente transferencia a dasu-sql4 + RESTORE)
|
||||
**Versión:** 4.0
|
||||
**Estado:** 🚧 EN EJECUCIÓN (F5 completada — BD restaurada, pendiente validación con PC cliente)
|
||||
**Dependencia:** A04.P001 (Red srv-dasu)
|
||||
|
||||
## 📊 Progreso General
|
||||
|
||||
- **Fase 1: Preparación** [██████████] 100% (6/6) ✅
|
||||
- **Fase 2: VM SQL Server** [██████████] 100% (9/9) ✅
|
||||
- **Fase 3: VM PC Cliente** [██████████] 100% (9/9) ✅
|
||||
- **Fase 4: Nueva VM dasu-sql4** [██████████] 100% (12/12) ✅
|
||||
- **Fase 5: Migración BD** [██████████] 100% (5/5) ✅
|
||||
- **Fase 6: Validación** [░░░░░░░░░░] 0% (0/6) ⏳
|
||||
|
||||
## 📋 Resumen Ejecutivo
|
||||
|
||||
Evaluar si el sistema DASUTEN puede operar **sin la dependencia de un Domain Controller (AD DS)**, utilizando únicamente un SQL Server y una PC cliente en modo **Workgroup**. Esto simplifica significativamente la infraestructura y elimina los problemas de red asociados al dominio.
|
||||
@@ -31,8 +40,9 @@ Internet
|
||||
Router ISP (192.168.1.1 — gateway confirmado)
|
||||
│
|
||||
├── srv-dasu → DHCP del ISP: 192.168.1.13 (vmbr0 bridge sobre enp33s0)
|
||||
│ ├── dasu-sql2 (VM 103) → DHCP del ISP: 192.168.1.14 ✅ VM creada
|
||||
│ └── dasu-pcv2 (VM 104) → DHCP del ISP: 192.168.1.15 ✅ VM creada
|
||||
│ ├── dasu-sql2 (VM 103) → ⚠️ Descartada (sin conectividad IP)
|
||||
│ ├── dasu-pcv2 (VM 104) → ⚠️ Descartada (sin conectividad IP)
|
||||
│ └── dasu-sql4 (VM 106) → DHCP del ISP: 192.168.1.11 ✅ ACTIVA (SQL+BD restaurada)
|
||||
│
|
||||
└── dasu-pc → DHCP del ISP (PC física cliente)
|
||||
```
|
||||
@@ -98,15 +108,15 @@ Crear dos VMs nuevas (SQL Server + PC cliente) en `srv-dasu`, instalar el sistem
|
||||
- [x] **4.N11:** Instalar SQL Server 2019 Enterprise ✅. Instalado desatendido vía W-Zombi (comandos individuales). Disco F: 120GB (GPT/NTFS "SQLData") con carpetas DATA/LOG/BACKUP/TEMPDB. Auth mixta, SA habilitado, TCP 1433 abierto. Verificado con `sqlcmd @@VERSION`.
|
||||
- [x] **4.N12:** Backup comprimido generado en origen ✅. `BACKUP DATABASE ... WITH COMPRESSION` ejecutado en `srvv-fenix` vía `tiny_tds`. Archivo: `E:\BK_SQL\sysdasuten_compressed_ADN.bak`.
|
||||
|
||||
### ⏳ **FASE 5: Migración de Base de Datos a dasu-sql4**
|
||||
### ✅ **FASE 5: Migración de Base de Datos a dasu-sql4** *(completada 2026-04-11)*
|
||||
|
||||
- [x] **5.1:** Obtener backup comprimido de DASUTEN ✅. Generado con `BACKUP DATABASE ... WITH COMPRESSION` en `srvv-fenix` vía `tiny_tds` (script `dasuten_backup_origen.rb`). Archivo: `sysdasuten_compressed_ADN.bak` en `E:\BK_SQL` (~1.33 GB).
|
||||
- [x] **5.2a:** Descargar `.bak` desde `srvv-fenix` → `srv-ns8` (SMB) ✅. 1333 MB descargados a `/var/tmp/` en ~17 seg (76 MB/s).
|
||||
- [x] **5.2b:** Transferir `.bak` desde `srv-ns8` → `srv-dasu` (SCP vía Tailscale) ✅. Archivo en `/tmp/sysdasuten_compressed_ADN.bak`.
|
||||
- [ ] **5.2c:** Transferir `.bak` desde `srv-dasu` → `dasu-sql4`. ⚠️ **Bloqueado**: Python HTTP server falla con archivos grandes (`iwr`/`WebClient` → "conexión terminada inesperadamente"). **Estrategia aprobada**: instalar OpenSSH Server en dasu-sql4 (puerto 7022) y transferir vía SCP directamente por LAN. `Add-WindowsCapability` fue enviado pero interrumpido por corte de luz.
|
||||
- [ ] **5.3:** Restaurar base de datos con `RESTORE DATABASE` en dasu-sql4.
|
||||
- [ ] **5.4:** Verificar integridad de la base restaurada.
|
||||
- [ ] **5.5:** Registrar credenciales dasu-sql4:sa en bóveda candados.
|
||||
- [x] **5.2b:** Transferir `.bak` desde `srv-ns8` → `srv-dasu` (SCP vía Tailscale) ✅. Re-transferido el 2026-04-11 (se perdió del `/tmp` tmpfs tras reboot por corte de luz).
|
||||
- [x] **5.2c:** Transferir `.bak` desde `srv-dasu` → `dasu-sql4` ✅. OpenSSH Server instalado vía W-Zombi (puerto 7022). SCP exitoso usando credencial `dasu-sql3:Administrador` de bóveda. Archivo en `F:\BACKUP\sysdasuten_compressed_ADN.bak` (1.397 GB).
|
||||
- [x] **5.3:** Restaurar base de datos con `RESTORE DATABASE` en dasu-sql4 ✅. RESTORE con MOVE a `F:\DATA` y `F:\LOG`. Procesó 1.186.793 páginas en **26 segundos** (354 MB/s).
|
||||
- [x] **5.4:** Verificar integridad de la base restaurada ✅. `DBCC CHECKDB` sin errores. BD ONLINE, recovery FULL, compatibilidad nivel 100.
|
||||
- [x] **5.5:** Registrar credenciales dasu-sql4:Administrador y dasu-sql4:sa en bóveda candados ✅.
|
||||
|
||||
### ⏳ **FASE 6: Validación con PC cliente**
|
||||
|
||||
@@ -171,3 +181,10 @@ Crear dos VMs nuevas (SQL Server + PC cliente) en `srv-dasu`, instalar el sistem
|
||||
- **Plan integración (pausado)**: [A04.P002_Integracion-DASU-PC.md](A04.P002_Integracion-DASU-PC.md)
|
||||
- **Nodos**: [srv-dasu](../../../nodos/srv-dasu.md) | [dasu-sql4](../../../nodos/dasu-sql4.md) | [srv-ns8](../../../nodos/srv-ns8.md)
|
||||
- **Legacy archivado**: [_hist_P2601_dasuten.md](_hist_P2601_dasuten.md)
|
||||
|
||||
## 📝 Lecciones Aprendidas (2026-04-11)
|
||||
|
||||
- **`/tmp` es tmpfs en srv-dasu:** Archivos en `/tmp` se pierden al reiniciar (montado en RAM). Para transferencias intermedias críticas usar `/var/tmp` o directorio persistente.
|
||||
- **DHCP del ISP cambia IPs tras reboot:** `dasu-sql4` obtuvo `.11` en vez de `.26` tras el corte de luz. Verificar siempre la IP actual usando ARP + MAC antes de asumir que la IP anterior sigue vigente.
|
||||
- **W-Zombi no sobrevive reboots del agente:** El script PS1 debe re-lanzarse manualmente desde la consola Proxmox/noVNC tras un reinicio inesperado de la VM. Considerar crear una Scheduled Task.
|
||||
- **QEMU Guest Agent no inicia automáticamente:** Tras corte de luz, el servicio `QEMU-GA` quedó caído. Verificar que el servicio esté en `Automatic` startup.
|
||||
|
||||
+18
-8
@@ -4,8 +4,8 @@
|
||||
- **Hostname**: `dasu-sql4`
|
||||
- **Rol**: SQL Server 2019 Enterprise (DASUTEN) — Modo Workgroup
|
||||
- **OS**: Windows Server 2022 Standard Evaluation (Español, con GUI)
|
||||
- **Estado**: ⏸️ Pausado — Corte de luz en oficina DASUTEN (SQL Server estaba operativo)
|
||||
- **Última Actualización**: 2026-04-10
|
||||
- **Estado**: 🚧 Operativo — BD sysdasuten restaurada, pendiente validación con cliente
|
||||
- **Última Actualización**: 2026-04-11
|
||||
- **Padre**: srv-dasu
|
||||
|
||||
## Virtualización
|
||||
@@ -25,7 +25,7 @@
|
||||
- **Autostart**: sí (`onboot: 1`)
|
||||
|
||||
## Red
|
||||
- **IP LAN**: 192.168.1.26 (DHCP ISP)
|
||||
- **IP LAN**: 192.168.1.11 (DHCP ISP — cambió de .26 tras reboot por corte de luz)
|
||||
- **IP Tailscale**: 100.107.15.82 (⚠️ inestable, usar relay srv-dasu)
|
||||
- **Gateway**: 192.168.1.1
|
||||
- **DNS**: ISP (automático)
|
||||
@@ -42,7 +42,10 @@
|
||||
- TCP/IP: Puerto 1433 habilitado
|
||||
- Servicio: Running / Automatic
|
||||
- sqlcmd: `C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\SQLCMD.EXE`
|
||||
- **OpenSSH Server**: ⚠️ Instalación enviada (`Add-WindowsCapability`) pero interrumpida por corte de luz. Puerto objetivo: 7022.
|
||||
- **OpenSSH Server**: ✅ Instalado y operativo
|
||||
- Puerto: 7022
|
||||
- Servicio: Running / Automatic
|
||||
- Firewall: Regla `sshd7022` TCP Inbound Allow
|
||||
|
||||
## Disco F: (SQLData — 120GB NTFS GPT)
|
||||
- `F:\DATA` — Bases de datos de usuario
|
||||
@@ -77,16 +80,23 @@
|
||||
- 2026-04-10 10:47: Login SA verificado con sqlcmd (@@VERSION OK)
|
||||
- 2026-04-10 11:01: Instalación OpenSSH Server enviada vía W-Zombi (Add-WindowsCapability)
|
||||
- 2026-04-10 ~11:05: Corte de luz en oficina DASUTEN — srv-dasu y dasu-sql4 caídos
|
||||
- 2026-04-11 09:05: Verificación post-corte: VM running, IP cambió a 192.168.1.11, QEMU-GA caído, W-Zombi caído
|
||||
- 2026-04-11 09:15: W-Zombi relay re-levantado, agente PS1 re-lanzado desde consola Proxmox
|
||||
- 2026-04-11 09:17: OpenSSH Server instalado vía W-Zombi (`Add-WindowsCapability`), configurado puerto 7022
|
||||
- 2026-04-11 09:26: `.bak` re-transferido NS8→srv-dasu (SCP Tailscale), luego srv-dasu→dasu-sql4 (SCP LAN :7022)
|
||||
- 2026-04-11 09:58: RESTORE DATABASE sysdasuten completado (26 seg, 354 MB/s)
|
||||
- 2026-04-11 10:05: DBCC CHECKDB sin errores — BD ONLINE, integridad verificada
|
||||
|
||||
## Pendiente (al reanudar)
|
||||
- [ ] Verificar si `Add-WindowsCapability OpenSSH.Server` completó antes del corte
|
||||
- [ ] Configurar sshd en puerto 7022 + firewall
|
||||
- [ ] SCP backup desde srv-dasu (`/tmp/sysdasuten_compressed_ADN.bak`, 1.33GB) a `F:\BACKUP\`
|
||||
- [ ] Restaurar base de datos DASUTEN con `RESTORE DATABASE`
|
||||
- [x] Verificar si `Add-WindowsCapability OpenSSH.Server` completó antes del corte — NO completó, se reinstaló
|
||||
- [x] Configurar sshd en puerto 7022 + firewall
|
||||
- [x] SCP backup desde srv-dasu a `F:\BACKUP\`
|
||||
- [x] Restaurar base de datos DASUTEN con `RESTORE DATABASE`
|
||||
- [ ] Registrar credenciales en bóveda candados
|
||||
- [ ] Desmontar ISOs de CD una vez finalizada la migración
|
||||
- [ ] Evaluar estabilidad de Tailscale
|
||||
- [ ] Limpiar temporales: `/var/tmp/sysdasuten_compressed_ADN.bak` en NS8, `/tmp/` en srv-dasu
|
||||
- [ ] Validar con PC cliente DASUTEN
|
||||
|
||||
## Referencias
|
||||
- **Plan**: [A04.P005_DASUTEN-sin-DC.md](docs/ambito/dtic-DASUTEN/A04.P005_DASUTEN-sin-DC.md)
|
||||
|
||||
Reference in New Issue
Block a user