Microsoft.ContainerService containerServices 2017-01-31

Bicep resource definition

The containerServices resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ContainerService/containerServices resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.ContainerService/containerServices@2017-01-31' = {
  location: 'string'
  name: 'string'
  properties: {
    agentPoolProfiles: [
      {
        count: int
        dnsPrefix: 'string'
        name: 'string'
        vmSize: 'string'
      }
    ]
    customProfile: {
      orchestrator: 'string'
    }
    diagnosticsProfile: {
      vmDiagnostics: {
        enabled: bool
      }
    }
    linuxProfile: {
      adminUsername: 'string'
      ssh: {
        publicKeys: [
          {
            keyData: 'string'
          }
        ]
      }
    }
    masterProfile: {
      count: int
      dnsPrefix: 'string'
    }
    orchestratorProfile: {
      orchestratorType: 'string'
    }
    servicePrincipalProfile: {
      clientId: 'string'
      secret: 'string'
    }
    windowsProfile: {
      adminPassword: 'string'
      adminUsername: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Property Values

Microsoft.ContainerService/containerServices

Name Description Value
location Resource location string (required)
name The resource name string (required)
properties Properties of the container service. ContainerServiceProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates

ContainerServiceAgentPoolProfile

Name Description Value
count Number of agents (VMs) to host docker containers. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. int

Constraints:
Min value = 1
Max value = 100 (required)
dnsPrefix DNS prefix to be used to create the FQDN for the agent pool. string (required)
name Unique name of the agent pool profile in the context of the subscription and resource group. string (required)
vmSize Size of agent VMs. 'Standard_A0'
'Standard_A1'
'Standard_A10'
'Standard_A11'
'Standard_A2'
'Standard_A3'
'Standard_A4'
'Standard_A5'
'Standard_A6'
'Standard_A7'
'Standard_A8'
'Standard_A9'
'Standard_D1'
'Standard_D11'
'Standard_D11_v2'
'Standard_D12'
'Standard_D12_v2'
'Standard_D13'
'Standard_D13_v2'
'Standard_D14'
'Standard_D14_v2'
'Standard_D1_v2'
'Standard_D2'
'Standard_D2_v2'
'Standard_D3'
'Standard_D3_v2'
'Standard_D4'
'Standard_D4_v2'
'Standard_D5_v2'
'Standard_DS1'
'Standard_DS11'
'Standard_DS12'
'Standard_DS13'
'Standard_DS14'
'Standard_DS2'
'Standard_DS3'
'Standard_DS4'
'Standard_G1'
'Standard_G2'
'Standard_G3'
'Standard_G4'
'Standard_G5'
'Standard_GS1'
'Standard_GS2'
'Standard_GS3'
'Standard_GS4'
'Standard_GS5' (required)

ContainerServiceCustomProfile

Name Description Value
orchestrator The name of the custom orchestrator to use. string (required)

ContainerServiceDiagnosticsProfile

Name Description Value
vmDiagnostics Profile for the container service VM diagnostic agent. ContainerServiceVMDiagnostics (required)

ContainerServiceLinuxProfile

Name Description Value
adminUsername The administrator username to use for Linux VMs. string

Constraints:
Pattern = ^[a-z][a-z0-9_-]*$ (required)
ssh The ssh key configuration for Linux VMs. ContainerServiceSshConfiguration (required)

ContainerServiceMasterProfile

Name Description Value
count Number of masters (VMs) in the container service cluster. Allowed values are 1, 3, and 5. The default value is 1. int
dnsPrefix DNS prefix to be used to create the FQDN for master. string (required)

ContainerServiceOrchestratorProfile

Name Description Value
orchestratorType The orchestrator to use to manage container service cluster resources. Valid values are Swarm, DCOS, and Custom. 'Custom'
'DCOS'
'Kubernetes'
'Swarm' (required)

ContainerServicePrincipalProfile

Name Description Value
clientId The ID for the service principal. string (required)
secret The secret password associated with the service principal. string (required)

ContainerServiceProperties

Name Description Value
agentPoolProfiles Properties of the agent pool. ContainerServiceAgentPoolProfile[] (required)
customProfile Properties for custom clusters. ContainerServiceCustomProfile
diagnosticsProfile Properties of the diagnostic agent. ContainerServiceDiagnosticsProfile
linuxProfile Properties of Linux VMs. ContainerServiceLinuxProfile (required)
masterProfile Properties of master agents. ContainerServiceMasterProfile (required)
orchestratorProfile Properties of the orchestrator. ContainerServiceOrchestratorProfile
servicePrincipalProfile Properties for cluster service principals. ContainerServicePrincipalProfile
windowsProfile Properties of Windows VMs. ContainerServiceWindowsProfile

ContainerServiceSshConfiguration

Name Description Value
publicKeys the list of SSH public keys used to authenticate with Linux-based VMs. ContainerServiceSshPublicKey[] (required)

ContainerServiceSshPublicKey

Name Description Value
keyData Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. string (required)

ContainerServiceVMDiagnostics

Name Description Value
enabled Whether the VM diagnostic agent is provisioned on the VM. bool (required)

ContainerServiceWindowsProfile

Name Description Value
adminPassword The administrator password to use for Windows VMs. string

Constraints:
Pattern = ^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%\^&\*\(\)])[a-zA-Z\d!@#$%\^&\*\(\)]{12,123}$ (required)
adminUsername The administrator username to use for Windows VMs. string

Constraints:
Pattern = ^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$ (required)

ResourceTags

Name Description Value

ARM template resource definition

The containerServices resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ContainerService/containerServices resource, add the following JSON to your template.

{
  "type": "Microsoft.ContainerService/containerServices",
  "apiVersion": "2017-01-31",
  "name": "string",
  "location": "string",
  "properties": {
    "agentPoolProfiles": [
      {
        "count": "int",
        "dnsPrefix": "string",
        "name": "string",
        "vmSize": "string"
      }
    ],
    "customProfile": {
      "orchestrator": "string"
    },
    "diagnosticsProfile": {
      "vmDiagnostics": {
        "enabled": "bool"
      }
    },
    "linuxProfile": {
      "adminUsername": "string",
      "ssh": {
        "publicKeys": [
          {
            "keyData": "string"
          }
        ]
      }
    },
    "masterProfile": {
      "count": "int",
      "dnsPrefix": "string"
    },
    "orchestratorProfile": {
      "orchestratorType": "string"
    },
    "servicePrincipalProfile": {
      "clientId": "string",
      "secret": "string"
    },
    "windowsProfile": {
      "adminPassword": "string",
      "adminUsername": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property Values

Microsoft.ContainerService/containerServices

Name Description Value
apiVersion The api version '2017-01-31'
location Resource location string (required)
name The resource name string (required)
properties Properties of the container service. ContainerServiceProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.ContainerService/containerServices'

ContainerServiceAgentPoolProfile

Name Description Value
count Number of agents (VMs) to host docker containers. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. int

Constraints:
Min value = 1
Max value = 100 (required)
dnsPrefix DNS prefix to be used to create the FQDN for the agent pool. string (required)
name Unique name of the agent pool profile in the context of the subscription and resource group. string (required)
vmSize Size of agent VMs. 'Standard_A0'
'Standard_A1'
'Standard_A10'
'Standard_A11'
'Standard_A2'
'Standard_A3'
'Standard_A4'
'Standard_A5'
'Standard_A6'
'Standard_A7'
'Standard_A8'
'Standard_A9'
'Standard_D1'
'Standard_D11'
'Standard_D11_v2'
'Standard_D12'
'Standard_D12_v2'
'Standard_D13'
'Standard_D13_v2'
'Standard_D14'
'Standard_D14_v2'
'Standard_D1_v2'
'Standard_D2'
'Standard_D2_v2'
'Standard_D3'
'Standard_D3_v2'
'Standard_D4'
'Standard_D4_v2'
'Standard_D5_v2'
'Standard_DS1'
'Standard_DS11'
'Standard_DS12'
'Standard_DS13'
'Standard_DS14'
'Standard_DS2'
'Standard_DS3'
'Standard_DS4'
'Standard_G1'
'Standard_G2'
'Standard_G3'
'Standard_G4'
'Standard_G5'
'Standard_GS1'
'Standard_GS2'
'Standard_GS3'
'Standard_GS4'
'Standard_GS5' (required)

ContainerServiceCustomProfile

Name Description Value
orchestrator The name of the custom orchestrator to use. string (required)

ContainerServiceDiagnosticsProfile

Name Description Value
vmDiagnostics Profile for the container service VM diagnostic agent. ContainerServiceVMDiagnostics (required)

ContainerServiceLinuxProfile

Name Description Value
adminUsername The administrator username to use for Linux VMs. string

Constraints:
Pattern = ^[a-z][a-z0-9_-]*$ (required)
ssh The ssh key configuration for Linux VMs. ContainerServiceSshConfiguration (required)

ContainerServiceMasterProfile

Name Description Value
count Number of masters (VMs) in the container service cluster. Allowed values are 1, 3, and 5. The default value is 1. int
dnsPrefix DNS prefix to be used to create the FQDN for master. string (required)

ContainerServiceOrchestratorProfile

Name Description Value
orchestratorType The orchestrator to use to manage container service cluster resources. Valid values are Swarm, DCOS, and Custom. 'Custom'
'DCOS'
'Kubernetes'
'Swarm' (required)

ContainerServicePrincipalProfile

Name Description Value
clientId The ID for the service principal. string (required)
secret The secret password associated with the service principal. string (required)

ContainerServiceProperties

Name Description Value
agentPoolProfiles Properties of the agent pool. ContainerServiceAgentPoolProfile[] (required)
customProfile Properties for custom clusters. ContainerServiceCustomProfile
diagnosticsProfile Properties of the diagnostic agent. ContainerServiceDiagnosticsProfile
linuxProfile Properties of Linux VMs. ContainerServiceLinuxProfile (required)
masterProfile Properties of master agents. ContainerServiceMasterProfile (required)
orchestratorProfile Properties of the orchestrator. ContainerServiceOrchestratorProfile
servicePrincipalProfile Properties for cluster service principals. ContainerServicePrincipalProfile
windowsProfile Properties of Windows VMs. ContainerServiceWindowsProfile

ContainerServiceSshConfiguration

Name Description Value
publicKeys the list of SSH public keys used to authenticate with Linux-based VMs. ContainerServiceSshPublicKey[] (required)

ContainerServiceSshPublicKey

Name Description Value
keyData Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. string (required)

ContainerServiceVMDiagnostics

Name Description Value
enabled Whether the VM diagnostic agent is provisioned on the VM. bool (required)

ContainerServiceWindowsProfile

Name Description Value
adminPassword The administrator password to use for Windows VMs. string

Constraints:
Pattern = ^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%\^&\*\(\)])[a-zA-Z\d!@#$%\^&\*\(\)]{12,123}$ (required)
adminUsername The administrator username to use for Windows VMs. string

Constraints:
Pattern = ^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$ (required)

ResourceTags

Name Description Value

Usage Examples

Terraform (AzAPI provider) resource definition

The containerServices resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ContainerService/containerServices resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerService/containerServices@2017-01-31"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      agentPoolProfiles = [
        {
          count = int
          dnsPrefix = "string"
          name = "string"
          vmSize = "string"
        }
      ]
      customProfile = {
        orchestrator = "string"
      }
      diagnosticsProfile = {
        vmDiagnostics = {
          enabled = bool
        }
      }
      linuxProfile = {
        adminUsername = "string"
        ssh = {
          publicKeys = [
            {
              keyData = "string"
            }
          ]
        }
      }
      masterProfile = {
        count = int
        dnsPrefix = "string"
      }
      orchestratorProfile = {
        orchestratorType = "string"
      }
      servicePrincipalProfile = {
        clientId = "string"
        secret = "string"
      }
      windowsProfile = {
        adminPassword = "string"
        adminUsername = "string"
      }
    }
  }
}

Property Values

Microsoft.ContainerService/containerServices

Name Description Value
location Resource location string (required)
name The resource name string (required)
properties Properties of the container service. ContainerServiceProperties
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.ContainerService/containerServices@2017-01-31"

ContainerServiceAgentPoolProfile

Name Description Value
count Number of agents (VMs) to host docker containers. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. int

Constraints:
Min value = 1
Max value = 100 (required)
dnsPrefix DNS prefix to be used to create the FQDN for the agent pool. string (required)
name Unique name of the agent pool profile in the context of the subscription and resource group. string (required)
vmSize Size of agent VMs. 'Standard_A0'
'Standard_A1'
'Standard_A10'
'Standard_A11'
'Standard_A2'
'Standard_A3'
'Standard_A4'
'Standard_A5'
'Standard_A6'
'Standard_A7'
'Standard_A8'
'Standard_A9'
'Standard_D1'
'Standard_D11'
'Standard_D11_v2'
'Standard_D12'
'Standard_D12_v2'
'Standard_D13'
'Standard_D13_v2'
'Standard_D14'
'Standard_D14_v2'
'Standard_D1_v2'
'Standard_D2'
'Standard_D2_v2'
'Standard_D3'
'Standard_D3_v2'
'Standard_D4'
'Standard_D4_v2'
'Standard_D5_v2'
'Standard_DS1'
'Standard_DS11'
'Standard_DS12'
'Standard_DS13'
'Standard_DS14'
'Standard_DS2'
'Standard_DS3'
'Standard_DS4'
'Standard_G1'
'Standard_G2'
'Standard_G3'
'Standard_G4'
'Standard_G5'
'Standard_GS1'
'Standard_GS2'
'Standard_GS3'
'Standard_GS4'
'Standard_GS5' (required)

ContainerServiceCustomProfile

Name Description Value
orchestrator The name of the custom orchestrator to use. string (required)

ContainerServiceDiagnosticsProfile

Name Description Value
vmDiagnostics Profile for the container service VM diagnostic agent. ContainerServiceVMDiagnostics (required)

ContainerServiceLinuxProfile

Name Description Value
adminUsername The administrator username to use for Linux VMs. string

Constraints:
Pattern = ^[a-z][a-z0-9_-]*$ (required)
ssh The ssh key configuration for Linux VMs. ContainerServiceSshConfiguration (required)

ContainerServiceMasterProfile

Name Description Value
count Number of masters (VMs) in the container service cluster. Allowed values are 1, 3, and 5. The default value is 1. int
dnsPrefix DNS prefix to be used to create the FQDN for master. string (required)

ContainerServiceOrchestratorProfile

Name Description Value
orchestratorType The orchestrator to use to manage container service cluster resources. Valid values are Swarm, DCOS, and Custom. 'Custom'
'DCOS'
'Kubernetes'
'Swarm' (required)

ContainerServicePrincipalProfile

Name Description Value
clientId The ID for the service principal. string (required)
secret The secret password associated with the service principal. string (required)

ContainerServiceProperties

Name Description Value
agentPoolProfiles Properties of the agent pool. ContainerServiceAgentPoolProfile[] (required)
customProfile Properties for custom clusters. ContainerServiceCustomProfile
diagnosticsProfile Properties of the diagnostic agent. ContainerServiceDiagnosticsProfile
linuxProfile Properties of Linux VMs. ContainerServiceLinuxProfile (required)
masterProfile Properties of master agents. ContainerServiceMasterProfile (required)
orchestratorProfile Properties of the orchestrator. ContainerServiceOrchestratorProfile
servicePrincipalProfile Properties for cluster service principals. ContainerServicePrincipalProfile
windowsProfile Properties of Windows VMs. ContainerServiceWindowsProfile

ContainerServiceSshConfiguration

Name Description Value
publicKeys the list of SSH public keys used to authenticate with Linux-based VMs. ContainerServiceSshPublicKey[] (required)

ContainerServiceSshPublicKey

Name Description Value
keyData Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. string (required)

ContainerServiceVMDiagnostics

Name Description Value
enabled Whether the VM diagnostic agent is provisioned on the VM. bool (required)

ContainerServiceWindowsProfile

Name Description Value
adminPassword The administrator password to use for Windows VMs. string

Constraints:
Pattern = ^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%\^&\*\(\)])[a-zA-Z\d!@#$%\^&\*\(\)]{12,123}$ (required)
adminUsername The administrator username to use for Windows VMs. string

Constraints:
Pattern = ^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$ (required)

ResourceTags

Name Description Value