Automatización de la plataforma y DevOps para el acelerador de zonas de aterrizaje de API Management
Este artículo proporciona consideraciones de diseño y recomendaciones para la automatización de la plataforma y DevOps en el acelerador de zonas de aterrizaje de API Management. La automatización de la plataforma y DevOps proporciona las oportunidades para modernizar el enfoque de implementación del entorno con opciones de infraestructura como código.
Obtenga más información sobre el área de diseño de la automatización de la plataforma y DevOps.
Consideraciones de diseño
- Cada equipo de API puede insertar actualizaciones de su propio repositorio para desarrolladores en su propia instancia de desarrollo de API Management.
- ¿Qué significa esto desde una perspectiva de planeamiento de red?
- ¿Qué ocurre con otros entornos que no son de producción (por ejemplo, QA y el proceso de almacenamiento provisional)?
- Tenga en cuenta cómo se deben administrar o versionar productos y otras entidades, especialmente si varios equipos usan los mismos productos.
- Considere la estrategia de pruebas para las API y las directivas.
Recomendaciones de diseño
- Un equipo central (por ejemplo, un equipo de administración de API Management) administra el entorno de producción de API Management.
- Las configuraciones de API Management se representan como plantillas de Resource Manager o plantillas equivalentes de Bicep o Terraform, y se debe adoptar una mentalidad de infraestructura como código.
- El equipo de administración de API Management publicará los cambios de configuración en el entorno de producción de API Management desde un repositorio de Git (repositorio del anunciante) propiedad del equipo de administración de API Management.
- Cada equipo de API individual puede bifurcar el repositorio del anunciante para que funcione su propio repositorio para desarrolladores.
- Cada equipo puede utilizar API Management APIOps o la extensión API Management para Visual Studio Code para extraer los artefactos relevantes de su instancia de API Management de desarrollo. Estos artefactos se basan en Azure Resource Manager y se deben confirmar en el repositorio de Git del equipo de API.
Nota
No use la integración de Git de API Management.
- Las plantillas de servicio y las plantillas compartidas deben estar en repositorios independientes.
- Los cambios en los artefactos se deben realizar en los artefactos extraídos y, a continuación, se deben confirmar en Git. Deben implementarse en un entorno de desarrollo.
- Para promover a los entornos centralizados (almacenamiento provisional, producción, etc.), los equipos de API pueden enviar una solicitud de incorporación de cambios (PR) para combinar sus cambios en el repositorio del anunciante.
- El equipo de administración de API Management valida la solicitud de incorporación de cambios.
- Idealmente, la mayoría de las validaciones se automatizan como parte del envío de una solicitud de incorporación de cambios.
- Las plantillas de infraestructura como código deben estar en un repositorio diferente e implementarse en una canalización de implementación.
- Separe la implementación de la infraestructura de la implementación de aplicaciones. La infraestructura básica cambia con menos frecuencia que las aplicaciones. Trate cada tipo de implementación como un flujo y una canalización independientes.
- Una vez que los cambios se aprueban y se combinan correctamente, el equipo de administración de API Management puede implementarlos en el entorno administrado centralmente (almacenamiento provisional, producción) en coordinación con las programaciones acordadas por el equipo de la API.
Supuestos de la escala empresarial
Las siguientes son suposiciones que se han tenido en cuenta en el desarrollo del acelerador de zonas de aterrizaje de API Management:
- Uso de archivos Bicep de infraestructura como código para implementar la infraestructura y back-end de API Management.
- Implementación de plantillas de infraestructura mediante canalizaciones.