Azure Containerized Deployment
Deploy agents to Azure Container Apps for consistent, low-latency execution.
Container Apps runs Agent Kernel's built-in REST server (RESTAPI.run), so it supports synchronous JSON REST and SSE token streaming (execution.mode: stream) with streaming-capable frameworks (OpenAI Agents SDK, LangGraph, Google ADK). Queue-based execution and WebSocket delivery are currently AWS-only; see the Deployment Overview.
Architecture
Prerequisites
- Docker installed
- Azure CLI configured
- Azure Container Registry (ACR) created
- Agent Kernel with Azure extras
Deployment
Refer to example Azure Container Apps implementation which leverages Agent Kernel's terraform module for Container Apps deployment.
The module is provider-agnostic — it does not configure the azurerm provider itself, so your root main.tf must configure it and pass it into the module explicitly:
provider "azurerm" {
features {}
resource_provider_registrations = "none"
}
module "container_app" {
source = "yaalalabs/ak-containerized/azurerm"
version = "0.8.0"
providers = { azurerm = azurerm }
# ... other configuration
}
See the ak-azure/containerized module docs for details.
Advantages
- No cold starts - containers always warm
- Consistent performance - predictable latency
- Better for high traffic - efficient resource usage
- Full control - customize container, resources, etc.
- High availability - multi-zone deployment with automatic failover
- Fault tolerant - automatic recovery and health-based routing
- KEDA scaling - Event-driven autoscaling built-in
Fault Tolerance
Azure Container Apps deployment provides comprehensive fault tolerance features with extensive configurability.
Multi-Zone Architecture
Replicas are automatically distributed across availability zones:
Benefits:
- Survives entire zone failures
- No single point of failure
- Automatic traffic distribution
- Geographic redundancy
Automatic Replica Recovery
Container Apps maintains desired replica count with automatic recovery:
Features:
- Failed replicas automatically restarted
- Desired count maintained at all times
- Rolling deployments with zero downtime
- Gradual replica replacement during updates
- Built-in revision management