El IDP no es solo una herramienta, sino un conjunto de funciones que se complementan entre sí para satisfacer las necesidades específicas de los desarrolladores y ofrecerles una experiencia más fluida. Las implementaciones difieren, pero estos son los componentes más comunes.
Portal de desarrolladores: a menudo se le llama portal interno para desarrolladores, y es la interfaz principal con la que interactúan los desarrolladores. A menudo creado con herramientas de código abierto como Backstage, proporciona un panel central, catálogo de servicios, documentación, plantillas, complementos y flujos de trabajo. Es el panel de control de autoservicio para desarrolladores de la plataforma.
Catálogo de servicios: el catálogo de servicios es un inventario estructurado de todos los servicios, sistemas y recursos. Define la propiedad, las dependencias y proporciona otros metadatos para que todos sepan quién posee qué y cómo interactúan los servicios entre sí.
Andamios y plantillas: estos son proyectos técnicos para crear nuevos servicios que permiten a los usuarios crear rápidamente repositorios GitHub, configurar pipelines de CI/CD, aplicar configuraciones estándar, integrar registros y monitoreo y más. Los pipelines están preconfigurados y son reutilizables con las mejores prácticas integradas, por lo que los desarrolladores no tienen que diseñarlos desde cero.
Aprovisionamiento de infraestructura: esta capa se encarga de la creación y gestión de entornos, recursos y cargas de trabajo de aplicaciones en arquitecturas híbridas o multinube de diversos proveedores de nube, a menudo utilizando los principios de GitOps para la automatización.
Gestión de entornos: en muchas organizaciones, los entornos de desarrollo, de pruebas y de producción se van desajustando con el tiempo debido a diferencias de configuración, dependencias incompatibles y datos incoherentes. Un IDP aborda esto fomentando la paridad del entorno, eliminando la ambigüedad y haciendo que los entornos sean más predecibles.
Observabilidad: la visibilidad está integrada en el comportamiento del sistema de forma predeterminada, lo que proporciona insights en tiempo real, incluidos registros, métricas y rastreos.
Gestión de secretos y configuración: las claves API , las credenciales y las variables de entorno se gestionan de forma segura, lo que ayuda a garantizar que los secretos nunca se incluyan de forma fija en el código y que el acceso esté controlado y sea auditable.
Gobernanza: las políticas de seguridad y cumplimiento se aplican automáticamente, y los controles de gobernanza, como las tablas de puntuación y el control de acceso basado en roles (RBAC), definen quién puede desplegar, quién puede acceder a qué y cómo se aprueban los flujos de trabajo.
Documentación: en lugar de estar dispersa, la documentación se encuentra junto a los servicios y se puede encontrar a través del portal.