Microsoft.AzureStackHCI clusters/deploymentSettings

ARM template resource definition

The clusters/deploymentSettings 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.AzureStackHCI/clusters/deploymentSettings resource, add the following JSON to your template.

{
  "type": "Microsoft.AzureStackHCI/clusters/deploymentSettings",
  "apiVersion": "2023-11-01-preview",
  "name": "string",
  "properties": {
    "arcNodeResourceIds": [ "string" ],
    "deploymentConfiguration": {
      "scaleUnits": [
        {
          "deploymentData": {
            "adouPath": "string",
            "cluster": {
              "azureServiceEndpoint": "string",
              "cloudAccountName": "string",
              "name": "string",
              "witnessPath": "string",
              "witnessType": "string"
            },
            "domainFqdn": "string",
            "hostNetwork": {
              "enableStorageAutoIp": "bool",
              "intents": [
                {
                  "adapter": [ "string" ],
                  "adapterPropertyOverrides": {
                    "jumboPacket": "string",
                    "networkDirect": "string",
                    "networkDirectTechnology": "string"
                  },
                  "name": "string",
                  "overrideAdapterProperty": "bool",
                  "overrideQosPolicy": "bool",
                  "overrideVirtualSwitchConfiguration": "bool",
                  "qosPolicyOverrides": {
                    "bandwidthPercentage_SMB": "string",
                    "priorityValue8021Action_Cluster": "string",
                    "priorityValue8021Action_SMB": "string"
                  },
                  "trafficType": [ "string" ],
                  "virtualSwitchConfigurationOverrides": {
                    "enableIov": "string",
                    "loadBalancingAlgorithm": "string"
                  }
                }
              ],
              "storageConnectivitySwitchless": "bool",
              "storageNetworks": [
                {
                  "name": "string",
                  "networkAdapterName": "string",
                  "vlanId": "string"
                }
              ]
            },
            "infrastructureNetwork": [
              {
                "dnsServers": [ "string" ],
                "gateway": "string",
                "ipPools": [
                  {
                    "endingAddress": "string",
                    "startingAddress": "string"
                  }
                ],
                "subnetMask": "string",
                "useDhcp": "bool"
              }
            ],
            "namingPrefix": "string",
            "observability": {
              "episodicDataUpload": "bool",
              "euLocation": "bool",
              "streamingDataClient": "bool"
            },
            "optionalServices": {
              "customLocation": "string"
            },
            "physicalNodes": [
              {
                "ipv4Address": "string",
                "name": "string"
              }
            ],
            "secretsLocation": "string",
            "securitySettings": {
              "bitlockerBootVolume": "bool",
              "bitlockerDataVolumes": "bool",
              "credentialGuardEnforced": "bool",
              "driftControlEnforced": "bool",
              "drtmProtection": "bool",
              "hvciProtection": "bool",
              "sideChannelMitigationEnforced": "bool",
              "smbClusterEncryption": "bool",
              "smbSigningEnforced": "bool",
              "wdacEnforced": "bool"
            },
            "storage": {
              "configurationMode": "string"
            }
          }
        }
      ],
      "version": "string"
    },
    "deploymentMode": "string"
  }
}

Property values

clusters/deploymentSettings

Name Description Value
type The resource type 'Microsoft.AzureStackHCI/clusters/deploymentSettings'
apiVersion The resource api version '2023-11-01-preview'
name The resource name

See how to set names and types for child resources in JSON ARM templates.
string (required)
properties The resource-specific properties for this resource. DeploymentSettingsProperties

DeploymentSettingsProperties

Name Description Value
arcNodeResourceIds Azure resource ids of Arc machines to be part of cluster. string[] (required)
deploymentConfiguration Scale units will contains list of deployment data DeploymentConfiguration (required)
deploymentMode The deployment mode for cluster deployment. 'Deploy'
'Validate' (required)

DeploymentConfiguration

Name Description Value
scaleUnits Scale units will contains list of deployment data ScaleUnits[] (required)
version deployment template version string

ScaleUnits

Name Description Value
deploymentData Deployment Data to deploy AzureStackHCI Cluster. DeploymentData (required)

DeploymentData

Name Description Value
adouPath The path to the Active Directory Organizational Unit container object prepared for the deployment. string
cluster Observability config to deploy AzureStackHCI Cluster. DeploymentCluster
domainFqdn FQDN to deploy cluster string
hostNetwork HostNetwork config to deploy AzureStackHCI Cluster. HostNetwork
infrastructureNetwork InfrastructureNetwork config to deploy AzureStackHCI Cluster. InfrastructureNetwork[]
namingPrefix naming prefix to deploy cluster. string

Constraints:
Pattern = ^[a-zA-Z0-9-]{1,8}$


observability Observability config to deploy AzureStackHCI Cluster. Observability
optionalServices OptionalServices config to deploy AzureStackHCI Cluster. OptionalServices
physicalNodes list of physical nodes config to deploy AzureStackHCI Cluster. PhysicalNodes[]
secretsLocation The URI to the keyvault / secret store. string
securitySettings SecuritySettings to deploy AzureStackHCI Cluster. DeploymentSecuritySettings
storage Storage config to deploy AzureStackHCI Cluster. Storage

DeploymentCluster

Name Description Value
azureServiceEndpoint For Azure blob service endpoint type, select either Default or Custom domain. If you selected **Custom domain, enter the domain for the blob service in this format core.windows.net. string
cloudAccountName Specify the Azure Storage account name for cloud witness for your Azure Stack HCI cluster. string
name The cluster name provided when preparing Active Directory. string
witnessPath Specify the fileshare path for the local witness for your Azure Stack HCI cluster. string
witnessType Use a cloud witness if you have internet access and if you use an Azure Storage account to provide a vote on cluster quorum. A cloud witness uses Azure Blob Storage to read or write a blob file and then uses it to arbitrate in split-brain resolution. Only allowed values are 'Cloud', 'FileShare'. string

HostNetwork

Name Description Value
enableStorageAutoIp Optional parameter required only for 3 Nodes Switchless deployments. This allows users to specify IPs and Mask for Storage NICs when Network ATC is not assigning the IPs for storage automatically. bool
intents The network intents assigned to the network reference pattern used for the deployment. Each intent will define its own name, traffic type, adapter names, and overrides as recommended by your OEM. Intents[]
storageConnectivitySwitchless Defines how the storage adapters between nodes are connected either switch or switch less.. bool
storageNetworks List of StorageNetworks config to deploy AzureStackHCI Cluster. StorageNetworks[]

Intents

Name Description Value
adapter Array of network interfaces used for the network intent. string[]
adapterPropertyOverrides Set Adapter PropertyOverrides for cluster. AdapterPropertyOverrides
name Name of the network intent you wish to create. string
overrideAdapterProperty This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. bool
overrideQosPolicy This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. bool
overrideVirtualSwitchConfiguration This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. bool
qosPolicyOverrides Set QoS PolicyOverrides for cluster. QosPolicyOverrides
trafficType List of network traffic types. Only allowed values are 'Compute', 'Storage', 'Management'. string[]
virtualSwitchConfigurationOverrides Set virtualSwitch ConfigurationOverrides for cluster. VirtualSwitchConfigurationOverrides

AdapterPropertyOverrides

Name Description Value
jumboPacket This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. string
networkDirect This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. string
networkDirectTechnology This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. Expected values are 'iWARP', 'RoCEv2', 'RoCE' string

QosPolicyOverrides

Name Description Value
bandwidthPercentage_SMB This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. string
priorityValue8021Action_Cluster This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. string
priorityValue8021Action_SMB This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. string

VirtualSwitchConfigurationOverrides

Name Description Value
enableIov Enable IoV for Virtual Switch string
loadBalancingAlgorithm Load Balancing Algorithm for Virtual Switch string

StorageNetworks

Name Description Value
name Name of the storage network. string
networkAdapterName Name of the storage network adapter. string
vlanId ID specified for the VLAN storage network. This setting is applied to the network interfaces that route the storage and VM migration traffic. string

InfrastructureNetwork

Name Description Value
dnsServers IPv4 address of the DNS servers in your environment. string[]
gateway Default gateway that should be used for the provided IP address space. string
ipPools Range of IP addresses from which addresses are allocated for nodes within a subnet. IpPools[]
subnetMask Subnet mask that matches the provided IP address space. string
useDhcp Allows customers to use DHCP for Hosts and Cluster IPs. If not declared, the deployment will default to static IPs. When true, GW and DNS servers are not required bool

IpPools

Name Description Value
endingAddress Ending IP address for the management network. A minimum of six free, contiguous IPv4 addresses (excluding your host IPs) are needed for infrastructure services such as clustering. string
startingAddress Starting IP address for the management network. A minimum of six free, contiguous IPv4 addresses (excluding your host IPs) are needed for infrastructure services such as clustering. string

Observability

Name Description Value
episodicDataUpload When set to true, collects log data to facilitate quicker issue resolution. bool
euLocation Location of your cluster. The log and diagnostic data is sent to the appropriate diagnostics servers depending upon where your cluster resides. Setting this to false results in all data sent to Microsoft to be stored outside of the EU. bool
streamingDataClient Enables telemetry data to be sent to Microsoft bool

OptionalServices

Name Description Value
customLocation The name of custom location. string

PhysicalNodes

Name Description Value
ipv4Address The IPv4 address assigned to each physical server on your Azure Stack HCI cluster. string
name NETBIOS name of each physical server on your Azure Stack HCI cluster. string

DeploymentSecuritySettings

Name Description Value
bitlockerBootVolume When set to true, BitLocker XTS_AES 256-bit encryption is enabled for all data-at-rest on the OS volume of your Azure Stack HCI cluster. This setting is TPM-hardware dependent. bool
bitlockerDataVolumes When set to true, BitLocker XTS-AES 256-bit encryption is enabled for all data-at-rest on your Azure Stack HCI cluster shared volumes. bool
credentialGuardEnforced When set to true, Credential Guard is enabled. bool
driftControlEnforced When set to true, the security baseline is re-applied regularly. bool
drtmProtection By default, Secure Boot is enabled on your Azure HCI cluster. This setting is hardware dependent. bool
hvciProtection By default, Hypervisor-protected Code Integrity is enabled on your Azure HCI cluster. bool
sideChannelMitigationEnforced When set to true, all the side channel mitigations are enabled bool
smbClusterEncryption When set to true, cluster east-west traffic is encrypted. bool
smbSigningEnforced When set to true, the SMB default instance requires sign in for the client and server services. bool
wdacEnforced WDAC is enabled by default and limits the applications and the code that you can run on your Azure Stack HCI cluster. bool

Storage

Name Description Value
configurationMode By default, this mode is set to Express and your storage is configured as per best practices based on the number of nodes in the cluster. Allowed values are 'Express','InfraOnly', 'KeepStorage' string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
creates an Azure Stack HCI 23H2 cluster

Deploy to Azure
This template creates an Azure Stack HCI 23H2 cluster using an ARM template.