Skip to content
Containers npsystem

AKS system node pool naming convention

The CAF abbreviation for AKS system node pool is npsystem. Names can be 1 to 12 characters long and allow lowercase alphanumerics only. The name must be unique within the parent resource.

Naming rules

CAF abbreviation npsystem
Length 1 to 12 characters
Allowed characters Lowercase letters and numbers
Scope of uniqueness Unique within the parent resource
CAF pattern npsystem{workload}{environment}{region}{instance}
Worth knowing: Can't start with a number. 1-6 for Windows.

Rules follow Microsoft's resource naming rules and CAF abbreviations. Some resource types have extra start/end character restrictions, so verify against the official docs before locking in a convention.

Naming Containers resources

Container Registry is globally unique and already has its own guide. AKS node pools are the sharp edge in this category, the system node pool name is capped at 12 characters (6 on Windows), far tighter than almost anything else in Azure, so short, functional names matter more here than anywhere else in the naming scheme.

A Container Apps environment groups multiple container apps the way a Service Bus namespace groups queues, name the environment for the shared platform boundary and the individual container app for the workload it runs. The common mistake is giving node pools descriptive names and hitting the character ceiling immediately, plan for the 12 character limit before you need it.

Example names

Generated by the same engine as the name generator, so length and character rules are already applied.

Scenario Generated name Length
Payments API, production npsystempaym
Truncated to fit the 12-character limit.
12/12
Web app, development npsystemweba
Truncated to fit the 12-character limit.
12/12
Analytics with company prefix npsystemanal
Truncated to fit the 12-character limit.
12/12

Naming in Terraform and Bicep

Build the name from variables so one module produces the right name in every environment. The 12-character limit is enforced in the expression.

Terraform
locals {
  aks_system_nodepool_name = substr(lower("npsystem${var.workload}${var.environment}${var.region}001"), 0, 12)
}
Bicep
var aksSystemNodepoolName = take(toLower('npsystem${workload}${environment}${region}001'), 12)

Generate AKS system node pool names for your workload

Free, no login. Validation and Terraform, Bicep, or CSV export included.

Open in the generator →

Related Containers resources

See the full list of Azure resource naming rules or read the complete CAF naming guide.