Skip to main content
This guide helps you select the correct scale level for your workload. By default, the ARM template deploys the with two replicas on a D4 Dedicated workload profile. Because Azure Container Apps doesn’t support autoscaling, you must choose the replica count when you deploy.
This page covers sizing for the (the Data Productivity Cloud agent) deployed via Azure Container Apps. If you’re sizing a —sometimes referred to as a CDC agent, used for change data capture pipelines—read Sizing Streaming runners instead.
For general installation steps, read Maia runner installation using an ARM template. For guidance on when to add capacity, read Scaling best practices.

Key concepts

Runner instances and replicas

In Azure Container Apps terminology, a instance maps directly to a Container App replica. Increasing the number of instances means increasing the replica count in the ARM template.

Workload profile nodes

The D4 Dedicated workload profile provisions nodes with 4 vCPU and 16 GiB memory. Each replica is allocated 2 vCPU and 4 GiB memory, so each D4 node accommodates exactly two replicas. The minimumCount and maximumCount settings on the workload profile control how many nodes are provisioned.

Fixed scaling

Azure Container Apps doesn’t currently support autoscaling for the . Set minReplicas equal to maxReplicas to maintain a fixed replica count. Choose your scale level based on the expected number of concurrent pipeline jobs.

Sizing reference

The table below shows the ARM template values to set at each scale level. Apply changes to both the container app scale settings and the workload profile.
maximumCount is set one higher than minimumCount to provide a spare node for rolling updates. This doesn’t enable autoscaling.

ARM template parameters

Container app scale settings

Set both minReplicas and maxReplicas to the same value to maintain a fixed replica count:

Workload profile settings

Set minimumCount to the number of D4 nodes required for your chosen replica count. Set maximumCount to minimumCount + 1:
minimumCount = number of replicas ÷ 2 (round up for odd replica counts). maximumCount = minimumCount + 1.

Subnet requirements

Each Container Apps environment requires a dedicated subnet. The subnet must meet the following requirements at all scale levels:
  • Delegated to Microsoft.App/environments.
  • Service endpoints enabled: Microsoft.Storage, Microsoft.KeyVault, and Microsoft.ContainerRegistry.
  • Default outbound access disabled (--default-outbound-access false); a NAT gateway is required for outbound traffic.
The minimum subnet prefix increases with the number of nodes:
If you’re deploying multiple environments in the same virtual network, each environment requires its own dedicated subnet. Plan your VNet address space to accommodate the required number of subnets at the chosen prefix size.

Sizing guidelines

  • Each additional two replicas requires one additional D4 node.
  • Upgrade the subnet from /27 to /26 when you exceed four replicas.
  • Upgrade the subnet from /26 to /25 when you exceed 12 replicas.
  • Always set maximumCount to minimumCount + 1 in the workload profile to allow rolling updates.
  • For multiple environments in a single VNet, allocate a separate subnet per environment.