From 51d7a9a94589a748d25f12dbc7014989b65e9557 Mon Sep 17 00:00:00 2001 From: Dany Contreras <78437433+danycontre@users.noreply.github.com> Date: Tue, 8 Oct 2024 12:43:22 -0400 Subject: [PATCH] Including option to use VMSS Flex (#678) * updates * updates * updates * updates * updates * updates --- .../deployNewSessionHostsToHostPools.json | 6 +- workload/arm/deploy-baseline.json | 460 +++++++++--------- .../brownfield/newSessionHosts/deploy.bicep | 2 +- workload/bicep/deploy-baseline.bicep | 6 +- .../modules/avdSessionHosts/deploy.bicep | 5 +- .../deploy-baseline-parameters-example.json | 3 + workload/docs/deploy-baseline.md | 3 +- .../brownfield/portalUiNewSessionHosts.json | 1 + workload/portal-ui/portal-ui-baseline.json | 11 +- 9 files changed, 265 insertions(+), 232 deletions(-) diff --git a/workload/arm/brownfield/deployNewSessionHostsToHostPools.json b/workload/arm/brownfield/deployNewSessionHostsToHostPools.json index 281340180..f46cbbbf1 100644 --- a/workload/arm/brownfield/deployNewSessionHostsToHostPools.json +++ b/workload/arm/brownfield/deployNewSessionHostsToHostPools.json @@ -5,7 +5,7 @@ "_generator": { "name": "bicep", "version": "0.30.23.60470", - "templateHash": "14713858361202530562" + "templateHash": "2465926344295153346" } }, "parameters": { @@ -1611,9 +1611,7 @@ "encryptionAtHost": { "value": "[parameters('diskZeroTrust')]" }, - "virtualMachineScaleSetResourceId": { - "value": "[parameters('virtualMachineScaleSetResourceId')]" - }, + "virtualMachineScaleSetResourceId": "[if(not(empty(parameters('virtualMachineScaleSetResourceId'))), createObject('value', parameters('virtualMachineScaleSetResourceId')), createObject('value', ''))]", "osType": { "value": "Windows" }, diff --git a/workload/arm/deploy-baseline.json b/workload/arm/deploy-baseline.json index 21fefd10b..8fe7db7be 100644 --- a/workload/arm/deploy-baseline.json +++ b/workload/arm/deploy-baseline.json @@ -4,8 +4,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "16026701269552425531" + "version": "0.30.23.60470", + "templateHash": "14398112227498582260" }, "name": "AVD Accelerator - Baseline Deployment", "description": "AVD Accelerator - Deployment Baseline", @@ -425,6 +425,13 @@ "description": "When true, Zone Redundant Storage (ZRS) is used, when set to false, Locally Redundant Storage (LRS) is used. (Default: false)" } }, + "deployVmssFlex": { + "type": "bool", + "defaultValue": true, + "metadata": { + "description": "Deploys a VMSS Flex group and associates session hosts with it for availability purposes. (Default: true)" + } + }, "vmssFlatformFaultDomainCount": { "type": "int", "defaultValue": 2, @@ -486,7 +493,7 @@ "type": "bool", "defaultValue": true, "metadata": { - "description": "Enables accelerated Networking on the session hosts.\r\nIf using a Azure Compute Gallery Image, the Image Definition must have been configured with\r\nthe \\'isAcceleratedNetworkSupported\\' property set to \\'true\\'.\r\n" + "description": "Enables accelerated Networking on the session hosts.\nIf using a Azure Compute Gallery Image, the Image Definition must have been configured with\nthe \\'isAcceleratedNetworkSupported\\' property set to \\'true\\'.\n" } }, "securityType": { @@ -1713,8 +1720,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10947076114802729857" + "version": "0.30.23.60470", + "templateHash": "8672838757620509839" }, "name": "Resource Groups", "description": "This module deploys a Resource Group.", @@ -1842,8 +1849,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10947076114802729857" + "version": "0.30.23.60470", + "templateHash": "8672838757620509839" }, "name": "Resource Groups", "description": "This module deploys a Resource Group.", @@ -1966,8 +1973,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10947076114802729857" + "version": "0.30.23.60470", + "templateHash": "8672838757620509839" }, "name": "Resource Groups", "description": "This module deploys a Resource Group.", @@ -2110,8 +2117,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "17514098676358837457" + "version": "0.30.23.60470", + "templateHash": "4236169587998799965" }, "name": "AVD LZA insights monitoring", "description": "This module deploys Log analytics workspace, DCR and policies", @@ -2248,8 +2255,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10947076114802729857" + "version": "0.30.23.60470", + "templateHash": "8672838757620509839" }, "name": "Resource Groups", "description": "This module deploys a Resource Group.", @@ -2382,8 +2389,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "4503325036957359192" + "version": "0.30.23.60470", + "templateHash": "15282002205908158597" }, "name": "Log Analytics Workspaces", "description": "This module deploys a Log Analytics Workspace.", @@ -2615,8 +2622,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "1745671120474305926" + "version": "0.30.23.60470", + "templateHash": "8028201980853199520" }, "name": "Log Analytics Workspace Storage Insight Configs", "description": "This module deploys a Log Analytics Workspace Storage Insight Config.", @@ -2815,8 +2822,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "4460810973313651780" + "version": "0.30.23.60470", + "templateHash": "14748218317477429392" } }, "parameters": { @@ -3144,8 +3151,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6034513017781008132" + "version": "0.30.23.60470", + "templateHash": "16641541366344144948" } }, "parameters": { @@ -3295,8 +3302,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "1091573741134375870" + "version": "0.30.23.60470", + "templateHash": "7209574149100326788" } }, "parameters": { @@ -3445,8 +3452,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "3879842459774615474" + "version": "0.30.23.60470", + "templateHash": "15074949129863647497" }, "name": "Policy Assignments (Resource Group scope)", "description": "This module deploys a Policy Assignment at a Resource Group scope.", @@ -3696,8 +3703,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "16756559229474193170" + "version": "0.30.23.60470", + "templateHash": "13526857440223039502" }, "name": "Policy Insights Remediations (Resource Group scope)", "description": "This module deploys a Policy Insights Remediation on a Resource Group scope.", @@ -3865,8 +3872,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "14436892319388563958" + "version": "0.30.23.60470", + "templateHash": "12831035809041306123" } }, "parameters": { @@ -4125,8 +4132,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "17721019575695313993" + "version": "0.30.23.60470", + "templateHash": "12834952427493062703" }, "name": "AVD LZA networking", "description": "This module deploys vNet, NSG, ASG, UDR, private DNs zones", @@ -4496,8 +4503,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6231547581626142052" + "version": "0.30.23.60470", + "templateHash": "9920407814382381860" }, "name": "Network Security Groups", "description": "This module deploys a Network security Group (NSG).", @@ -4788,8 +4795,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "3458344774841300043" + "version": "0.30.23.60470", + "templateHash": "16552673174935421633" }, "name": "Network Security Group (NSG) Security Rules", "description": "This module deploys a Network Security Group (NSG) Security Rule.", @@ -5051,8 +5058,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6231547581626142052" + "version": "0.30.23.60470", + "templateHash": "9920407814382381860" }, "name": "Network Security Groups", "description": "This module deploys a Network security Group (NSG).", @@ -5343,8 +5350,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "3458344774841300043" + "version": "0.30.23.60470", + "templateHash": "16552673174935421633" }, "name": "Network Security Group (NSG) Security Rules", "description": "This module deploys a Network Security Group (NSG) Security Rule.", @@ -5600,8 +5607,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "14346700307055260528" + "version": "0.30.23.60470", + "templateHash": "10050047613520543656" }, "name": "Application Security Groups (ASG)", "description": "This module deploys an Application Security Group (ASG).", @@ -5730,8 +5737,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10721683583098206958" + "version": "0.30.23.60470", + "templateHash": "1228848793868473285" }, "name": "Route Tables", "description": "This module deploys a User Defined Route Table (UDR).", @@ -5937,8 +5944,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10721683583098206958" + "version": "0.30.23.60470", + "templateHash": "1228848793868473285" }, "name": "Route Tables", "description": "This module deploys a User Defined Route Table (UDR).", @@ -6138,8 +6145,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "17677855953223415327" + "version": "0.30.23.60470", + "templateHash": "510602938216253127" }, "name": "DDoS Protection Plans", "description": "This module deploys a DDoS Protection Plan.", @@ -6280,8 +6287,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6731301106812673861" + "version": "0.30.23.60470", + "templateHash": "8852938365790433451" }, "name": "Virtual Networks", "description": "This module deploys a Virtual Network (vNet).", @@ -6651,8 +6658,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "16459761055284239647" + "version": "0.30.23.60470", + "templateHash": "17552535066446097605" }, "name": "Virtual Network Subnets", "description": "This module deploys a Virtual Network Subnet.", @@ -6977,8 +6984,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8623605979081822008" + "version": "0.30.23.60470", + "templateHash": "18422443457381833495" }, "name": "Virtual Network Peerings", "description": "This module deploys a Virtual Network Peering.", @@ -7122,8 +7129,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8623605979081822008" + "version": "0.30.23.60470", + "templateHash": "18422443457381833495" }, "name": "Virtual Network Peerings", "description": "This module deploys a Virtual Network Peering.", @@ -7320,8 +7327,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6513904023254352138" + "version": "0.30.23.60470", + "templateHash": "6447266220523423284" }, "name": "Private DNS Zones", "description": "This module deploys a Private DNS zone.", @@ -7431,8 +7438,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "1713449351614683457" + "version": "0.30.23.60470", + "templateHash": "5921383587154229928" }, "name": "Private DNS Zone Virtual Network Link", "description": "This module deploys a Private DNS Zone Virtual Network Link.", @@ -7605,8 +7612,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6513904023254352138" + "version": "0.30.23.60470", + "templateHash": "6447266220523423284" }, "name": "Private DNS Zones", "description": "This module deploys a Private DNS zone.", @@ -7716,8 +7723,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "1713449351614683457" + "version": "0.30.23.60470", + "templateHash": "5921383587154229928" }, "name": "Private DNS Zone Virtual Network Link", "description": "This module deploys a Private DNS Zone Virtual Network Link.", @@ -7981,8 +7988,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "1781002121814970387" + "version": "0.30.23.60470", + "templateHash": "12051878425942700880" }, "name": "AVD LZA management plane", "description": "This module deploys AVD workspace, host pool, application group scaling plan", @@ -8259,8 +8266,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8945175348693255996" + "version": "0.30.23.60470", + "templateHash": "6355038731996119089" }, "name": "Azure Virtual Desktop Host Pool", "description": "This module deploys an Azure Virtual Desktop Host Pool", @@ -8700,8 +8707,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "13669193223003287695" + "version": "0.30.23.60470", + "templateHash": "569336813477795175" }, "name": "Key Vault Secrets", "description": "This module deploys a Key Vault Secret.", @@ -9015,8 +9022,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "11570465226099822679" + "version": "0.30.23.60470", + "templateHash": "9477828647923017064" }, "name": "Azure Virtual Desktop Application Group", "description": "This module deploys an Azure Virtual Desktop Application Group.", @@ -9424,8 +9431,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10838639279177354544" + "version": "0.30.23.60470", + "templateHash": "2492935317086618448" }, "name": "Azure Virtual Desktop Application Group Application", "description": "This module deploys an Azure Virtual Desktop Application Group Application.", @@ -9627,8 +9634,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "4496623991262242009" + "version": "0.30.23.60470", + "templateHash": "7521925704419702572" }, "name": "Workspace", "description": "This module deploys an Azure Virtual Desktop Workspace.", @@ -9934,8 +9941,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6918598758552689482" + "version": "0.30.23.60470", + "templateHash": "1018572390956690547" }, "name": "Azure Virtual Desktop Scaling Plan", "description": "This module deploys an Azure Virtual Desktop Scaling Plan.", @@ -10323,8 +10330,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "12388793568431493624" + "version": "0.30.23.60470", + "templateHash": "961381357868342754" } }, "parameters": { @@ -10485,8 +10492,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "15471634163586951656" + "version": "0.30.23.60470", + "templateHash": "11803242017330059916" }, "name": "User Assigned Identities", "description": "This module deploys a User Assigned Identity.", @@ -10740,8 +10747,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -10918,8 +10925,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -11094,8 +11101,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -11269,8 +11276,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -11441,8 +11448,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -11613,8 +11620,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -11836,8 +11843,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "1465396880141233216" + "version": "0.30.23.60470", + "templateHash": "7394685528371599287" } }, "parameters": { @@ -12007,8 +12014,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6034513017781008132" + "version": "0.30.23.60470", + "templateHash": "16641541366344144948" } }, "parameters": { @@ -12167,8 +12174,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "3879842459774615474" + "version": "0.30.23.60470", + "templateHash": "15074949129863647497" }, "name": "Policy Assignments (Resource Group scope)", "description": "This module deploys a Policy Assignment at a Resource Group scope.", @@ -12419,8 +12426,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "16756559229474193170" + "version": "0.30.23.60470", + "templateHash": "13526857440223039502" }, "name": "Policy Insights Remediations (Resource Group scope)", "description": "This module deploys a Policy Insights Remediation on a Resource Group scope.", @@ -12608,8 +12615,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "3879842459774615474" + "version": "0.30.23.60470", + "templateHash": "15074949129863647497" }, "name": "Policy Assignments (Resource Group scope)", "description": "This module deploys a Policy Assignment at a Resource Group scope.", @@ -12860,8 +12867,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "16756559229474193170" + "version": "0.30.23.60470", + "templateHash": "13526857440223039502" }, "name": "Policy Insights Remediations (Resource Group scope)", "description": "This module deploys a Policy Insights Remediation on a Resource Group scope.", @@ -13025,8 +13032,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -13198,8 +13205,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -13367,8 +13374,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8632123358833248130" + "version": "0.30.23.60470", + "templateHash": "1227486639354850589" }, "name": "Role Assignments (Resource Group scope)", "description": "This module deploys a Role Assignment at a Resource Group scope.", @@ -13571,8 +13578,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "571191894865467239" + "version": "0.30.23.60470", + "templateHash": "5360722259128289781" } }, "parameters": { @@ -13723,8 +13730,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "18412957729950919619" + "version": "0.30.23.60470", + "templateHash": "3460005220614992836" }, "name": "Key Vaults", "description": "This module deploys a Key Vault.", @@ -14907,8 +14914,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "7494731697751039419" + "version": "0.30.23.60470", + "templateHash": "15469258025112973480" }, "name": "Key Vault Access Policies", "description": "This module deploys a Key Vault Access Policy.", @@ -15176,8 +15183,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "13669193223003287695" + "version": "0.30.23.60470", + "templateHash": "569336813477795175" }, "name": "Key Vault Secrets", "description": "This module deploys a Key Vault Secret.", @@ -15460,8 +15467,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "15035594688775880955" + "version": "0.30.23.60470", + "templateHash": "1250108206897734506" }, "name": "Key Vault Keys", "description": "This module deploys a Key Vault Key.", @@ -16511,8 +16518,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "15035594688775880955" + "version": "0.30.23.60470", + "templateHash": "1250108206897734506" }, "name": "Key Vault Keys", "description": "This module deploys a Key Vault Key.", @@ -16836,8 +16843,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10729183769151948018" + "version": "0.30.23.60470", + "templateHash": "6378481213650236557" }, "name": "Disk Encryption Sets", "description": "This module deploys a Disk Encryption Set. The module will attempt to set permissions on the provided Key Vault for any used user-assigned identity.", @@ -17066,8 +17073,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "7332173426743050645" + "version": "0.30.23.60470", + "templateHash": "1367133447919905968" } }, "parameters": { @@ -17154,8 +17161,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "11254343639333423548" + "version": "0.30.23.60470", + "templateHash": "17444618367982488496" }, "name": "Key Vault Access Policies", "description": "This module deploys a Key Vault Access Policy.", @@ -17508,8 +17515,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "18412957729950919619" + "version": "0.30.23.60470", + "templateHash": "3460005220614992836" }, "name": "Key Vaults", "description": "This module deploys a Key Vault.", @@ -18692,8 +18699,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "7494731697751039419" + "version": "0.30.23.60470", + "templateHash": "15469258025112973480" }, "name": "Key Vault Access Policies", "description": "This module deploys a Key Vault Access Policy.", @@ -18961,8 +18968,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "13669193223003287695" + "version": "0.30.23.60470", + "templateHash": "569336813477795175" }, "name": "Key Vault Secrets", "description": "This module deploys a Key Vault Secret.", @@ -19245,8 +19252,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "15035594688775880955" + "version": "0.30.23.60470", + "templateHash": "1250108206897734506" }, "name": "Key Vault Keys", "description": "This module deploys a Key Vault Key.", @@ -20314,8 +20321,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "254215699611608030" + "version": "0.30.23.60470", + "templateHash": "3237407790324423200" } }, "parameters": { @@ -20595,8 +20602,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8155975850841976759" + "version": "0.30.23.60470", + "templateHash": "2803598175472441376" }, "name": "Virtual Machines", "description": "This module deploys a Virtual Machine with one or multiple NICs and optionally one or multiple public IPs.", @@ -21425,8 +21432,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10572916853077745487" + "version": "0.30.23.60470", + "templateHash": "499916289263126031" } }, "definitions": { @@ -22978,8 +22985,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -23187,8 +23194,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -23391,8 +23398,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -23602,8 +23609,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -23806,8 +23813,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -24007,8 +24014,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -24311,8 +24318,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "9332074825075946878" + "version": "0.30.23.60470", + "templateHash": "17363399843620349152" }, "name": "AVD LZA storage", "description": "This module deploys storage account, azure files. domain join logic", @@ -24581,8 +24588,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "9165357988035054854" + "version": "0.30.23.60470", + "templateHash": "10020046199410134923" }, "name": "Storage Accounts", "description": "This module deploys a Storage Account.", @@ -26102,8 +26109,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "2954888723763555398" + "version": "0.30.23.60470", + "templateHash": "12532433520125716194" }, "name": "Storage Account File Share Services", "description": "This module deploys a Storage Account File Share Service.", @@ -26383,8 +26390,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10317910753548703833" + "version": "0.30.23.60470", + "templateHash": "8149592214225924460" }, "name": "Storage Account File Shares", "description": "This module deploys a Storage Account File Share.", @@ -26583,8 +26590,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "17248286354721497939" + "version": "0.30.23.60470", + "templateHash": "12442072449730867756" } }, "parameters": { @@ -26907,8 +26914,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "17305671824680368975" + "version": "0.30.23.60470", + "templateHash": "1689212129910611066" }, "name": "AVD LZA storage", "description": "Configures domain join settings on storage account via VM custom script extension", @@ -27008,8 +27015,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -27275,8 +27282,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "9332074825075946878" + "version": "0.30.23.60470", + "templateHash": "17363399843620349152" }, "name": "AVD LZA storage", "description": "This module deploys storage account, azure files. domain join logic", @@ -27545,8 +27552,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "9165357988035054854" + "version": "0.30.23.60470", + "templateHash": "10020046199410134923" }, "name": "Storage Accounts", "description": "This module deploys a Storage Account.", @@ -29066,8 +29073,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "2954888723763555398" + "version": "0.30.23.60470", + "templateHash": "12532433520125716194" }, "name": "Storage Account File Share Services", "description": "This module deploys a Storage Account File Share Service.", @@ -29347,8 +29354,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10317910753548703833" + "version": "0.30.23.60470", + "templateHash": "8149592214225924460" }, "name": "Storage Account File Shares", "description": "This module deploys a Storage Account File Share.", @@ -29547,8 +29554,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "17248286354721497939" + "version": "0.30.23.60470", + "templateHash": "12442072449730867756" } }, "parameters": { @@ -29871,8 +29878,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "17305671824680368975" + "version": "0.30.23.60470", + "templateHash": "1689212129910611066" }, "name": "AVD LZA storage", "description": "Configures domain join settings on storage account via VM custom script extension", @@ -29972,8 +29979,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -30148,7 +30155,7 @@ ] }, { - "condition": "[parameters('avdDeploySessionHosts')]", + "condition": "[and(parameters('avdDeploySessionHosts'), parameters('deployVmssFlex'))]", "type": "Microsoft.Resources/deployments", "apiVersion": "2022-09-01", "name": "[format('AVD-VMSS-Flex-{0}', parameters('time'))]", @@ -30183,8 +30190,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "11757932224469015605" + "version": "0.30.23.60470", + "templateHash": "10966017454446351575" }, "name": "AVD Accelerator - VMSS Flex", "description": "Deploys a VMSS Flex without VM profile", @@ -30290,6 +30297,9 @@ "vmssFlexNamePrefix": { "value": "[variables('varVmssFlexNamePrefix')]" }, + "useVmssFlex": { + "value": "[parameters('deployVmssFlex')]" + }, "batchId": { "value": "[sub(range(1, variables('varSessionHostBatchCount'))[copyIndex()], 1)]" }, @@ -30388,8 +30398,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "15745844634886577488" + "version": "0.30.23.60470", + "templateHash": "17246082322388360155" } }, "parameters": { @@ -30453,6 +30463,12 @@ "description": "Quantity of session hosts to deploy." } }, + "useVmssFlex": { + "type": "bool", + "metadata": { + "description": "Associate VMs with VMSS Flex group." + } + }, "maxVmssFlexMembersCount": { "type": "int", "metadata": { @@ -30699,9 +30715,7 @@ "encryptionAtHost": { "value": "[parameters('encryptionAtHost')]" }, - "virtualMachineScaleSetResourceId": { - "value": "[format('/subscriptions/{0}/resourceGroups/{1}/providers/Microsoft.Compute/virtualMachineScaleSets/{2}-{3}', parameters('subscriptionId'), parameters('computeObjectsRgName'), parameters('vmssFlexNamePrefix'), padLeft(add(1, div(add(range(1, parameters('count'))[copyIndex()], parameters('countIndex')), parameters('maxVmssFlexMembersCount'))), 3, '0'))]" - }, + "virtualMachineScaleSetResourceId": "[if(parameters('useVmssFlex'), createObject('value', format('/subscriptions/{0}/resourceGroups/{1}/providers/Microsoft.Compute/virtualMachineScaleSets/{2}-{3}', parameters('subscriptionId'), parameters('computeObjectsRgName'), parameters('vmssFlexNamePrefix'), padLeft(add(1, div(add(range(1, parameters('count'))[copyIndex()], parameters('countIndex')), parameters('maxVmssFlexMembersCount'))), 3, '0'))), createObject('value', ''))]", "osType": { "value": "Windows" }, @@ -30780,8 +30794,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8155975850841976759" + "version": "0.30.23.60470", + "templateHash": "2803598175472441376" }, "name": "Virtual Machines", "description": "This module deploys a Virtual Machine with one or multiple NICs and optionally one or multiple public IPs.", @@ -31610,8 +31624,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10572916853077745487" + "version": "0.30.23.60470", + "templateHash": "499916289263126031" } }, "definitions": { @@ -33163,8 +33177,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -33372,8 +33386,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -33576,8 +33590,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -33787,8 +33801,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -33991,8 +34005,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -34192,8 +34206,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -34453,8 +34467,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -34670,8 +34684,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "10657605324993327332" + "version": "0.30.23.60470", + "templateHash": "16065702394900050638" }, "name": "Virtual Machine Extensions", "description": "This module deploys a Virtual Machine Extension.", @@ -34858,8 +34872,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "15961062277630290779" + "version": "0.30.23.60470", + "templateHash": "3162213164155283873" } }, "parameters": { @@ -34956,8 +34970,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "7216705815368457530" + "version": "0.30.23.60470", + "templateHash": "11404025400543455992" } }, "parameters": { @@ -35127,8 +35141,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "8773131658786941342" + "version": "0.30.23.60470", + "templateHash": "12070773277688568193" } }, "parameters": { @@ -35217,8 +35231,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "6034513017781008132" + "version": "0.30.23.60470", + "templateHash": "16641541366344144948" } }, "parameters": { @@ -35363,8 +35377,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "3879842459774615474" + "version": "0.30.23.60470", + "templateHash": "15074949129863647497" }, "name": "Policy Assignments (Resource Group scope)", "description": "This module deploys a Policy Assignment at a Resource Group scope.", @@ -35614,8 +35628,8 @@ "metadata": { "_generator": { "name": "bicep", - "version": "0.29.47.4906", - "templateHash": "16756559229474193170" + "version": "0.30.23.60470", + "templateHash": "13526857440223039502" }, "name": "Policy Insights Remediations (Resource Group scope)", "description": "This module deploys a Policy Insights Remediation on a Resource Group scope.", diff --git a/workload/bicep/brownfield/newSessionHosts/deploy.bicep b/workload/bicep/brownfield/newSessionHosts/deploy.bicep index 361508a4a..59feb1ad8 100644 --- a/workload/bicep/brownfield/newSessionHosts/deploy.bicep +++ b/workload/bicep/brownfield/newSessionHosts/deploy.bicep @@ -317,7 +317,7 @@ module sessionHosts '../../../../avm/1.0.0/res/compute/virtual-machine/main.bice systemAssigned: true }: null encryptionAtHost: diskZeroTrust - virtualMachineScaleSetResourceId: virtualMachineScaleSetResourceId + virtualMachineScaleSetResourceId: !empty(virtualMachineScaleSetResourceId) ? virtualMachineScaleSetResourceId : '' osType: 'Windows' licenseType: 'Windows_Client' vmSize: vmSize diff --git a/workload/bicep/deploy-baseline.bicep b/workload/bicep/deploy-baseline.bicep index 3f03614e3..5fa3cbcf5 100644 --- a/workload/bicep/deploy-baseline.bicep +++ b/workload/bicep/deploy-baseline.bicep @@ -207,6 +207,9 @@ param availabilityZonesCompute bool = true @sys.description('When true, Zone Redundant Storage (ZRS) is used, when set to false, Locally Redundant Storage (LRS) is used. (Default: false)') param zoneRedundantStorage bool = false +@sys.description('Deploys a VMSS Flex group and associates session hosts with it for availability purposes. (Default: true)') +param deployVmssFlex bool = true + @sys.description('Sets the number of fault domains for the availability set. (Default: 2)') param vmssFlatformFaultDomainCount int = 2 @@ -1441,7 +1444,7 @@ module msixAzureFilesStorage './modules/storageAzureFiles/deploy.bicep' = if (va } // VMSS Flex -module vmScaleSetFlex './modules/avdSessionHosts/.bicep/vmScaleSet.bicep' = if (avdDeploySessionHosts) { +module vmScaleSetFlex './modules/avdSessionHosts/.bicep/vmScaleSet.bicep' = if (avdDeploySessionHosts && deployVmssFlex) { name: 'AVD-VMSS-Flex-${time}' scope: resourceGroup('${avdWorkloadSubsId}', '${varComputeObjectsRgName}') params: { @@ -1473,6 +1476,7 @@ module sessionHosts './modules/avdSessionHosts/deploy.bicep' = [ createIntuneEnrollment: createIntuneEnrollment maxVmssFlexMembersCount: varMaxVmssFlexMembersCount vmssFlexNamePrefix: varVmssFlexNamePrefix + useVmssFlex: deployVmssFlex batchId: i - 1 computeObjectsRgName: varComputeObjectsRgName count: i == varSessionHostBatchCount && varMaxSessionHostsDivisionRemainderValue > 0 diff --git a/workload/bicep/modules/avdSessionHosts/deploy.bicep b/workload/bicep/modules/avdSessionHosts/deploy.bicep index 94bbf7fe4..d6ba0f603 100644 --- a/workload/bicep/modules/avdSessionHosts/deploy.bicep +++ b/workload/bicep/modules/avdSessionHosts/deploy.bicep @@ -34,6 +34,9 @@ param subscriptionId string @sys.description('Quantity of session hosts to deploy.') param count int +@sys.description('Associate VMs with VMSS Flex group.') +param useVmssFlex bool + @sys.description('Max VMs per availability set.') param maxVmssFlexMembersCount int @@ -178,7 +181,7 @@ module sessionHosts '../../../../avm/1.0.0/res/compute/virtual-machine/main.bice systemAssigned: true }: null encryptionAtHost: encryptionAtHost - virtualMachineScaleSetResourceId: '/subscriptions/${subscriptionId}/resourceGroups/${computeObjectsRgName}/providers/Microsoft.Compute/virtualMachineScaleSets/${vmssFlexNamePrefix}-${padLeft(((1 + (i + countIndex) / maxVmssFlexMembersCount)), 3, '0')}' + virtualMachineScaleSetResourceId: useVmssFlex ? '/subscriptions/${subscriptionId}/resourceGroups/${computeObjectsRgName}/providers/Microsoft.Compute/virtualMachineScaleSets/${vmssFlexNamePrefix}-${padLeft(((1 + (i + countIndex) / maxVmssFlexMembersCount)), 3, '0')}': '' osType: 'Windows' licenseType: 'Windows_Client' vmSize: vmSize diff --git a/workload/bicep/parameters/deploy-baseline-parameters-example.json b/workload/bicep/parameters/deploy-baseline-parameters-example.json index 7dd52d2f3..de8229595 100644 --- a/workload/bicep/parameters/deploy-baseline-parameters-example.json +++ b/workload/bicep/parameters/deploy-baseline-parameters-example.json @@ -208,6 +208,9 @@ }, "deployGpuPolicies": { "value": false + }, + "deployVmssFlex": { + "value": true } } } diff --git a/workload/docs/deploy-baseline.md b/workload/docs/deploy-baseline.md index 370de138d..61cdebd83 100644 --- a/workload/docs/deploy-baseline.md +++ b/workload/docs/deploy-baseline.md @@ -37,7 +37,8 @@ - **Deploy sessions hosts** - You can choose to not deploy session hosts just the Azure Virtual Desktop service objects. - **Session host region** - Provide the region to where you want to deploy the session hosts. This defaults to the Management Plane region but can be changed. - **Session hosts OU path (Optional)** - Provide OU where to locate session hosts, if not provided session hosts will be placed on the default (computers) OU. If left empty the computer account will be created in the default Computers OU. Example: OU=avd,DC=contoso,DC=com. - - **Availability zones** - If you deselect the checkbox, an Availability set will be created instead and session hosts will be created in the availability set. If you select the checkbox the accelerator will distribute compute and storage resources across availability zones. + - **Availability zones** - If you deselect the checkbox, VMs will be deployed regionally and will be associated with a regional VMSS Flex (if VMSS is enabled). If you select the checkbox the accelerator will distribute compute and storage resources across availability zones and will also associate the VMs with a VMSS Flex group created to use multiple availability zones. + - **VMSS Flex** - If you deselect the checkbox, no VMSS Flex will be created. If you select the checkbox, the accelerator will deploy a VMSS Flex and VMs will be associated with it. - **VM size** - Select the SKU size for the session hosts. - **VM count** - Select the number of session hosts to deploy. - **OS disk type** - Select the OS Disk SKU type. Premium is recommended for performance and higher SLA. diff --git a/workload/portal-ui/brownfield/portalUiNewSessionHosts.json b/workload/portal-ui/brownfield/portalUiNewSessionHosts.json index 5d1204306..569cfdba2 100644 --- a/workload/portal-ui/brownfield/portalUiNewSessionHosts.json +++ b/workload/portal-ui/brownfield/portalUiNewSessionHosts.json @@ -320,6 +320,7 @@ "label": "Select VMSS Flex", "visible": true, "resourceType": "Microsoft.Compute/virtualMachineScaleSets", + "toolTip": "Deploy and associate session hosts with a Virtual Machine Scale Set (VMSS) with Flex orchestration to distribute session hosts across fault domains.", "constraints": { "required": false }, diff --git a/workload/portal-ui/portal-ui-baseline.json b/workload/portal-ui/portal-ui-baseline.json index 5f2989a6a..68e50d332 100644 --- a/workload/portal-ui/portal-ui-baseline.json +++ b/workload/portal-ui/portal-ui-baseline.json @@ -572,7 +572,15 @@ "visible": true, "label": "Availability zones", "defaultValue": true, - "toolTip": "Distribute compute resources across availability zones using multi zone VMSS Flex with 1 fault domain. If 'No' is selected then a VMSS Flex will be created to host the VMs at a regional level but distributing across multiple fault domains." + "toolTip": "Distribute compute resources across availability zones using multi zone VMSS Flex with 1 fault domain (when VMSS Flex is enabled). If 'No' is selected then a VMSS Flex will be created to host the VMs at a regional level but distributing across multiple fault domains." + }, + { + "name": "sessionHostsAvailabilitySettingsVmss", + "type": "Microsoft.Common.CheckBox", + "visible": true, + "label": "VMSS Flex", + "defaultValue": true, + "toolTip": "Deploy and associate session hosts with a Virtual Machine Scale Set (VMSS) with Flex orchestration to distribute session hosts across fault domains." }, { "name": "sessionHostsRegion", @@ -2385,6 +2393,7 @@ "avdDeployScalingPlan": "[if(contains(steps('basics').resourceScope.location.name, 'china'), false, steps('managementPlane').managementPlaneHostPoolScaling.scalingPlan)]", "avdEnterpriseAppObjectId": "[first(map(steps('managementPlane').managementPlaneHostPoolScaling.avdEnterpriseApplication.value, (item) => item.id))]", "availabilityZonesCompute": "[if(equals(steps('sessionHosts').deploySessionHosts, true), steps('sessionHosts').sessionHostsRegionSection.sessionHostsAvailabilitySettings, false)]", + "deployVmssFlex": "[if(equals(steps('sessionHosts').deploySessionHosts, true), steps('sessionHosts').sessionHostsRegionSection.sessionHostsAvailabilitySettingsVmss, false)]", "zoneRedundantStorage": "[if(or(steps('storage').storageFslogix.fslogixDeployment, steps('storage').storageMsix.msixDeployment), steps('storage').storageGeneralSettings.storageGeneralSettingsZoneRedundancy, false)]", "avdDeploySessionHostsCount": "[if(equals(steps('sessionHosts').deploySessionHosts, true), steps('sessionHosts').sessionHostsSettingsSection.sessionHostsCount, 1)]", "useSharedImage": "[if(equals(steps('sessionHosts').deploySessionHosts, true), steps('sessionHosts').sessionHostsOsSection.sessionHostsImageSource, false)]",