Puerta de enlace de API en Azure API Management
SE APLICA A: Todos los niveles de API Management
En este artículo se proporciona información sobre los roles y características del componente de puerta de enlace de API Management y se comparan las puertas de enlace que puede implementar.
Información relacionada:
Para obtener información general sobre escenarios, componentes y conceptos de API Management, consulte ¿Qué es Azure API Management?
Para obtener más información sobre los niveles de servicio y las características de API Management, consulte:
Rol de la puerta de enlace
La puerta de enlace de API Management (también denominada plano de datos o tiempo de ejecución) es el componente de servicio responsable de las solicitudes de API de proxy, la aplicación de directivas y la recopilación de telemetría.
En concreto, la puerta de enlace:
- Actúa como una fachada para los servicios back-end mediante la aceptación de llamadas API y el enrutamiento a los back-end adecuados
- Comprueba las claves de API y otras credenciales, como los tokens de JWT y los certificados presentados con solicitudes
- Aplica cuotas de uso y límites de frecuencia
- Opcionalmente, transforma solicitudes y respuestas como se especifica en las instrucciones de directiva
- Si está configurada, almacena en caché las respuestas para mejorar la latencia de respuesta y minimizar la carga en los servicios back-end
- Emite registros, métricas y seguimientos para la supervisión, los informes y la solución de problemas
Nota
Todas las solicitudes a la puerta de enlace de API Management, incluidas las rechazadas por las configuraciones de directiva, cuentan con los límites de velocidad configurados, las cuotas y los límites de facturación si se aplican en el nivel de servicio.
Administradas y autohospedadas
API Management ofrece puertas de enlace autohospedadas y administradas:
Administrada: la puerta de enlace administrada es el componente de puerta de enlace predeterminado que se implementa en Azure para cada instancia de API Management en cada nivel de servicio. Una puerta de enlace administrada independiente también se puede asociar a un área de trabajo en una instancia de API Management. Con la puerta de enlace administrada, todo el tráfico de API fluye a través de Azure, independientemente de dónde se hospeden los back-end que implementan las API.
Nota:
Debido a las diferencias en la arquitectura de servicio subyacente, las puertas de enlace proporcionadas en los distintos niveles de servicio de API Management tienen algunas diferencias en las funcionalidades. Para más información, consulte la sección Comparación de características: Puertas de enlace administradas frente a autohospedadas.
Autohospedada: la puerta de enlace autohospedada es una versión opcional y en contenedores de la puerta de enlace administrada predeterminada que está disponible en los niveles de servicio seleccionados. Resulta útil para escenarios híbridos y de varias nubes en los que es necesario ejecutar las puertas de enlace fuera de Azure en los mismos entornos donde se hospedan los back-end de API. La puerta de enlace autohospedada permite a los clientes con infraestructura de TI híbrida administrar API hospedadas en el entorno local y entre nubes desde un único servicio API Management en Azure.
La puerta de enlace autohospedada se empaqueta como un contenedor de Docker basado en Linux y se implementa normalmente en Kubernetes, incluidos Azure Kubernetes Service y Kubernetes habilitado para Azure Arc.
Cada puerta de enlace autohospedada está asociada a un recurso de puerta de enlace en una instancia de API Management basada en la nube desde la que recibe actualizaciones de configuración y comunica el estado.
Comparación de características: puertas de enlace administradas frente a autohospedadas
En las tablas siguientes se comparan las características disponibles en las siguientes puertas de enlace de API Management:
- Clásico: la puerta de enlace administrada disponible en los niveles de servicio Desarrollador, Básico, Estándar y Premium (anteriormente agrupados como niveles dedicados)
- V2: la puerta de enlace administrada disponible en los niveles Básico v2 y Estándar v2
- Consumo: la puerta de enlace administrada disponible en el nivel Consumo
- Autohospedado: la puerta de enlace autohospedada opcional disponible en los niveles de servicio seleccionados
- Área de trabajo: la puerta de enlace administrada disponible en un área de trabajo en los niveles de servicio seleccionados
Nota:
- Algunas características de puertas de enlace administradas y autohospedadas solo se admiten en determinados niveles de servicio o con determinados entornos de implementación para puertas de enlace autohospedadas.
- Para las características admitidas actuales de la puerta de enlace autohospedada, asegúrese de que ha actualizado a la versión principal más reciente de la imagen de contenedor de puerta de enlace autohospedada.
- Consulte también las limitaciones de la puerta de enlace autohospedada.
Infraestructura
Compatibilidad de características | Clásico | V2 | Consumo | Autohospedado | Área de trabajo |
---|---|---|---|---|---|
Dominios personalizados | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
Memoria caché integrada | ✔️ | ✔️ | ❌ | ❌ | ✔️ |
Caché externa compatible con Redis | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
Inserción de red virtual | Desarrollador, Premium | ❌ | ❌ | ✔️1,2 | ✔️ |
Puntos de conexión privados entrantes | Desarrollador, Básico, Estándar, Premium | ❌ | ❌ | ❌ | ❌ |
Integración de la red virtual saliente | ❌ | Standard V2 | ❌ | ❌ | ✔️ |
Zonas de disponibilidad | Premium | ✔️3 | ❌ | ✔️1 | ✔️3 |
Implementación en varias regiones | Premium | ❌ | ❌ | ✔️1 | ❌ |
Certificados raíz de CA para la validación de certificados | ✔️ | ✔️ | ❌ | ✔️4 | ❌ |
Certificados de dominio personalizado | Desarrollador, Básico, Estándar, Premium | ❌ | ✔️ | ❌ | ❌ |
Configuración de TLS | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
HTTP/2 (cliente a puerta de enlace) | ✔️5 | ✔️5 | ❌ | ✔️ | ❌ |
HTTP/2 (puerta de enlace a back-end) | ❌ | ❌ | ❌ | ✔️ | ❌ |
Detección de amenazas de API con Defender para API | ✔️ | ✔️ | ❌ | ❌ | ❌ |
1 Depende de cómo se implemente la puerta de enlace, pero es responsabilidad del cliente.
2 Conectividad a la puerta de enlace autohospedada v2 punto de conexión de configuración requiere la resolución DNS del nombre de host del punto de conexión.
3 De forma predeterminada, dos zonas están habilitadas; esto no es configurable.
4 Los certificados raíz de CA para la puerta de enlace autohospedada se administran por separado en cada puerta de enlace
5 Es necesario habilitar el protocolo de cliente.
API de back-end
Compatibilidad de características | Clásico | V2 | Consumo | Autohospedado | Área de trabajo |
---|---|---|---|---|---|
Especificación OpenAPI | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Especificación WSDL | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Especificación WSDL | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Aplicación lógica | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
App Service | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Aplicación de función | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Instancia de Container Apps | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Service Fabric | Desarrollador, Premium | ❌ | ❌ | ❌ | ❌ |
GraphQL de tránsito | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Synthetic GraphQL | ✔️ | ✔️ | ✔️1 | ✔️1 | ❌ |
WebSocket de tránsito | ✔️ | ✔️ | ❌ | ✔️ | ❌ |
gRPC de tránsito | ❌ | ❌ | ❌ | ✔️ | ❌ |
OData | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Azure OpenAI | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Disyuntor en back-end | ✔️ | ✔️ | ❌ | ✔️ | ✔️ |
Grupo de back-end con equilibrio de carga | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
1 Las suscripciones de GraphQL sintéticas (versión preliminar) no se admiten.
Directivas
Las puertas de enlace administradas y autohospedadas admiten todas las directivas disponibles en las definiciones de directivas con las siguientes excepciones.
Compatibilidad de características | Clásico | V2 | Consumo | Autohospedado1 | Área de trabajo |
---|---|---|---|---|---|
Integración de Dapr | ❌ | ❌ | ❌ | ✔️ | ❌ |
Solucionadores de GraphQL y validación de GraphQL | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
Obtener un código de autorización | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
Cuota y límite de velocidad | ✔️ | ✔️2 | ✔️3 | ✔️4 | ✔️ |
1 Las directivas configuradas no admitidas por la puerta de enlace autohospedada se omiten durante la ejecución de la directiva.
2 La directiva de cuota por clave no está disponible en los niveles v2.
3 El límite de velocidad por clave, cuota por clave y directivas de límite de tokens de Azure OpenAI no están disponibles en el nivel Consumo.
4 Los recuentos de límites de frecuencia de una puerta de enlace autohospedada se pueden configurar de forma que se sincronicen localmente (entre instancias de puerta de enlace en nodos de clúster), por ejemplo, mediante la implementación de gráficos de Helm para Kubernetes o mediante las plantillas de implementación de Azure Portal. Pero los recuentos de límites de volumen no se sincronizan con otros recursos de puerta de enlace configurados en la instancia de API Management, incluida la puerta de enlace administrada en la nube. Más información
Supervisión
Para más información sobre las opciones de supervisión, consulte Observabilidad en Azure API Management.
Compatibilidad de características | Clásico | V2 | Consumo | Autohospedado | Área de trabajo |
---|---|---|---|---|---|
Análisis de API | ✔️ | ✔️1 | ❌ | ❌ | ❌ |
Application Insights | ✔️ | ✔️ | ✔️ | ✔️2 | ✔️ |
Registro a través de Event Hubs | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Métricas en Azure Monitor | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
OpenTelemetry Collector | ❌ | ❌ | ❌ | ✔️ | ❌ |
Solicitud de registros en Azure Monitor y Log Analytics | ✔️ | ✔️ | ❌ | ❌3 | ❌ |
Métricas y registros de la nube | ❌ | ❌ | ❌ | ✔️ | ❌ |
Seguimiento de solicitudes | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
1 Los niveles v2 admiten el análisis basado en Azure Monitor.
2 La puerta de enlace usa el búfer de memoria integrado de Azure Application Insight y no proporciona garantías de entrega.
3 Actualmente, la puerta de enlace autohospedada no envía registros de recursos (registros de diagnóstico) a Azure Monitor. Sin embargo, puede enviar métricas a Azure Monitor o configurar y conservar registros localmente donde se implementa la puerta de enlace autohospedada.
Autenticación y autorización
Las puertas de enlace administradas y autohospedadas admiten todas las opciones de autenticación y autorización de API disponibles con las siguientes excepciones.
Compatibilidad de características | Clásico | V2 | Consumo | Autohospedado | Área de trabajo |
---|---|---|---|---|---|
Administrador de credenciales | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
Rendimiento y escalado de la puerta de enlace
Importante
El rendimiento se ve afectado por el número y la tasa de conexiones de cliente simultáneas, el tipo y el número de directivas configuradas, los tamaños de carga, el rendimiento de la API de back-end y otros factores. El rendimiento de la puerta de enlace autohospedada también depende de la capacidad de proceso (CPU y memoria) del host donde se ejecuta. Realice pruebas de carga de puerta de enlace mediante condiciones de producción previstas para determinar el rendimiento esperado con precisión.
Puerta de enlace administrada
Para obtener el rendimiento máximo estimado de la puerta de enlace en los niveles de servicio de API Management, consulte los precios de API Management.
Importante
Las cifras de rendimiento solo se presentan para la información y no se deben confiar en para la planificación de la capacidad y el presupuesto. Consulte los precios de API Management para obtener más información.
Niveles clásicos
- Escale la capacidad de la puerta de enlace agregando y quitando unidades de escalado o actualizando el nivel de servicio. (El escalado no está disponible en el nivel Desarrollador).
- En los niveles Básico, Estándar y Premium puede configurar la escalabilidad automática de Azure Monitor.
- En el nivel Premium puede agregar y distribuir la capacidad de la puerta de enlace entre varias regiones.
Niveles v2
- Escale la capacidad de la puerta de enlace agregando y quitando unidades de escalado o actualizando el nivel de servicio.
Nivel de consumo
- Las instancias de API Management en el nivel de consumo se escala automáticamente en función del tráfico.
Puerta de enlace autohospedada
- En entornos como Kubernetes, agregue varias réplicas de puerta de enlace para controlar el uso esperado.
- Opcionalmente, configure el escalado automático para satisfacer las demandas de tráfico.
Puerta de enlace del área de trabajo
Escale la capacidad al agregar y quitar unidades de escalado en la puerta de enlace del área de trabajo.
Contenido relacionado
Obtenga más información sobre:
- API Management en un mundo híbrido y multinube
- Métrica de capacidad para tomar decisiones de escalado
- Funcionalidades de observabilidad en API Management
- Funcionalidades de puerta de enlace de GenAI en API Management