Introducción a los espacios aislados de Azure Container Apps (versión preliminar)

Los espacios aislados de Azure Container Apps proporcionan entornos informáticos rápidos, seguros y efímeros con capacidades integradas para suspender y reanudar. Los entornos aislados son un tipo de recurso de primera clase (Microsoft.App/SandboxGroups) en Container Apps, junto con aplicaciones, trabajos y sesiones dinámicas.

Importante

Para administrar y crear entornos aislados, necesita el rol de Azure Propietario de datos de Container Apps SandboxGroup. Asigne este rol a todos los usuarios que creen y administren espacios aislados.

Es posible que los espacios aislados creados durante la versión preliminar no sean compatibles con versiones futuras y deban volver a crearse.

La API del SDK de Python y los comandos de la CLI de Azure Container Apps pueden cambiar durante la fase de versión preliminar.

Crear y administrar entornos de espacio aislado

Puede crear y administrar espacios aislados en el portal Sandboxes o mediante programación mediante Azure Container Apps CLI o SDK.

Características clave de los espacios aislados de Container Apps

  • Inicio en menos de un segundo: los entornos aislados se aprovisionan a partir de grupos preinicializados para una disponibilidad casi instantánea.

  • Aislamiento sólido: Cada espacio aislado se ejecuta dentro de su propio entorno seguro, adecuado para la ejecución de código no confiable.

  • Escala a cero: No pagas nada cuando los sandboxes están inactivos.

  • Escalabilidad horizontal: el servicio puede escalar hasta cientos de espacios aislados simultáneos a petición.

  • Compatibilidad con imágenes de contenedor de OCI: utilice sus propias imágenes de contenedor como sistemas de archivos raíz de espacio aislado.

  • Suspensión y reanudación: Cree una instantánea del estado completo, incluidos la memoria y el disco, y reanúdelo más adelante con tiempos de restauración inferiores a un segundo.

  • Control del ciclo de vida: administra el ciclo de vida completo del espacio aislado, incluidas las instantáneas de estado, el almacenamiento persistente y las directivas de red.

Cuándo utilizar espacios aislados

Use espacios aislados cuando necesite entornos de proceso aislados con control de ciclo de vida explícito, estado persistente o acceso programable a través de SDK (próximamente).

Scenario ¿Utilizar espacios aislados? Por qué
Ejecución de código de IA con preservación del estado Suspender entre tareas, reanudar con el contexto completo intacto
Entornos de desarrollo Entornos bajo demanda y suspendibles que conservan el estado entre sesiones
Flujos de trabajo del agente Proporcionar a los agentes de inteligencia artificial áreas de trabajo persistentes y aisladas a través de los límites de la tarea
Sesiones de usuario interactivas Cada usuario obtiene su propio entorno de proceso aislado
Computación multiinquilino segura Aislamiento sólido para ejecutar cargas de trabajo no fiables a partir de múltiples inquilinos
Escalar cargas de trabajo Escalar de cero a cientos de espacios aislados a petición
Canalizaciones de CI/CD Entornos efímeros de compilación y prueba que se escalan a cero cuando no están en uso

Elegir la opción de proceso adecuada de Container Apps

Utilice la siguiente tabla para seleccionar el tipo de proceso de Container Apps que mejor se adapte a su carga de trabajo.

Tipo de cálculo Más adecuado para Lifecycle Estado
Aplicaciones Servicios de larga duración, API, aplicaciones web Continuo Sin estado (almacenes de estado externos)
Trabajos Tareas de ejecución hasta completarse, procesamiento por lotes Iniciar → ejecutar → completado Sin estado
Sesiones dinámicas Ejecución de código administrado, scripts generados por LLM Administrado por grupo de sesiones Efímero
Sandboxes Cómputo aislado programable con control del ciclo de vida Puede administrar: crear, suspender, reanudar, eliminar Con estado (instantáneas, volúmenes)

Conceptos clave

Prerequisites

Para crear o administrar espacios aislados, necesita la asignación del rol de Azure Propietario de datos de Container Apps SandboxGroup. Sin este rol, no puede realizar operaciones en el espacio aislado. Asigne este rol en el ámbito deseado (Azure suscripción o grupo de recursos de Azure) en el portal de Azure o mediante el CLI de Azure.

Antes de ejecutar el siguiente comando, reemplace los marcadores de posición entre <> por sus propios valores.

az role assignment create \
  --assignee "<USER_EMAIL_OR_OBJECT_ID>" \
  --role "Container Apps SandboxGroup Data Owner" \
  --scope "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP_NAME>"

Grupos de espacio aislado

Un grupo de espacio aislado es el límite de administración de nivel superior para espacios aislados. Es un recurso de Azure Resource Manager (ARM) que se crea en un grupo de recursos y una región. Todos los espacios aislados, las imágenes de disco, las instantáneas, los volúmenes y los secretos pertenecen a un grupo de espacios aislados.

Utilice grupos de entornos aislados para organizar los entornos aislados por aplicación, equipo o entorno.

Espacios aislados

Un entorno aislado es una instancia de computación aislada e independiente dentro de un grupo de espacios aislados. Cada espacio aislado se ejecuta a partir de una imagen de disco o instantánea y tiene su propia CPU, memoria, disco y límite de red.

Se interactúa con los espacios aislados ejecutando comandos, administrando archivos, exponiendo puertos y controlando el estado del ciclo de vida.

Imágenes de disco

Las imágenes de disco son imágenes de contenedor OCI convertidas para usarlas como sistemas de archivos raíz para entornos aislados. Puede usar imágenes públicas o crear imágenes privadas a partir de sus propios registros de contenedor.

Puede compilar imágenes de disco desde:

  • Imágenes públicas: imágenes precompiladas disponibles para todos los grupos de sandbox.
  • Imágenes de registro de contenedores: extraiga imágenes de registros públicos o privados con autenticación opcional.
  • Dockerfiles: cree imágenes personalizadas con un Dockerfile.

Snapshots

Las instantáneas capturan el estado completo de un sandbox en ejecución, incluyendo la memoria y el disco. Use instantáneas para:

  • Suspender y reanudar: pause un espacio aislado y reanúdelo más adelante con todos los procesos y los datos intactos.
  • Clonar entornos: cree nuevos espacios aislados a partir de un estado fiable conocido.
  • Compartir líneas base: distribuya entornos preconfigurados en todo el equipo.

Volumes

Microsoft administra volúmenes y proporciona almacenamiento persistente que se puede montar en espacios aislados. Hay dos tipos de volumen disponibles:

Tipo de volumen Description
Blob de Azure Comparta datos entre espacios aislados (cargas y descargas, artefactos persistentes). Se puede montar en varios espacios aislados a la vez.
Disco de datos Volumen de alto rendimiento para bases de datos, cachés de compilación y grandes conjuntos de trabajo. Solo se puede montar en un espacio aislado a la vez.

Estados de ciclo de vida

Los espacios aislados pasan por los siguientes estados:

Estado Description
Correr Ejecución activa
Suspendido Suspendido automáticamente con estado completo conservado (memoria y disco)
Inactivo Suspendido por el sistema, puede reanudarse automáticamente a petición
Detenido Detención iniciada por el usuario
Reanudando Despertar del estado suspendido o inactivo
Creando Aprovisionamiento en curso
Parar Apagado en curso
Eliminación Desmontaje en curso

Puede configurar directivas de ciclo de vida automático para cada espacio aislado:

  • Suspensión automática: suspende los espacios aislados inactivos después de un tiempo de espera configurable. Elija entre el modo de memoria (instantánea completa) o el modo de disco (conservar solo el disco).

  • Eliminación automática: elimine automáticamente los espacios aislados después de un número de días especificado.

Architecture

Los espacios aislados utilizan una arquitectura de dos planos:

Avión Endpoint Operations
Plano de control de ARM management.azure.com Crear, actualizar, eliminar y listar grupos de entorno de pruebas. Administrar conexiones de red virtual.
Plano de datos de ADC management.azuredevcompute.io Gestiona entornos aislados, imágenes de disco, instantáneas, archivos, volúmenes, credenciales, puertos y políticas de salida.

Puede crear y administrar grupos de espacios aislado a través del plano de control de ARM. Todas las operaciones sobre entornos aislados individuales y sus recursos se realizan a través del plano de datos de ADC, dentro del ámbito de un grupo específico de entornos aislados.

Niveles de recursos

A cada espacio aislado se le asigna un nivel de recurso que comprueba su asignación de CPU, memoria y disco.

Nivel Unidad Central de Procesamiento (CPU) Memoria Disco
XS 0,25 núcleos 0.5 GB 20 GB
S 0,5 núcleos 1 GB 20 GB
M (valor predeterminado) 1 núcleo 2 GB 20 GB
L 2 núcleos 4 GB 40 GB

Consideraciones

Tenga en cuenta estos puntos al trabajar con entornos de pruebas aislados:

  • Se requiere Entra ID: Solo las cuentas de Microsoft Entra ID pueden acceder a entornos aislados. No se admiten cuentas personales de Microsoft.

  • Disponibilidad de características en versión preliminar: algunas funcionalidades, como la integración de red virtual personalizada y la identidad administrada para la extracción de imágenes, requieren marcas de características durante el período de versión preliminar.

  • Controles de red: puede configurar directivas de salida para controlar el tráfico saliente desde espacios aislados, incluidas las reglas de permiso o denegación basadas en dominio y las reglas de red basadas en CIDR.

Espacios aislados frente a sesiones dinámicas

Los espacios aislados y las sesiones dinámicas proporcionan entornos de proceso aislados en Container Apps, pero satisfacen necesidades diferentes.

Sesiones dinámicas Espacios aislados
Patrón de acceso Enrutamiento de solicitudes HTTP mediante un extremo de gestión del grupo de sesiones Control directo mediante el SDK y la CLI sobre entornos aislados individuales
Estado Efímero, destruido después del enfriamiento Con estado con suspensión, reanudación e instantáneas
Control de desarrollador Pool gestiona la asignación y el ciclo de vida Gestiona el ciclo de vida, los archivos, los puertos y las políticas del sandbox.
Modelo de imagen Intérprete de código (integrado) o contenedor personalizado Imágenes de disco (OCI), instantáneas, paquetes de contenido
Almacenamiento persistente No disponible Volúmenes (Azure Blob, Disco de datos)
Creación de redes Aislamiento básico Directivas de salida, integración de red virtual, administración de puertos
SDK API REST a través del punto de conexión de grupo Próximamente: SDK dedicados (C#, Python)

Elija sesiones dinámicas cuando necesite una experiencia de ejecución administrada que abstrae la infraestructura. Elige Sandboxes cuando necesites control programable sobre capacidad de proceso aislada con persistencia de estado.