Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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:
El clúster conectado, que es una proyección en Azure de la infraestructura de Kubernetes. Para más información, consulte ¿Qué es Kubernetes habilitado para Azure Arc?.
Una extensión de clúster, que es un subrecurso del recurso de clúster conectado. La extensión Container Apps instala los recursos necesarios en el clúster conectado. Para más información sobre las extensiones de clúster, consulte Extensiones de clúster en Kubernetes habilitado para Azure Arc.
Una ubicación personalizada, que agrupa un grupo de extensiones y las asigna a un espacio de nombres para los recursos creados. Para más información, consulte Ubicaciones personalizadas basadas en Kubernetes habilitado para Azure Arc.
Un entorno conectado de Container Apps, que permite una configuración común entre aplicaciones pero no relacionada con las operaciones del clúster. Conceptualmente, se implementa en el recurso de ubicación personalizada y los desarrolladores de aplicaciones crean aplicaciones en este entorno.
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?
- ¿Se admiten identidades administradas?
- ¿Existen límites de escalado?
- ¿Qué registros se recopilan?
- ¿Qué debo hacer si veo un error de registro del proveedor?
- ¿Se puede instalar la extensión en los nodos de Windows?
- ¿Puedo implementar la extensión Container Apps en un clúster basado en Arm64?
¿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.