ManagedClusterAgentPoolProfile

Profile for the container service agent pool.

AzureCloudContainersDevOpsKubernetesOrchestration

Properties

Name Type Description
name string The unique name of the agent pool profile in the context of the subscription and resource group.
count integer Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools.
vmSize string The size of the agent VMs. Example: Standard_DS2_v2
osDiskSizeGB integer OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool.
osDiskType string The OS disk type to be used for machines in the agent pool.
kubeletDiskType string Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage.
maxPods integer The maximum number of pods that can run on a node.
osType string The operating system type.
osSKU string Specifies the OS SKU used by the agent pool.
type string The type of Agent Pool.
mode string The mode of an agent pool. A cluster must have at least one System agent pool at all times.
orchestratorVersion string The version of Kubernetes running on the Agent Pool.
currentOrchestratorVersion string The version of Kubernetes the Agent Pool is running.
nodeImageVersion string The version of node image.
enableAutoScaling boolean Whether to enable auto-scaler.
minCount integer The minimum number of nodes for auto-scaling.
maxCount integer The maximum number of nodes for auto-scaling.
scaleSetPriority string The Virtual Machine Scale Set priority.
scaleSetEvictionPolicy string The Virtual Machine Scale Set eviction policy.
spotMaxPrice number The maximum price (in US Dollars) you are willing to pay for spot instances. Possible values are any decimal value greater than zero or -1 which indicates that default price is up-to on-demand.
scaleDownMode string Describes how VMs are added to or removed from Agent Pools.
vnetSubnetID string The ID of the subnet which agent pool nodes and optionally pods will join on startup.
podSubnetID string The ID of the subnet which pods will join when launched.
enableNodePublicIP boolean Whether each node is allocated its own public IP.
nodePublicIPPrefixID string The public IP prefix ID for the nodes in the agent pool.
enableEncryptionAtHost boolean Whether to enable host-based OS and data drive encryption.
enableFIPS boolean Whether to use a FIPS-enabled OS.
enableUltraSSD boolean Whether to enable UltraSSD.
nodeLabels object The node labels to be persisted across all nodes in agent pool.
nodeTaints array The taints added to new nodes during node pool create and scale.
tags object The tags to be persisted on the agent pool virtual machine scale set.
proximityPlacementGroupID string The ID for Proximity Placement Group.
upgradeSettings object
powerState object
availabilityZones array The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is VirtualMachineScaleSets.
creationData object
workloadRuntime string Determines the type of workload a node can run.
messageOfTheDay string A base64-encoded string which will be written to /etc/motd after decoding. Applicable only for Linux nodes.
View JSON Schema on GitHub

JSON Schema

microsoft-azure-kubernetes-service-managedclusteragentpoolprofile-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ManagedClusterAgentPoolProfile",
  "title": "ManagedClusterAgentPoolProfile",
  "type": "object",
  "description": "Profile for the container service agent pool.",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "The unique name of the agent pool profile in the context of the subscription and resource group.",
      "minLength": 1,
      "maxLength": 12,
      "pattern": "^[a-z][a-z0-9]{0,11}$",
      "example": "Example Title"
    },
    "count": {
      "type": "integer",
      "format": "int32",
      "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools.",
      "example": 10
    },
    "vmSize": {
      "type": "string",
      "description": "The size of the agent VMs. Example: Standard_DS2_v2",
      "example": "example_value"
    },
    "osDiskSizeGB": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "maximum": 2048,
      "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool.",
      "example": 10
    },
    "osDiskType": {
      "type": "string",
      "description": "The OS disk type to be used for machines in the agent pool.",
      "enum": [
        "Managed",
        "Ephemeral"
      ],
      "example": "Managed"
    },
    "kubeletDiskType": {
      "type": "string",
      "description": "Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage.",
      "enum": [
        "OS",
        "Temporary"
      ],
      "example": "OS"
    },
    "maxPods": {
      "type": "integer",
      "format": "int32",
      "description": "The maximum number of pods that can run on a node.",
      "example": 10
    },
    "osType": {
      "type": "string",
      "description": "The operating system type.",
      "enum": [
        "Linux",
        "Windows"
      ],
      "default": "Linux",
      "example": "Linux"
    },
    "osSKU": {
      "type": "string",
      "description": "Specifies the OS SKU used by the agent pool.",
      "enum": [
        "Ubuntu",
        "AzureLinux",
        "CBLMariner",
        "Windows2019",
        "Windows2022",
        "WindowsAnnual"
      ],
      "example": "Ubuntu"
    },
    "type": {
      "type": "string",
      "description": "The type of Agent Pool.",
      "enum": [
        "VirtualMachineScaleSets",
        "AvailabilitySet",
        "VirtualMachines"
      ],
      "example": "VirtualMachineScaleSets"
    },
    "mode": {
      "type": "string",
      "description": "The mode of an agent pool. A cluster must have at least one System agent pool at all times.",
      "enum": [
        "System",
        "User",
        "Gateway"
      ],
      "example": "System"
    },
    "orchestratorVersion": {
      "type": "string",
      "description": "The version of Kubernetes running on the Agent Pool.",
      "example": "example_value"
    },
    "currentOrchestratorVersion": {
      "type": "string",
      "readOnly": true,
      "description": "The version of Kubernetes the Agent Pool is running.",
      "example": "example_value"
    },
    "nodeImageVersion": {
      "type": "string",
      "readOnly": true,
      "description": "The version of node image.",
      "example": "example_value"
    },
    "enableAutoScaling": {
      "type": "boolean",
      "description": "Whether to enable auto-scaler.",
      "example": true
    },
    "minCount": {
      "type": "integer",
      "format": "int32",
      "description": "The minimum number of nodes for auto-scaling.",
      "example": 10
    },
    "maxCount": {
      "type": "integer",
      "format": "int32",
      "description": "The maximum number of nodes for auto-scaling.",
      "example": 10
    },
    "scaleSetPriority": {
      "type": "string",
      "description": "The Virtual Machine Scale Set priority.",
      "enum": [
        "Spot",
        "Regular"
      ],
      "default": "Regular",
      "example": "Spot"
    },
    "scaleSetEvictionPolicy": {
      "type": "string",
      "description": "The Virtual Machine Scale Set eviction policy.",
      "enum": [
        "Delete",
        "Deallocate"
      ],
      "default": "Delete",
      "example": "Delete"
    },
    "spotMaxPrice": {
      "type": "number",
      "format": "float",
      "description": "The maximum price (in US Dollars) you are willing to pay for spot instances. Possible values are any decimal value greater than zero or -1 which indicates that default price is up-to on-demand.",
      "example": 42.5
    },
    "scaleDownMode": {
      "type": "string",
      "description": "Describes how VMs are added to or removed from Agent Pools.",
      "enum": [
        "Delete",
        "Deallocate"
      ],
      "default": "Delete",
      "example": "Delete"
    },
    "vnetSubnetID": {
      "type": "string",
      "description": "The ID of the subnet which agent pool nodes and optionally pods will join on startup.",
      "example": "500123"
    },
    "podSubnetID": {
      "type": "string",
      "description": "The ID of the subnet which pods will join when launched.",
      "example": "500123"
    },
    "enableNodePublicIP": {
      "type": "boolean",
      "description": "Whether each node is allocated its own public IP.",
      "example": true
    },
    "nodePublicIPPrefixID": {
      "type": "string",
      "description": "The public IP prefix ID for the nodes in the agent pool.",
      "example": "500123"
    },
    "enableEncryptionAtHost": {
      "type": "boolean",
      "description": "Whether to enable host-based OS and data drive encryption.",
      "example": true
    },
    "enableFIPS": {
      "type": "boolean",
      "description": "Whether to use a FIPS-enabled OS.",
      "example": true
    },
    "enableUltraSSD": {
      "type": "boolean",
      "description": "Whether to enable UltraSSD.",
      "example": true
    },
    "nodeLabels": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "description": "The node labels to be persisted across all nodes in agent pool.",
      "example": "example_value"
    },
    "nodeTaints": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The taints added to new nodes during node pool create and scale.",
      "example": []
    },
    "tags": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "description": "The tags to be persisted on the agent pool virtual machine scale set.",
      "example": "example_value"
    },
    "proximityPlacementGroupID": {
      "type": "string",
      "description": "The ID for Proximity Placement Group.",
      "example": "500123"
    },
    "upgradeSettings": {
      "$ref": "#/components/schemas/AgentPoolUpgradeSettings"
    },
    "powerState": {
      "$ref": "#/components/schemas/PowerState"
    },
    "availabilityZones": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is VirtualMachineScaleSets.",
      "example": []
    },
    "creationData": {
      "$ref": "#/components/schemas/CreationData"
    },
    "workloadRuntime": {
      "type": "string",
      "description": "Determines the type of workload a node can run.",
      "enum": [
        "OCIContainer",
        "WasmWasi",
        "KataMshvVmIsolation"
      ],
      "example": "OCIContainer"
    },
    "messageOfTheDay": {
      "type": "string",
      "description": "A base64-encoded string which will be written to /etc/motd after decoding. Applicable only for Linux nodes.",
      "example": "example_value"
    }
  }
}