Přeskočit navigaci

The Azure Quickstart templates are currently available in English

AKS cluster with the Application Gateway Ingress Controller

Poslední aktualizace: 18.06.2021

This sample shows how to deploy an AKS cluster with Application Gateway, Application Gateway Ingress Controller, Azure Container Registry, Log Analytics and Key Vault

Tuto šablonu Azure Resource Manageru (ARM) vytvořil člen komunity a ne Microsoft. Licenci na každou šablonu ARM vám na základě licenční smlouvy uděluje její vlastník, ne Microsoft. Za šablony ARM poskytované a licencované členy komunity nenese Microsoft žádnou odpovědnost ani neprověřuje jejich zabezpečení, kompatibilitu nebo výkon. Šablony ARM komunity nejsou podporované v rámci žádné služby nebo programu podpory Microsoftu a jsou dostupné TAK JAK JSOU, bez jakékoliv záruky.

Parametry

Název parametru Popis
location Specifies the location of AKS cluster.
aksClusterName Specifies the name of the AKS cluster.
aksClusterDnsPrefix Specifies the DNS prefix specified when creating the managed cluster.
aksClusterTags Specifies the tags of the AKS cluster.
aksClusterNetworkPlugin Specifies the network plugin used for building Kubernetes network. - azure or kubenet.
aksClusterNetworkPolicy Specifies the network policy used for building Kubernetes network. - calico or azure
aksClusterPodCidr Specifies the CIDR notation IP range from which to assign pod IPs when kubenet is used.
aksClusterServiceCidr A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.
aksClusterDnsServiceIP Specifies the IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.
aksClusterDockerBridgeCidr Specifies the CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.
aksClusterLoadBalancerSku Specifies the sku of the load balancer used by the virtual machine scale sets used by nodepools.
aksClusterOutboundType Specifies outbound (egress) routing method. - loadBalancer or userDefinedRouting.
aksClusterSkuTier Specifies the tier of a managed cluster SKU: Paid or Free
aksClusterKubernetesVersion Specifies the version of Kubernetes specified when creating the managed cluster.
aksClusterAdminUsername Specifies the administrator username of Linux virtual machines.
aksClusterSshPublicKey Specifies the SSH RSA public key string for the Linux nodes.
aadEnabled Specifies whether enabling AAD integration.
aadProfileTenantId Specifies the tenant id of the Azure Active Directory used by the AKS cluster for authentication.
aadProfileAdminGroupObjectIDs Specifies the AAD group object IDs that will have admin role of the cluster.
aksClusterEnablePrivateCluster Specifies whether to create the cluster as a private cluster or not.
aadProfileManaged Specifies whether to enable managed AAD integration.
aadProfileEnableAzureRBAC Specifies whether to to enable Azure RBAC for Kubernetes authorization.
systemNodePoolName Specifies the unique name of of the system node pool profile in the context of the subscription and resource group.
systemNodePoolVmSize Specifies the vm size of nodes in the system node pool.
systemNodePoolOsDiskSizeGB Specifies the OS Disk Size in GB to be used to specify the disk size for every machine in the system agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified..
systemNodePoolAgentCount Specifies the number of agents (VMs) to host docker containers in the system node pool. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1.
systemNodePoolOsType Specifies the OS type for the vms in the system node pool. Choose from Linux and Windows. Default to Linux.
systemNodePoolMaxPods Specifies the maximum number of pods that can run on a node in the system node pool. The maximum number of pods per node in an AKS cluster is 250. The default maximum number of pods per node varies between kubenet and Azure CNI networking, and the method of cluster deployment.
systemNodePoolMaxCount Specifies the maximum number of nodes for auto-scaling for the system node pool.
systemNodePoolMinCount Specifies the minimum number of nodes for auto-scaling for the system node pool.
systemNodePoolEnableAutoScaling Specifies whether to enable auto-scaling for the system node pool.
systemNodePoolScaleSetPriority Specifies the virtual machine scale set priority in the system node pool: Spot or Regular.
systemNodePoolScaleSetEvictionPolicy Specifies the ScaleSetEvictionPolicy to be used to specify eviction policy for spot virtual machine scale set. Default to Delete. Allowed values are Delete or Deallocate.
systemNodePoolNodeLabels Specifies the Agent pool node labels to be persisted across all nodes in the system node pool.
systemNodePoolNodeTaints Specifies the taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. - string
systemNodePoolType Specifies the type for the system node pool: VirtualMachineScaleSets or AvailabilitySet
systemNodePoolAvailabilityZones Specifies the availability zones for the agent nodes in the system node pool. Requirese the use of VirtualMachineScaleSets as node pool type.
userNodePoolName Specifies the unique name of of the user node pool profile in the context of the subscription and resource group.
userNodePoolVmSize Specifies the vm size of nodes in the user node pool.
userNodePoolOsDiskSizeGB Specifies the OS Disk Size in GB to be used to specify the disk size for every machine in the system agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified..
userNodePoolAgentCount Specifies the number of agents (VMs) to host docker containers in the user node pool. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1.
userNodePoolOsType Specifies the OS type for the vms in the user node pool. Choose from Linux and Windows. Default to Linux.
userNodePoolMaxPods Specifies the maximum number of pods that can run on a node in the user node pool. The maximum number of pods per node in an AKS cluster is 250. The default maximum number of pods per node varies between kubenet and Azure CNI networking, and the method of cluster deployment.
userNodePoolMaxCount Specifies the maximum number of nodes for auto-scaling for the user node pool.
userNodePoolMinCount Specifies the minimum number of nodes for auto-scaling for the user node pool.
userNodePoolEnableAutoScaling Specifies whether to enable auto-scaling for the user node pool.
userNodePoolScaleSetPriority Specifies the virtual machine scale set priority in the user node pool: Spot or Regular.
userNodePoolScaleSetEvictionPolicy Specifies the ScaleSetEvictionPolicy to be used to specify eviction policy for spot virtual machine scale set. Default to Delete. Allowed values are Delete or Deallocate.
userNodePoolNodeLabels Specifies the Agent pool node labels to be persisted across all nodes in the user node pool.
userNodePoolNodeTaints Specifies the taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. - string
userNodePoolType Specifies the type for the user node pool: VirtualMachineScaleSets or AvailabilitySet
userNodePoolAvailabilityZones Specifies the availability zones for the agent nodes in the user node pool. Requirese the use of VirtualMachineScaleSets as node pool type.
httpApplicationRoutingEnabled Specifies whether the httpApplicationRouting add-on is enabled or not.
aciConnectorLinuxEnabled Specifies whether the aciConnectorLinux add-on is enabled or not.
azurePolicyEnabled Specifies whether the azurepolicy add-on is enabled or not.
kubeDashboardEnabled Specifies whether the kubeDashboard add-on is enabled or not.
podIdentityProfileEnabled Specifies whether the pod identity addon is enabled..
autoScalerProfileScanInterval Specifies the scan interval of the auto-scaler of the AKS cluster.
autoScalerProfileScaleDownDelayAfterAdd Specifies the scale down delay after add of the auto-scaler of the AKS cluster.
autoScalerProfileScaleDownDelayAfterDelete Specifies the scale down delay after delete of the auto-scaler of the AKS cluster.
autoScalerProfileScaleDownDelayAfterFailure Specifies scale down delay after failure of the auto-scaler of the AKS cluster.
autoScalerProfileScaleDownUnneededTime Specifies the scale down unneeded time of the auto-scaler of the AKS cluster.
autoScalerProfileScaleDownUnreadyTime Specifies the scale down unready time of the auto-scaler of the AKS cluster.
autoScalerProfileUtilizationThreshold Specifies the utilization threshold of the auto-scaler of the AKS cluster.
autoScalerProfileMaxGracefulTerminationSec Specifies the max graceful termination time interval in seconds for the auto-scaler of the AKS cluster.
virtualNetworkName Specifies the name of the virtual network.
virtualNetworkAddressPrefixes Specifies the address prefixes of the virtual network.
aksSubnetName Specifies the name of the subnet hosting the system node pool of the AKS cluster.
aksSubnetAddressPrefix Specifies the address prefix of the subnet hosting the system node pool of the AKS cluster.
logAnalyticsWorkspaceName Specifies the name of the Log Analytics Workspace.
logAnalyticsSku Specifies the service tier of the workspace: Free, Standalone, PerNode, Per-GB.
logAnalyticsRetentionInDays Specifies the workspace data retention in days. -1 means Unlimited retention for the Unlimited Sku. 730 days is the maximum allowed for all other Skus.
vmSubnetName Specifies the name of the subnet which contains the virtual machine.
vmSubnetAddressPrefix Specifies the address prefix of the subnet which contains the virtual machine.
applicationGatewaySubnetName Specifies the name of the subnet which contains the the Application Gateway.
applicationGatewaySubnetAddressPrefix Specifies the address prefix of the subnet which contains the Application Gateway.
vmName Specifies the name of the virtual machine.
vmSize Specifies the size of the virtual machine.
imagePublisher Specifies the image publisher of the disk image used to create the virtual machine.
imageOffer Specifies the offer of the platform image or marketplace image used to create the virtual machine.
imageSku Specifies the Ubuntu version for the VM. This will pick a fully patched image of this given Ubuntu version.
authenticationType Specifies the type of authentication when accessing the Virtual Machine. SSH key is recommended.
vmAdminUsername Specifies the name of the administrator account of the virtual machine.
vmAdminPasswordOrKey Specifies the SSH Key or password for the virtual machine. SSH key is recommended.
diskStorageAccounType Specifies the storage account type for OS and data disk.
numDataDisks Specifies the number of data disks of the virtual machine.
osDiskSize Specifies the size in GB of the OS disk of the VM.
dataDiskSize Specifies the size in GB of the OS disk of the virtual machine.
dataDiskCaching Specifies the caching requirements for the data disks.
blobStorageAccountName Specifies the globally unique name for the storage account used to store the boot diagnostics logs of the virtual machine.
blobStorageAccountPrivateEndpointName Specifies the name of the private link to the boot diagnostics storage account.
acrPrivateEndpointName Specifies the name of the private link to the Azure Container Registry.
acrName Name of your Azure Container Registry
acrAdminUserEnabled Enable admin user that have push / pull permission to the registry.
acrNetworkRuleSetDefaultAction The default action of allow or deny when no other rules match. Allowed values: Allow or Deny
acrPublicNetworkAccess Whether or not public network access is allowed for the container registry. Allowed values: Enabled or Disabled
acrSku Tier of your Azure Container Registry.
bastionSubnetAddressPrefix Specifies the Bastion subnet IP prefix. This prefix must be within vnet IP prefix address space.
bastionHostName Specifies the name of the Azure Bastion resource.
keyVaultPrivateEndpointName Specifies the name of the private link to the Key Vault.
keyVaultName Specifies the name of the Key Vault resource.
keyVaultNetworkRuleSetDefaultAction The default action of allow or deny when no other rules match. Allowed values: Allow or Deny
applicationGatewayName Specifies the name of the Application Gateway.
applicationGatewayZones Specifies the availability zones of the Application Gateway.
wafPolicyName Specifies the name of the WAF policy
wafPolicyMode Specifies the mode of the WAF policy.
wafPolicyState Specifies the state of the WAF policy.
wafPolicyFileUploadLimitInMb Specifies the maximum file upload size in Mb for the WAF policy.
wafPolicyMaxRequestBodySizeInKb Specifies the maximum request body size in Kb for the WAF policy.
wafPolicyRequestBodyCheck Specifies the whether to allow WAF to check request Body.
wafPolicyRuleSetType Specifies the rule set type.
wafPolicyRuleSetVersion Specifies the rule set version.

Použití šablony

PowerShell

New-AzResourceGroup -Name <resource-group-name> -Location <resource-group-location> #use this command when you need to create a new resource group for your deployment
New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.network/aks-application-gateway-ingress-controller/azuredeploy.json
Instalace a konfigurace Azure PowerShell

Příkazový řádek

az group create --name <resource-group-name> --location <resource-group-location> #use this command when you need to create a new resource group for your deployment
az group deployment create --resource-group <my-resource-group> --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.network/aks-application-gateway-ingress-controller/azuredeploy.json
Instalace a konfigurace rozhraní Azure Cross-Platform Command-Line Interface