Publicado el

Antes de arreglar, saber qué hay

Todo sistema heredado tiene una parte documentada y otra que solo existe en producción. Cómo se hace un levantamiento que descubre lo que realmente corre antes de cambiar nada.

Línea de servicio Arquitectura Cloud

Lo que dice el papel y lo que dice producción

Quien hereda un sistema suele recibir algo de documentación: un diagrama, unas notas, quizá un documento de diseño de hace años. Lo que casi nunca recibe es la parte que importa: las tareas programadas que nadie recuerda, las dependencias entre sistemas que no aparecen en ningún dibujo, los accesos que se dieron "temporalmente" y siguen ahí.

Cambiar algo sin conocer esa parte es la forma más rápida de provocar un incidente.

La parte sumergida

Lo documentado y lo que correIceberg ilustrativo: lo documentado arriba, lo que solo existe en producción abajo.ARQUITECTURA · LEVANTAMIENTOLo que dice el papel y lo que corre▲ documentado▼ solo en producciónDiagramaServicios principalesBase de datosTareas programadas nocturnas14Dependencias implícitas23Credenciales sin dueño9Recursos huérfanos31Configuración hecha a mano17Documentado≈ 30 %Encontrado al levantar: ≈ 70 %Datos ilustrativos, no corresponden a ningún caso realN100F · n100f.com

Lo que suele aparecer al hacer un levantamiento:

  • Tareas programadas que mueven datos o limpian tablas cada noche.
  • Dependencias implícitas: un servicio que llama a otro por una dirección escrita en una configuración.
  • Accesos y credenciales sin dueño ni caducidad.
  • Recursos huérfanos que siguen costando dinero.
  • Configuraciones hechas a mano que no están en ningún código.

Cómo se hace

  1. Inventario desde la fuente real, no desde la documentación: las APIs del proveedor, la configuración de red, los registros de acceso y la facturación dicen lo que existe.
  2. Mapa de dependencias: quién habla con quién, observando el tráfico y la configuración, no preguntando.
  3. Comparación con lo documentado: cada diferencia se anota. Es la lista más valiosa del ejercicio.
  4. Lista de bloqueos, con tamaño: qué impide cambiar o migrar cada parte, y cuánto esfuerzo supone resolverlo.
  5. Documento vivo: el resultado se deja como documentación como código, para que el levantamiento no haya que repetirlo.

Lo que no hay que hacer durante el levantamiento

Arreglar cosas. Es tentador, pero cada cambio durante el levantamiento mueve el terreno que se está midiendo. Primero se entiende todo; después se decide qué tocar, en qué orden y con qué riesgo.


Cómo lo aplicamos: Arquitectura Cloud.

Si tu costo cloud crece sin que nadie sepa por qué, o tu arquitectura depende de quien la montó, conversemos.

Conversemos