Compartir a través de


Azure Container Apps en Azure Arc

Puede ejecutar Container Apps en una instancia de Azure Arc-enabled AKS o AKS en un clúster de Azure Local.

La ejecución de un clúster de Kubernetes habilitado para Azure Arc permite que:

  • Los desarrolladores puedan aprovechar las características de Container Apps
  • Los administradores de TI puedan mantener el cumplimiento corporativo mediante el hospedaje de Container Apps en la infraestructura interna.

Aprenda a configurar el clúster de Kubernetes para Container Apps mediante Configuración de un clúster de Kubernetes habilitado para Azure Arc para ejecutar Azure Container Apps

A medida que configure el clúster, lleve a cabo estas acciones:

Limitaciones

Las siguientes limitaciones se aplican a Azure Container Apps en Kubernetes habilitado para Azure Arc.

Limitación Detalles
Regiones de Azure compatibles Centro de EE. UU., Este de Asia, Este de EE. UU., Centro-norte de EE. UU., Sudeste de Asia, Centro de Suecia, Sur de Reino Unido, Oeste de Europa, Oeste de EE. UU.
Requisito de redes del clúster Debe admitir el tipo de servicio LoadBalancer
Requisitos del sistema operativo del nodo Solo Linux.
Característica: identidades administradas No disponible
Característica: extracción de imágenes de ACR con identidad administrada No disponible (depende de las identidades administradas)
Registros Log Analytics se debe configurar con la extensión de clúster; no por cada aplicación

Se admiten las siguientes características:

  • Etiquetas
  • Métricas
  • Autenticación sencilla
  • Transmisión de registro
  • Resiliencia
  • Dominios personalizados
  • Trabajos de Container Apps
  • Administración de revisiones
  • Consola del contenedor de aplicaciones

Importante

Si realiza la implementación en AKS en Azure Local, asegúrese de haber configurado HAProxy como equilibrador de carga antes de intentar instalar la extensión.

Recursos creados por la extensión Container Apps

Cuando la extensión Container Apps se instala en el clúster de Kubernetes habilitado para Azure Arc, se crean varios recursos en el espacio de nombres de versión especificado. Estos pods permiten que el clúster sea una extensión del proveedor de recursos Microsoft.App para admitir la administración y el funcionamiento de las aplicaciones.

Opcionalmente, puede optar por que la extensión instale KEDA para el escalado controlado por eventos. Pero solo se permite una instalación de KEDA en el clúster. Si tiene una instalación existente, deshabilite la instalación de KEDA mientras instala la extensión de clúster.

En la tabla siguiente se describe el rol de cada revisión que se crea de manera automática:

Vaina Descripción Número de instancias Unidad Central de Procesamiento (CPU) Memoria Tipo
<extensionName>-k8se-activator Se usa como parte de la canalización de escalado 2 100 millicpu 500 MB ReplicaSet
<extensionName>-k8se-billing Generación de registros de facturación 3 100 millicpu 100 MB ReplicaSet
<extensionName>-k8se-containerapp-controller Pod de operador principal que crea recursos en el clúster y mantiene el estado de los componentes. 2 100 millicpu 1 GB ReplicaSet
<extensionName>-k8se-envoy Capa de proxy de front-end para todas las solicitudes del plano de datos. Enruta el tráfico entrante a las aplicaciones correctas. 3 1 núcleo 1536 MB ReplicaSet
<extensionName>-k8se-envoy-controller Operador, que genera la configuración de Envoy 2 200 millicpu 500 MB ReplicaSet
<extensionName>-k8se-event-processor Un destino de enrutamiento alternativo para ayudar con las aplicaciones que se han escalado a cero mientras el sistema obtiene la primera instancia disponible. 2 100 millicpu 500 MB ReplicaSet
<extensionName>-k8se-http-scaler Supervisa el volumen de solicitudes entrantes para proporcionar información de escalado a KEDA. 1 100 millicpu 500 MB ReplicaSet
<extensionName>-k8se-keda-cosmosdb-scaler Escalador de Cosmos DB de KEDA 1 10 m 128 MB ReplicaSet
<extensionName>-k8se-keda-metrics-apiserver Servidor de métricas de KEDA 1 1 núcleo 1000 MB ReplicaSet
<extensionName>-k8se-keda-operator Escala las cargas de trabajo dentro y fuera de 0/1 a N instancias 1 100 millicpu 500 MB ReplicaSet
<extensionName>-k8se-log-processor Recopila registros de las aplicaciones y otros componentes y los envía a Log Analytics. 2 200 millicpu 500 MB DaemonSet
<extensionName>-k8se-mdm Agente de métricas y registros 2 500 millicpu 500 MB ReplicaSet
dapr-metrics Pod de métricas de Dapr 1 100 millicpu 500 MB ReplicaSet
dapr-operator Administra las actualizaciones de componentes y los puntos de conexión de servicio para Dapr 1 100 millicpu 500 MB ReplicaSet
dapr-placement-server Se usa solo para actores: crea tablas de asignación que asignan instancias de actor a los pods 1 100 millicpu 500 MB StatefulSet
dapr-sentry Administra mTLS entre los servicios y actúa como entidad de certificación 2 800 millicpu 200 MB ReplicaSet

Preguntas más frecuentes sobre Azure Container Apps en Azure Arc

¿Qué características de Container Apps se admiten?

Consulte el portal para obtener la lista más actualizada. Las características no admitidas están atenuadas en el portal.

¿Se admiten identidades administradas?

No se admiten las identidades administradas. No se pueden asignar identidades administradas a las aplicaciones cuando se ejecutan en Azure Arc. Si la aplicación necesita una identidad para trabajar con otro recurso de Azure, considere la posibilidad de usar una entidad de servicio de aplicación en su lugar.

¿Existen límites de escalado?

Todas las aplicaciones implementadas con Azure Container Apps en Kubernetes habilitado para Azure Arc se pueden escalar dentro de los límites del clúster de Kubernetes subyacente. Si el clúster se queda sin recursos de proceso disponibles (CPU y memoria principalmente), las aplicaciones se escalan al número de instancias de la aplicación que Kubernetes pueda programar con el recurso disponible.

¿Qué registros se recopilan?

Los registros de los componentes del sistema y las aplicaciones se escriben en la salida estándar.

Ambos tipos de registro se pueden recopilar para su análisis mediante las herramientas estándar de Kubernetes. También puede configurar la extensión de clúster de entorno de aplicación con un área de trabajo de Log Analytics y enviar todos los registros a esa área de trabajo.

De manera predeterminada, los registros de los componentes del sistema se envían al equipo de Azure. No se envían los registros de aplicaciones. Para evitar que estos registros se transfieran, establezca logProcessor.enabled=false como un valor de configuración de extensión. Este valor de configuración deshabilita el reenvío de la aplicación al área de trabajo de Log Analytics. Es posible que deshabilitar el procesador de registro afecte al tiempo necesario para cualquier caso de soporte técnico y se le pedirá que recopile registros de la salida estándar mediante otros medios.

¿Qué debo hacer si veo un error de registro del proveedor?

Al crear un recurso de entorno de conectado de Azure Container Apps, es posible que se muestre el error "No se encontró ningún proveedor de recursos registrado" para algunas suscripciones. Los detalles del error pueden incluir un conjunto de ubicaciones y de versiones de API que se consideran válidas. Si se devuelve este mensaje de error, la suscripción se debe volver a registrar con el proveedor Microsoft.App. Volver a registrar el proveedor no tiene ningún efecto en las aplicaciones o API existentes. Para volver a registrarse, use la CLI de Azure para ejecutar az provider register --namespace Microsoft.App --wait. Después, vuelva a intentar ejecutar el comando del entorno conectado.

¿Se puede instalar la extensión en los nodos de Windows?

No, la extensión no se puede instalar en los nodos de Windows. La extensión admite la instalación en nodos de Linuxsolo.

¿Puedo implementar la extensión Container Apps en un clúster basado en Arm64?

No. No se admiten clústeres basados en Arm64.