Caso de estudio · Sanidad (software de historia clínica electrónica como servicio)
EHR Healthcare
Proveedor SaaS de historia clínica electrónica que crece de forma exponencial y abandona sus centros de colocation (uno con el contrato a punto de vencer) para ir a Google Cloud, con contenedores, bases de datos heterogéneas, integraciones heredadas con aseguradoras que se quedan on-premises, 99,9 % de disponibilidad y cumplimiento normativo sanitario.
Leer el caso oficial (PDF, en inglés) ↗
El caso en pocas palabras
EHR Healthcare vende software de historia clínica electrónica (EHR, electronic health record) como servicio a consultas médicas, hospitales y aseguradoras de varios países. El negocio crece de forma exponencial y su plataforma en varios centros de colocation no da abasto: caídas por configuraciones erróneas, falta de capacidad ante picos y monitorización inconsistente. Han elegido Google Cloud para sustituir la colocation, y hay prisa: el contrato de uno de los centros está a punto de vencer.
Es el caso clásico de migración + fiabilidad + cumplimiento sanitario. A diferencia de Altostrat o Cymbal, la IA aparece de forma más ligera (predicciones e informes sobre tendencias del sector).
Entorno técnico actual
| Pieza | Qué usan hoy | Lectura del arquitecto |
|---|---|---|
| Alojamiento | Varios centros de colocation; uno con el contrato a punto de vencer | Priorizar ese centro en la primera ola; plazos cortos. |
| Aplicaciones de cliente | Web; muchas recién contenerizadas en varios clústeres Kubernetes | Destino natural: GKE (regional) con gestión de flota. |
| Datos | Relacionales y NoSQL: MySQL, MS SQL Server, Redis, MongoDB | Cloud SQL / AlloyDB, Cloud SQL for SQL Server, Memorystore, Firestore with MongoDB compatibility o MongoDB Atlas. |
| Integraciones | Integraciones heredadas por ficheros y API con aseguradoras, on-premises | No se migran ni se actualizan por ahora; se sustituirán en unos años. Hace falta conectividad híbrida estable. |
| Identidad | Microsoft Active Directory | Google Cloud Directory Sync + SSO, o federación directa con Microsoft Entra ID / AD FS. |
| Monitorización | Varias herramientas open source; alertas por correo, a menudo ignoradas | Google Cloud Observability centralizada, SLO y alertas accionables. |
Requisitos
Requisitos de negocio (business requirements)
- Incorporar nuevas aseguradoras lo más rápido posible (on-board new insurance providers).
- Disponibilidad mínima del 99,9 % en todos los sistemas de cara al cliente.
- Visibilidad centralizada y acción proactiva sobre rendimiento y uso.
- Más capacidad de análisis sobre tendencias sanitarias.
- Reducir la latencia para todos los clientes.
- Mantener el cumplimiento normativo (maintain regulatory compliance).
- Reducir costes de administración de infraestructura.
- Hacer predicciones y generar informes sobre tendencias del sector a partir de los datos de proveedores.
Requisitos técnicos (technical requirements)
- Mantener las interfaces heredadas con aseguradoras, con conectividad tanto a sistemas on-premises como a proveedores cloud.
- Forma coherente de gestionar las aplicaciones de cliente basadas en contenedores.
- Conexión segura y de alto rendimiento entre on-premises y Google Cloud.
- Registro, retención de logs, monitorización y alertas coherentes (consistent logging, log retention, monitoring, and alerting).
- Mantener y gestionar varios entornos basados en contenedores.
- Escalar dinámicamente y aprovisionar entornos nuevos (dynamically scale and provision new environments).
- Crear interfaces para ingerir y procesar datos de nuevos proveedores.
Análisis del arquitecto
Problemas a resolver
- Plazo: un centro de datos cierra pronto. No hay tiempo para rediseñar todo: primero mover, después optimizar.
- Caídas por configuración manual y entornos «parecidos pero distintos»: hace falta infraestructura como código y configuración declarativa.
- Picos de tráfico: capacidad fija en colocation frente a autoescalado en la nube.
- Observabilidad: varias herramientas y alertas ignoradas (fatiga de alertas).
- Cumplimiento: datos de salud (PHI, protected health information) de clientes multinacionales.
- Integraciones heredadas que se quedan on-premises durante años.
Arquitectura propuesta
flowchart LR
subgraph ONP["On-premises / colocation restante"]
LEG["Integraciones heredadas con aseguradoras (ficheros y API)"]
AD["Microsoft Active Directory"]
end
subgraph GC["Google Cloud (proyecto por entorno, Shared VPC)"]
LB["Global external Application Load Balancer + Cloud Armor + Cloud CDN"]
GKE1["GKE regional (región A)"]
GKE2["GKE regional (región B)"]
SQL["Cloud SQL / AlloyDB (HA regional + réplica entre regiones)"]
MEM["Memorystore"]
DOC["Firestore with MongoDB compatibility o MongoDB Atlas"]
APIG["Apigee (APIs para aseguradoras)"]
ING["Pub/Sub + Dataflow (ingesta de proveedores)"]
HC["Cloud Healthcare API (FHIR / HL7v2)"]
BQ["BigQuery + BigQuery ML / Agent Platform"]
OBS["Cloud Logging + Monitoring (retención y alertas)"]
end
CI["Cloud Identity (GCDS + SSO)"]
AD --> CI
LEG <-->|"Dedicated Interconnect redundante (o HA VPN)"| GKE1
LB --> GKE1
LB --> GKE2
GKE1 --> SQL
GKE1 --> MEM
GKE1 --> DOC
APIG --> GKE1
APIG --> ING
ING --> HC
HC --> BQ
SQL --> BQ
GKE1 --> OBS
GKE2 --> OBS
Justificación servicio a servicio
Cómputo y gestión de contenedores
- GKE regional (plano de control y nodos repartidos en varias zonas) en al menos una región, con una segunda región para latencia y recuperación ante desastres. Un clúster regional bien dimensionado, con réplicas en varias zonas, es la base para el 99,9 %.
- Gestión de flota (fleet) con Config Sync y Policy Controller: la misma configuración en desarrollo, preproducción y producción, y en todos los clústeres. Responde a «consistent way to manage» y a «multiple container-based environments», y ataca la causa de las caídas (configuración manual).
- Terraform (o Infrastructure Manager) para aprovisionar entornos nuevos en minutos a partir de módulos: «dynamically scale and provision new environments».
- Autoescalado: Horizontal Pod Autoscaler y cluster autoscaler (o GKE Autopilot, que además reduce la administración) para los picos.
Red y latencia
- Global external Application Load Balancer con una IP anycast y backends en varias regiones: el usuario entra por el punto de presencia de Google más cercano (menor latencia para todos los clientes) y hay conmutación automática si una región falla.
- Cloud CDN para los contenidos estáticos de la web y Cloud Armor (WAF y protección DDoS).
- Shared VPC para separar la administración de red de los proyectos de aplicación.
- Dedicated Interconnect redundante (99,99 % con cuatro conexiones en dos áreas metropolitanas) o Partner Interconnect hacia el centro que se queda; HA VPN como solución rápida o de respaldo. Cubre «secure and high-performance connection» y el mantenimiento de las integraciones heredadas.
Datos
| Origen | Destino | Motivo |
|---|---|---|
| MySQL | Cloud SQL for MySQL (HA regional) | Servicio gestionado, conmutación automática entre zonas. |
| MS SQL Server | Cloud SQL for SQL Server | Licencia incluida o gestionada; menos administración. |
| Redis | Memorystore | Caché gestionada con alta disponibilidad. |
| MongoDB | Firestore with MongoDB compatibility (edición Enterprise) o MongoDB Atlas (Marketplace) | Mantener el código y los drivers de MongoDB. |
- Database Migration Service para MySQL y SQL Server con replicación continua y corte con poco tiempo de inactividad.
- Réplicas entre regiones (cross-region read replicas) para DR; promoción de la réplica si cae la región principal.
Integración con aseguradoras y proveedores
- Apigee como capa de API para aseguradoras nuevas: seguridad (OAuth, claves), cuotas, versionado, portal de desarrolladores. Es la forma de «on-board new insurance providers as quickly as possible»: se publica una API estándar en lugar de construir una integración a medida por cliente.
- Cloud Healthcare API para normalizar datos clínicos en estándares FHIR, HL7v2 y DICOM, con exportación a BigQuery.
- Pub/Sub + Dataflow para la ingesta y transformación de datos de proveedores nuevos (interfaces to ingest and process data).
Analítica y predicción
- BigQuery como almacén analítico de tendencias sanitarias (con datos desidentificados).
- BigQuery ML para predicciones sencillas (series temporales, regresión) sin sacar los datos, o Gemini Enterprise Agent Platform (antes Vertex AI) para modelos más complejos y para generar informes en lenguaje natural con Gemini.
- Looker para informes y cuadros de mando a clientes e internos.
Operación
- Cloud Logging con buckets de logs con retención configurada (y bloqueo de retención si la normativa lo exige), sinks agregados a nivel de organización y exportación a BigQuery o Cloud Storage para archivo a largo plazo: «consistent logging, log retention».
- Cloud Monitoring con SLO por servicio y alertas por burn rate hacia canales de guardia, no solo correo. Paneles comunes para todos los equipos: «centralized visibility and proactive action».
Seguridad y cumplimiento
- HIPAA: Google Cloud firma un Business Associate Agreement (BAA); solo los servicios cubiertos por el BAA deben tratar PHI. La responsabilidad es compartida: el cliente configura bien los controles.
- GDPR y residencia de datos para clientes europeos: política de organización Resource Location Restriction (
constraints/gcp.resourceLocations) para limitar regiones; valora Assured Workloads si hay requisitos de soberanía. - CMEK con Cloud KMS (o Cloud HSM) para las bases de datos y buckets con PHI.
- VPC Service Controls alrededor de los proyectos con datos clínicos para evitar exfiltración.
- Sensitive Data Protection para desidentificar antes de la analítica.
- Cloud Audit Logs (Admin Activity siempre activo; activar Data Access en los servicios con PHI).
- Identidad: Google Cloud Directory Sync sincroniza usuarios y grupos de Active Directory en Cloud Identity, con SSO contra AD FS o Microsoft Entra ID; así el directorio sigue siendo la fuente de verdad.
Migración
- Evaluación con Migration Center: inventario, dependencias y TCO; priorizar lo que corre en el centro cuyo contrato vence.
- Base (landing zone): jerarquía de recursos, Shared VPC, Interconnect, identidad, logging centralizado.
- Ola 1 (urgente): aplicaciones ya contenerizadas → GKE (redeploy con CI/CD); lo que siga en VMs → Migrate to Virtual Machines (rehost). Bases de datos con DMS.
- Ola 2: modernizar (Autopilot, servicios gestionados, Apigee) y cerrar el siguiente centro.
- Integraciones heredadas: retain (se quedan on-premises con conectividad híbrida) hasta su sustitución.
Costes y operaciones
- Menos administración: GKE Autopilot, Cloud SQL, Memorystore, Apigee gestionado.
- CUDs para la capacidad base estable; autoescalado para los picos.
- Coste de la conectividad: dimensionar Interconnect según el tráfico real; HA VPN si el volumen es bajo.
- Cloud Deploy y pipelines con pruebas para desplegar a menudo sin romper (continuous deployment del enunciado).
Qué preguntaría el examen sobre este caso
1. El contrato de un centro de datos vence en pocos meses. ¿Qué estrategia de migración eliges para lo que corre allí?
Rehost (lift and shift) con Migrate to Virtual Machines para las VMs y redeploy directo en GKE para lo ya contenerizado. Refactorizar todo antes del vencimiento es arriesgado. La modernización llega en una ola posterior.
2. ¿Cómo conviertes AD en la fuente de identidades para Google Cloud sin gestionar contraseñas en dos sitios?
Google Cloud Directory Sync para aprovisionar usuarios y grupos en Cloud Identity y SSO (SAML) contra AD FS o Microsoft Entra ID. Crear usuarios a mano en Cloud Identity o compartir cuentas no escala ni cumple.
3. Necesitan retención de logs coherente para auditorías de varios años.
Sink agregado de organización hacia un bucket de logs con retención configurada (y bloqueo si se exige inmutabilidad) o hacia Cloud Storage con Bucket Lock para archivo barato a largo plazo. Dejar la retención por defecto en cada proyecto no es coherente.
4. Las integraciones heredadas con aseguradoras no se van a migrar. ¿Qué haces con ellas?
Mantenerlas on-premises (retain) con Cloud Interconnect redundante (o HA VPN) hacia Google Cloud y exponer sus funciones a los nuevos servicios mediante Apigee si hace falta. Reescribirlas ahora contradice el caso.
5. ¿Cómo garantizas el 99,9 % de disponibilidad y baja latencia global?
GKE regional en al menos dos regiones detrás de un Global external Application Load Balancer, Cloud SQL con HA regional y réplica entre regiones, y Cloud CDN. Una sola VM o un clúster zonal no alcanza el objetivo con garantías.
6. Quieren incorporar aseguradoras nuevas en días, no meses.
Publicar APIs estándar con Apigee (seguridad, cuotas, portal de desarrolladores) y, para datos clínicos, formatos FHIR con Cloud Healthcare API. Construir una integración por ficheros a medida por cliente es precisamente lo que les frena.
7. Muchas caídas se deben a configuraciones distintas entre entornos. ¿Qué propones?
Infraestructura como código (Terraform) para crear entornos idénticos y Config Sync con Policy Controller para mantener la configuración de los clústeres desde Git, con revisiones y CI/CD. Documentar procedimientos manuales no evita la deriva.
8. Los datos de pacientes europeos deben quedarse en la UE.
Política de organización Resource Location Restriction con ubicaciones de la UE, recursos regionales en regiones europeas y, si se necesitan controles de soberanía adicionales, Assured Workloads. Confiar en que los desarrolladores elijan bien la región no es un control.
Palabras clave del caso y a qué servicio apuntan
| Si el enunciado dice… | Piensa en… |
|---|---|
| «lease about to expire», «colocation» | Rehost con Migrate to Virtual Machines; Migration Center para priorizar |
| «99.9 % availability», «reduce latency to all customers» | GKE regional multirregión, Global external Application Load Balancer, Cloud CDN, Cloud SQL HA |
| «consistent way to manage containers», «multiple environments» | GKE fleet, Config Sync, Policy Controller |
| «dynamically provision new environments» | Terraform / Infrastructure Manager, proyectos por entorno |
| «secure and high-performance connection» | Dedicated/Partner Interconnect, HA VPN |
| «legacy interfaces… no plan to move» | Retain + conectividad híbrida; Apigee como fachada |
| «Active Directory» | Google Cloud Directory Sync + SSO |
| «consistent logging, log retention, alerting» | Cloud Logging (sinks agregados, buckets con retención), Cloud Monitoring (SLO, alertas) |
| «on-board new insurance providers» | Apigee, Cloud Healthcare API (FHIR) |
| «regulatory compliance», «health records» | BAA de HIPAA, CMEK, VPC Service Controls, Sensitive Data Protection, Audit Logs |
| «predictions and reports on industry trends» | BigQuery, BigQuery ML, Agent Platform, Looker |