M365Con 2027 – conferencia online gratuita · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Arquitectura de plataformas internas para desarrolladores en Azure: construyendo la base

By ·

¡Bienvenido de nuevo al blog complementario del podcast! En el análisis de hoy vamos a ampliar un tema que ha dominado los debates de arquitectura en toda la industria tecnológica: las plataformas internas para desarrolladores, o IDP (Internal Developer Platforms). Si escuchaste nuestro último episodio, sabrás que hablamos de cómo la carga cognitiva está minando silenciosamente la velocidad de los

Automatically translated with AI from the original post. Read the English original

▶ BLOGArchitecting InternalDeveloper Platforms on…M365.FM
Titelbild: Architecting Internal Developer Platforms on Azure: Building the Foundation

¡Bienvenido de nuevo al blog complementario del podcast! En el análisis de hoy vamos a ampliar un tema que ha dominado los debates de arquitectura en toda la industria tecnológica: las plataformas internas para desarrolladores, o IDP (Internal Developer Platforms). Si escuchaste nuestro último episodio, sabrás que hablamos de cómo la carga cognitiva está minando silenciosamente la velocidad de los desarrolladores. Hoy damos un paso más. Vamos a ver cómo puedes construir una IDP sólida, escalable y segura de forma nativa en Microsoft Azure, aprovechando los paradigmas modernos de la nube, las estrategias de contenedorización y los principios de infraestructura como código.

La organización de ingeniería empresarial moderna se enfrenta a una paradoja. Le damos a los desarrolladores un poder sin precedentes gracias a la nube, pero al mismo tiempo los sepultamos bajo una complejidad operativa enorme. Dedican más tiempo a lidiar con topologías de red, configuraciones de gestión de identidades y accesos, y canales de despliegue que a escribir lógica de negocio. Una IDP resuelve esto actuando como una capa de abstracción cuidadosamente diseñada. No restringe a los desarrolladores; al contrario, les da poder al proporcionarles caminos dorados que llevan a producción de forma rápida y segura. Veamos cómo diseñar esta base en Azure.

Introducción a las plataformas internas para desarrolladores en Azure

Antes de entrar en los detalles técnicos de los servicios de Azure, definamos qué es realmente una IDP y por qué Azure está en una posición única para alojarla. Una IDP no es un único software que se compra listo para usar. Es una colección productizada de herramientas internas, servicios y flujos de trabajo de infraestructura, ensamblados en un portal para desarrolladores cohesionado. Se sitúa entre tus desarrolladores y la infraestructura de nube subyacente, traduciendo intenciones de alto nivel en recursos de nube seguros, conformes y listos para producción.

Azure ofrece un ecosistema amplísimo de primitivas de nivel empresarial. Sin embargo, exponer directamente estas primitivas en bruto a los desarrolladores suele provocar deriva de configuración, vulnerabilidades de seguridad y recursos huérfanos. Al diseñar una IDP en Azure, los ingenieros de plataforma pueden envolver estos servicios nativos en plantillas estandarizadas y con criterios definidos. Esto significa que un desarrollador puede solicitar un entorno de microservicios completamente configurado, con una base de datos y una capa de caché asociadas, sin necesidad de tener un máster en redes de Azure o en control de acceso basado en roles.

Pilares fundamentales de una IDP moderna

Al diseñar tu plataforma, debes anclar tus decisiones en cuatro pilares fundamentales: autoservicio, caminos dorados, abstracción y barreras de protección. Sin ellos, tu IDP corre el riesgo de convertirse en otro sistema de tickets o en una página de wiki sin documentar.

Autoservicio sin la sobrecarga operativa

El autoservicio es el corazón de cualquier IDP. En una configuración tradicional, cuando un desarrollador necesita un nuevo entorno de staging o una instancia de Cosmos DB, abre un ticket en Jira, espera a que el equipo de plataforma lo revise, espera a que operaciones lo aprovisione y confía en que la configuración coincida con producción. Una IDP en Azure automatiza todo este ciclo de vida. A través de un portal centralizado, los desarrolladores pueden activar flujos de trabajo de autoservicio que aprovisionan recursos en minutos, reduciendo drásticamente el tiempo de entrega de los cambios.

Caminos dorados y capas de abstracción

Los caminos dorados son formas respaldadas y con criterio definido de hacer las cosas dentro de tu organización. No eliminan la flexibilidad; eliminan la fricción. Al abstraer la complejidad subyacente de Azure detrás de archivos de configuración sencillos, como un único manifiesto de aplicación, los desarrolladores pueden declarar lo que quieren desplegar, mientras que la IDP se encarga de cómo se despliega en Azure.

Aprovechar los servicios de Azure para una infraestructura nativa

Construir una IDP en Azure implica elegir los servicios fundamentales adecuados para gestionar el cómputo, el almacenamiento, la red y la identidad. Veamos cómo puedes asignar los requisitos de la plataforma a los servicios nativos de Azure.

Gestión de identidades y accesos con Microsoft Entra ID

La seguridad empieza por la identidad. Microsoft Entra ID (antes Azure Active Directory) es la columna vertebral de seguridad de tu IDP. Al integrar el portal de tu plataforma con Entra ID, puedes aplicar el inicio de sesión único (SSO) y asignar los grupos de desarrolladores a funciones concretas de la plataforma. Con las identidades administradas de Azure, tus aplicaciones desplegadas pueden acceder de forma segura a otros recursos de Azure, como Azure Key Vault o Azure SQL, sin incluir credenciales en archivos de configuración ni en repositorios.

Abstracciones de datos y almacenamiento

Las aplicaciones necesitan datos, pero los equipos de plataforma no deberían tener que crear bases de datos manualmente cada vez que un equipo inicia un proyecto nuevo. Puedes usar Azure Service Operator para Kubernetes o plantillas de Azure Resource Manager (ARM) envueltas en flujos de trabajo de autoservicio para aprovisionar bajo demanda servicios administrados como Azure Database for PostgreSQL, Azure Cosmos DB o Azure Cache for Redis. El IDP garantiza que estas bases de datos se aprovisionen con cifrado en reposo, reglas de firewall adecuadas y copias de seguridad automatizadas habilitadas por defecto.

Estrategias de contenerización y orquestación

Los contenedores son la lingua franca de las aplicaciones nativas de la nube modernas. Estandarizar la forma en que se empaquetan y ejecutan las aplicaciones es esencial para que un IDP tenga éxito.

Azure Kubernetes Service como motor de cómputo

Para la mayoría de las empresas modernas, Azure Kubernetes Service (AKS) es el motor de cómputo principal del IDP. AKS aporta la escalabilidad, la portabilidad y las capacidades de orquestación necesarias para ejecutar microservicios a gran escala. Sin embargo, los desarrolladores no deberían tener que escribir manifiestos YAML de Kubernetes en bruto. Tu IDP debe ocultar la complejidad de los controladores Ingress, las directivas de red y las reclamaciones de volúmenes persistentes tras abstracciones de carga de trabajo de alto nivel.

Registros de contenedores y seguridad de la cadena de suministro

Azure Container Registry (ACR) se integra sin fricciones con AKS y forma una parte crítica de tu estrategia de contenedores. Tu IDP debe automatizar el proceso desde la confirmación del código hasta la compilación de la imagen del contenedor, aprovechando herramientas como Microsoft Defender for Containers para analizar las imágenes en busca de vulnerabilidades antes de que lleguen a un clúster. Al integrar ACR en los flujos de trabajo de tu plataforma, garantizas que solo se puedan desplegar en los entornos de producción imágenes de confianza y analizadas.

Principios de infraestructura como código para la ingeniería de plataformas

La infraestructura como código (IaC) no es negociable al construir un IDP. Cada elemento de infraestructura que gestiona tu plataforma debe definirse, versionarse y desplegarse mediante canalizaciones automatizadas.

Elegir tu herramienta de IaC en el ecosistema de Azure

Azure admite una amplia variedad de herramientas de IaC. Bicep es el lenguaje específico de dominio de Microsoft para desplegar recursos de Azure de forma declarativa, con una sintaxis más limpia que las plantillas ARM tradicionales y compatibilidad nativa con las funciones de Azure. Como alternativa, Terraform (o OpenTofu) está muy extendido en entornos multinube y empresariales. La herramienta que elijas, tu IDP debe abstraer estos scripts para que el desarrollador no tenga que tratarlos directamente, ejecutándolos en segundo plano cuando se aprueba una solicitud de aprovisionamiento.

Gestión del estado y diseño modular

Para que tu plataforma sea fácil de mantener, crea una biblioteca de módulos de infraestructura reutilizables. Por ejemplo, crea un "web-api-module" estándar que agrupe una implementación de App Service o AKS con una base de datos asociada y una instancia de supervisión. Almacena el estado de tu IaC de forma segura en cuentas de Azure Storage con el control de versiones de blobs habilitado, de modo que el equipo de ingeniería de plataformas mantenga un registro de auditoría fiable de todos los cambios de infraestructura en todas las suscripciones.

Incorporar barreras de seguridad y cumplimiento

Un temor habitual entre la dirección al adoptar plataformas de autoservicio es perder el control sobre la seguridad y el cumplimiento. Un IDP eficaz da la vuelta a este planteamiento: desplaza la seguridad hacia la izquierda e integra las barreras de seguridad directamente en los flujos de trabajo de la plataforma.

Azure Policy como mecanismo de aplicación automatizado

Azure Policy es tu mejor aliado al diseñar barreras de seguridad para la plataforma. En lugar de auditar recursos manualmente, puedes usar Azure Policy para aplicar automáticamente los estándares de la organización, como restringir la creación de recursos a regiones de Azure concretas, exigir cifrado en todas las cuentas de almacenamiento o imponer etiquetas de red específicas. Si un desarrollador intenta aprovisionar un recurso que incumple estas políticas, el IDP lo detecta durante la fase de validación y ofrece una respuesta inmediata.

Gestión de secretos e integración con Key Vault

Los secretos codificados en el código son una vulnerabilidad de seguridad recurrente. Tu IDP debería aplicar por defecto una gestión segura de secretos. Integra Azure Key Vault en tus flujos de implementación para que los secretos de aplicación, las claves de API y las cadenas de conexión se inyecten de forma segura en tiempo de ejecución, totalmente protegidos frente a la vista de los desarrolladores y de los repositorios de control de código fuente.

Creación del portal de desarrolladores de autoservicio

Todos estos elementos fundamentales —identidad, cómputo, IaC y seguridad— deben reunirse en un único punto de acceso: el portal de desarrolladores. Es la interfaz de usuario de tu IDP.

Adopción de Backstage para portales centrados en Azure

Los frameworks de código abierto como Backstage de Spotify se han convertido en el estándar de facto para crear portales de desarrolladores. Backstage te permite crear un catálogo de software, gestionar plantillas (conocidas como software templates) e integrar plugins. Puedes desarrollar plugins personalizados de Backstage que se comuniquen directamente con las API de Azure, lo que permite a los desarrolladores crear recursos de Azure, consultar el estado de los servicios y hacer seguimiento de los pipelines de implementación desde un único panel.

Diseño de una experiencia de desarrollo intuitiva

Al diseñar tu portal, trata a los desarrolladores como clientes. La experiencia de usuario debe ser fluida y sin fricciones. Un desarrollador debería poder acceder al portal, seleccionar la plantilla "Microservicio con backend SQL", rellenar un formulario sencillo con el nombre del servicio y el equipo propietario, y hacer clic en enviar. En cuestión de minutos, el IDP debería aprovisionar la infraestructura de Azure, generar el repositorio de GitHub con el código base, configurar el pipeline de CI/CD y registrar el servicio en el catálogo interno.

Medición del éxito y próximos pasos

Crear un IDP no es un proyecto con fecha de finalización fija, sino un recorrido de producto continuo. Una vez que tu plataforma esté en marcha, necesitas medir su impacto para justificar la inversión y mejorar continuamente la experiencia del desarrollador.

Métricas clave que debes seguir

Céntrate en las métricas que reflejan la velocidad de desarrollo y la estabilidad de la plataforma. Mide el tiempo hasta el primer "hello world" para los nuevos desarrolladores que se incorporan a la empresa, la frecuencia de implementación, la tasa de fallos de cambios y el tiempo medio de recuperación (MTTR). Además, realiza encuestas periódicas de satisfacción de los desarrolladores para entender dónde siguen existiendo puntos de fricción en los flujos de trabajo de tu plataforma.

Hacia dónde ir a partir de aquí

Empieza poco a poco. No intentes construir una gran plataforma empresarial el primer día. Elige un único caso de uso, quizá la estandarización de implementaciones de contenedores o la automatización del aprovisionamiento de bases de datos, y crea en torno a él una plataforma mínima viable. Recoge comentarios de los equipos que adoptan la plataforma desde el principio, itera sobre tus caminos dorados y amplía gradualmente las capacidades de tu plataforma en toda la organización.

Al diseñar tu Internal Developer Platform de forma nativa en Azure, no solo automatizas las implementaciones: estás construyendo un motor para un crecimiento sostenible de la ingeniería. Gracias por leer, y no dejes de escuchar el episodio del podcast para una conversación en audio más profunda sobre este tema. ¡Feliz diseño!

Microsoft Azure Azure Cosmos DB

Related articles

RSS