{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.1", "parameters": { "clusterName": { "type": "string", "defaultValue":"Arc-AKS-Demo", "metadata": { "description": "The name of the Managed Cluster resource." } }, "location": { "type": "string", "defaultValue": "[resourceGroup().location]", "metadata": { "description": "The location of the Managed Cluster resource." } }, "dnsPrefix": { "type": "string", "defaultValue":"arck8s", "metadata": { "description": "Optional DNS prefix to use with hosted Kubernetes API server FQDN." } }, "osDiskSizeGB": { "type": "int", "defaultValue": 0, "metadata": { "description": "Disk size (in GB) to provision for each of the agent pool nodes. This value ranges from 0 to 1023. Specifying 0 will apply the default disk size for that agentVMSize." }, "minValue": 0, "maxValue": 1023 }, "agentCount": { "type": "int", "defaultValue": 1, "metadata": { "description": "The number of nodes for the cluster." }, "minValue": 1, "maxValue": 50 }, "agentVMSize": { "type": "string", "defaultValue": "Standard_D4s_v4", "metadata": { "description": "The size of the Virtual Machine." } }, "linuxAdminUsername": { "type": "string", "metadata": { "description": "User name for the Linux Virtual Machines." } }, "sshRSAPublicKey": { "type": "string", "metadata": { "description": "Configure all linux machines with the SSH RSA public key string. Your key should include three parts, for example 'ssh-rsa AAAAB...snip...UcyupgH azureuser@linuxvm'" } }, "servicePrincipalClientId": { "metadata": { "description": "Client ID (used by cloudprovider)" }, "type": "securestring" }, "servicePrincipalClientSecret": { "metadata": { "description": "The Service Principal Client Secret." }, "type": "securestring" }, "enableRBAC": { "defaultValue": true, "type": "bool", "metadata": { "description": "boolean flag to turn on and off of RBAC" } }, "osType": { "type": "string", "defaultValue": "Linux", "allowedValues": [ "Linux" ], "metadata": { "description": "The type of operating system." } }, "kubernetesVersion": { "defaultValue": "1.28.5", "type": "string", "metadata": { "description": "The version of Kubernetes." } }, "resourceTags": { "type": "object", "defaultValue": { "Project": "jumpstart_azure_arc_k8s" } } }, "resources": [ { "apiVersion": "2022-02-01", "type": "Microsoft.ContainerService/managedClusters", "location": "[parameters('location')]", "name": "[parameters('clusterName')]", "tags": "[parameters('resourceTags')]", "properties": { "kubernetesVersion": "[parameters('kubernetesVersion')]", "enableRBAC": "[parameters('enableRBAC')]", "dnsPrefix": "[parameters('dnsPrefix')]", "agentPoolProfiles": [ { "name": "agentpool", "osDiskSizeGB": "[parameters('osDiskSizeGB')]", "count": "[parameters('agentCount')]", "vmSize": "[parameters('agentVMSize')]", "osType": "[parameters('osType')]", "storageProfile": "ManagedDisks", "mode": "System" } ], "linuxProfile": { "adminUsername": "[parameters('linuxAdminUsername')]", "ssh": { "publicKeys": [ { "keyData": "[parameters('sshRSAPublicKey')]" } ] } }, "servicePrincipalProfile": { "clientId": "[parameters('servicePrincipalClientId')]", "Secret": "[parameters('servicePrincipalClientSecret')]" } } } ], "outputs": { "controlPlaneFQDN": { "type": "string", "value": "[reference(parameters('clusterName')).fqdn]" } } }