Share via


Microsoft.NetworkCloud clusters 2024-07-01

Bicep resource definition

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

resource symbolicname 'Microsoft.NetworkCloud/clusters@2024-07-01' = {
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    aggregatorOrSingleRackDefinition: {
      availabilityZone: 'string'
      bareMetalMachineConfigurationData: [
        {
          bmcCredentials: {
            password: 'string'
            username: 'string'
          }
          bmcMacAddress: 'string'
          bootMacAddress: 'string'
          machineDetails: 'string'
          machineName: 'string'
          rackSlot: int
          serialNumber: 'string'
        }
      ]
      networkRackId: 'string'
      rackLocation: 'string'
      rackSerialNumber: 'string'
      rackSkuId: 'string'
      storageApplianceConfigurationData: [
        {
          adminCredentials: {
            password: 'string'
            username: 'string'
          }
          rackSlot: int
          serialNumber: 'string'
          storageApplianceName: 'string'
        }
      ]
    }
    analyticsWorkspaceId: 'string'
    clusterLocation: 'string'
    clusterServicePrincipal: {
      applicationId: 'string'
      password: 'string'
      principalId: 'string'
      tenantId: 'string'
    }
    clusterType: 'string'
    clusterVersion: 'string'
    commandOutputSettings: {
      associatedIdentity: {
        identityType: 'string'
        userAssignedIdentityResourceId: 'string'
      }
      containerUrl: 'string'
    }
    computeDeploymentThreshold: {
      grouping: 'string'
      type: 'string'
      value: int
    }
    computeRackDefinitions: [
      {
        availabilityZone: 'string'
        bareMetalMachineConfigurationData: [
          {
            bmcCredentials: {
              password: 'string'
              username: 'string'
            }
            bmcMacAddress: 'string'
            bootMacAddress: 'string'
            machineDetails: 'string'
            machineName: 'string'
            rackSlot: int
            serialNumber: 'string'
          }
        ]
        networkRackId: 'string'
        rackLocation: 'string'
        rackSerialNumber: 'string'
        rackSkuId: 'string'
        storageApplianceConfigurationData: [
          {
            adminCredentials: {
              password: 'string'
              username: 'string'
            }
            rackSlot: int
            serialNumber: 'string'
            storageApplianceName: 'string'
          }
        ]
      }
    ]
    managedResourceGroupConfiguration: {
      location: 'string'
      name: 'string'
    }
    networkFabricId: 'string'
    runtimeProtectionConfiguration: {
      enforcementLevel: 'string'
    }
    secretArchive: {
      keyVaultId: 'string'
      useKeyVault: 'string'
    }
    updateStrategy: {
      maxUnavailable: int
      strategyType: 'string'
      thresholdType: 'string'
      thresholdValue: int
      waitTimeMinutes: int
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Property Values

Microsoft.NetworkCloud/clusters

Name Description Value
extendedLocation The extended location of the cluster manager associated with the cluster. ExtendedLocation (required)
identity The identity for the resource. ManagedServiceIdentity
location The geo-location where the resource lives string (required)
name The resource name string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$ (required)
properties The list of the resource properties. ClusterProperties (required)
tags Resource tags Dictionary of tag names and values. See Tags in templates

AdministrativeCredentials

Name Description Value
password The password of the administrator of the device used during initialization. string

Constraints:
Min length = 1
Sensitive value. Pass in as a secure parameter. (required)
username The username of the administrator of the device used during initialization. string

Constraints:
Min length = 1 (required)

BareMetalMachineConfigurationData

Name Description Value
bmcCredentials The credentials of the baseboard management controller on this bare metal machine. AdministrativeCredentials (required)
bmcMacAddress The MAC address of the BMC for this machine. string

Constraints:
Pattern = ^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$ (required)
bootMacAddress The MAC address associated with the PXE NIC card. string

Constraints:
Pattern = ^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$ (required)
machineDetails The free-form additional information about the machine, e.g. an asset tag. string

Constraints:
Max length = 256
machineName The user-provided name for the bare metal machine created from this specification.
If not provided, the machine name will be generated programmatically.
string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9]{0,62}[a-zA-Z0-9])$
rackSlot The slot the physical machine is in the rack based on the BOM configuration. int

Constraints:
Min value = 1
Max value = 256 (required)
serialNumber The serial number of the machine. Hardware suppliers may use an alternate value. For example, service tag. string

Constraints:
Max length = 64 (required)

ClusterProperties

Name Description Value
aggregatorOrSingleRackDefinition The rack definition that is intended to reflect only a single rack in a single rack cluster, or an aggregator rack in a multi-rack cluster. RackDefinition (required)
analyticsWorkspaceId The resource ID of the Log Analytics Workspace that will be used for storing relevant logs. string
clusterLocation The customer-provided location information to identify where the cluster resides. string

Constraints:
Max length = 256
clusterServicePrincipal The service principal to be used by the cluster during Arc Appliance installation. ServicePrincipalInformation
clusterType The type of rack configuration for the cluster. 'MultiRack'
'SingleRack' (required)
clusterVersion The current runtime version of the cluster. string (required)
commandOutputSettings The settings for commands run in this cluster, such as bare metal machine run read only commands and data extracts. CommandOutputSettings
computeDeploymentThreshold The validation threshold indicating the allowable failures of compute machines during environment validation and deployment. ValidationThreshold
computeRackDefinitions The list of rack definitions for the compute racks in a multi-rack
cluster, or an empty list in a single-rack cluster.
RackDefinition[]
managedResourceGroupConfiguration The configuration of the managed resource group associated with the resource. ManagedResourceGroupConfiguration
networkFabricId The resource ID of the Network Fabric associated with the cluster. string (required)
runtimeProtectionConfiguration The settings for cluster runtime protection. RuntimeProtectionConfiguration
secretArchive The configuration for use of a key vault to store secrets for later retrieval by the operator. ClusterSecretArchive
updateStrategy The strategy for updating the cluster. ClusterUpdateStrategy

ClusterSecretArchive

Name Description Value
keyVaultId The resource ID of the key vault to archive the secrets of the cluster. string (required)
useKeyVault The indicator if the specified key vault should be used to archive the secrets of the cluster. 'False'
'True'

ClusterUpdateStrategy

Name Description Value
maxUnavailable The maximum number of worker nodes that can be offline within the increment of update, e.g., rack-by-rack.
Limited by the maximum number of machines in the increment. Defaults to the whole increment size.
int

Constraints:
Min value = 1
strategyType The mode of operation for runtime protection. 'PauseAfterRack'
'Rack' (required)
thresholdType Selection of how the threshold should be evaluated. 'CountSuccess'
'PercentSuccess' (required)
thresholdValue The numeric threshold value. int

Constraints:
Min value = 0 (required)
waitTimeMinutes The time to wait between the increments of update defined by the strategy. int

Constraints:
Min value = 0
Max value = 60

CommandOutputSettings

Name Description Value
associatedIdentity The selection of the managed identity to use with this storage account container. The identity type must be either system assigned or user assigned. IdentitySelector
containerUrl The URL of the storage account container that is to be used by the specified identities. string

ExtendedLocation

Name Description Value
name The resource ID of the extended location on which the resource will be created. string (required)
type The extended location type, for example, CustomLocation. string (required)

IdentitySelector

Name Description Value
identityType The type of managed identity that is being selected. 'SystemAssignedIdentity'
'UserAssignedIdentity'
userAssignedIdentityResourceId The user assigned managed identity resource ID to use. Mutually exclusive with a system assigned identity type. string

ManagedResourceGroupConfiguration

Name Description Value
location The location of the managed resource group. If not specified, the location of the parent resource is chosen. string
name The name for the managed resource group. If not specified, the unique name is automatically generated. string

Constraints:
Max length = 75

ManagedServiceIdentity

Name Description Value
type Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (required)
userAssignedIdentities The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests. UserAssignedIdentities

RackDefinition

Name Description Value
availabilityZone The zone name used for this rack when created. Availability zones are used for workload placement. string

Constraints:
Pattern = ^[a-zA-Z0-9]{1,10}$
bareMetalMachineConfigurationData The unordered list of bare metal machine configuration. BareMetalMachineConfigurationData[]
networkRackId The resource ID of the network rack that matches this rack definition. string (required)
rackLocation The free-form description of the rack's location. string

Constraints:
Max length = 256
rackSerialNumber The unique identifier for the rack within Network Cloud cluster. An alternate unique alphanumeric value other than a serial number may be provided if desired. string

Constraints:
Min length = 1
Max length = 64 (required)
rackSkuId The resource ID of the sku for the rack being added. string (required)
storageApplianceConfigurationData The list of storage appliance configuration data for this rack. StorageApplianceConfigurationData[]

RuntimeProtectionConfiguration

Name Description Value
enforcementLevel The mode of operation for runtime protection. 'Audit'
'Disabled'
'OnDemand'
'Passive'
'RealTime'

ServicePrincipalInformation

Name Description Value
applicationId The application ID, also known as client ID, of the service principal. string (required)
password The password of the service principal. string

Constraints:
Sensitive value. Pass in as a secure parameter. (required)
principalId The principal ID, also known as the object ID, of the service principal. string (required)
tenantId The tenant ID, also known as the directory ID, of the tenant in which the service principal is created. string (required)

StorageApplianceConfigurationData

Name Description Value
adminCredentials The credentials of the administrative interface on this storage appliance. AdministrativeCredentials (required)
rackSlot The slot that storage appliance is in the rack based on the BOM configuration. int

Constraints:
Min value = 1
Max value = 256 (required)
serialNumber The serial number of the appliance. string (required)
storageApplianceName The user-provided name for the storage appliance that will be created from this specification. string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$

TrackedResourceTags

Name Description Value

UserAssignedIdentities

Name Description Value

UserAssignedIdentity

Name Description Value

ValidationThreshold

Name Description Value
grouping Selection of how the type evaluation is applied to the cluster calculation. 'PerCluster'
'PerRack' (required)
type Selection of how the threshold should be evaluated. 'CountSuccess'
'PercentSuccess' (required)
value The numeric threshold value. int

Constraints:
Min value = 0 (required)

ARM template resource definition

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

{
  "type": "Microsoft.NetworkCloud/clusters",
  "apiVersion": "2024-07-01",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "string"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "aggregatorOrSingleRackDefinition": {
      "availabilityZone": "string",
      "bareMetalMachineConfigurationData": [
        {
          "bmcCredentials": {
            "password": "string",
            "username": "string"
          },
          "bmcMacAddress": "string",
          "bootMacAddress": "string",
          "machineDetails": "string",
          "machineName": "string",
          "rackSlot": "int",
          "serialNumber": "string"
        }
      ],
      "networkRackId": "string",
      "rackLocation": "string",
      "rackSerialNumber": "string",
      "rackSkuId": "string",
      "storageApplianceConfigurationData": [
        {
          "adminCredentials": {
            "password": "string",
            "username": "string"
          },
          "rackSlot": "int",
          "serialNumber": "string",
          "storageApplianceName": "string"
        }
      ]
    },
    "analyticsWorkspaceId": "string",
    "clusterLocation": "string",
    "clusterServicePrincipal": {
      "applicationId": "string",
      "password": "string",
      "principalId": "string",
      "tenantId": "string"
    },
    "clusterType": "string",
    "clusterVersion": "string",
    "commandOutputSettings": {
      "associatedIdentity": {
        "identityType": "string",
        "userAssignedIdentityResourceId": "string"
      },
      "containerUrl": "string"
    },
    "computeDeploymentThreshold": {
      "grouping": "string",
      "type": "string",
      "value": "int"
    },
    "computeRackDefinitions": [
      {
        "availabilityZone": "string",
        "bareMetalMachineConfigurationData": [
          {
            "bmcCredentials": {
              "password": "string",
              "username": "string"
            },
            "bmcMacAddress": "string",
            "bootMacAddress": "string",
            "machineDetails": "string",
            "machineName": "string",
            "rackSlot": "int",
            "serialNumber": "string"
          }
        ],
        "networkRackId": "string",
        "rackLocation": "string",
        "rackSerialNumber": "string",
        "rackSkuId": "string",
        "storageApplianceConfigurationData": [
          {
            "adminCredentials": {
              "password": "string",
              "username": "string"
            },
            "rackSlot": "int",
            "serialNumber": "string",
            "storageApplianceName": "string"
          }
        ]
      }
    ],
    "managedResourceGroupConfiguration": {
      "location": "string",
      "name": "string"
    },
    "networkFabricId": "string",
    "runtimeProtectionConfiguration": {
      "enforcementLevel": "string"
    },
    "secretArchive": {
      "keyVaultId": "string",
      "useKeyVault": "string"
    },
    "updateStrategy": {
      "maxUnavailable": "int",
      "strategyType": "string",
      "thresholdType": "string",
      "thresholdValue": "int",
      "waitTimeMinutes": "int"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property Values

Microsoft.NetworkCloud/clusters

Name Description Value
apiVersion The api version '2024-07-01'
extendedLocation The extended location of the cluster manager associated with the cluster. ExtendedLocation (required)
identity The identity for the resource. ManagedServiceIdentity
location The geo-location where the resource lives string (required)
name The resource name string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$ (required)
properties The list of the resource properties. ClusterProperties (required)
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.NetworkCloud/clusters'

AdministrativeCredentials

Name Description Value
password The password of the administrator of the device used during initialization. string

Constraints:
Min length = 1
Sensitive value. Pass in as a secure parameter. (required)
username The username of the administrator of the device used during initialization. string

Constraints:
Min length = 1 (required)

BareMetalMachineConfigurationData

Name Description Value
bmcCredentials The credentials of the baseboard management controller on this bare metal machine. AdministrativeCredentials (required)
bmcMacAddress The MAC address of the BMC for this machine. string

Constraints:
Pattern = ^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$ (required)
bootMacAddress The MAC address associated with the PXE NIC card. string

Constraints:
Pattern = ^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$ (required)
machineDetails The free-form additional information about the machine, e.g. an asset tag. string

Constraints:
Max length = 256
machineName The user-provided name for the bare metal machine created from this specification.
If not provided, the machine name will be generated programmatically.
string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9]{0,62}[a-zA-Z0-9])$
rackSlot The slot the physical machine is in the rack based on the BOM configuration. int

Constraints:
Min value = 1
Max value = 256 (required)
serialNumber The serial number of the machine. Hardware suppliers may use an alternate value. For example, service tag. string

Constraints:
Max length = 64 (required)

ClusterProperties

Name Description Value
aggregatorOrSingleRackDefinition The rack definition that is intended to reflect only a single rack in a single rack cluster, or an aggregator rack in a multi-rack cluster. RackDefinition (required)
analyticsWorkspaceId The resource ID of the Log Analytics Workspace that will be used for storing relevant logs. string
clusterLocation The customer-provided location information to identify where the cluster resides. string

Constraints:
Max length = 256
clusterServicePrincipal The service principal to be used by the cluster during Arc Appliance installation. ServicePrincipalInformation
clusterType The type of rack configuration for the cluster. 'MultiRack'
'SingleRack' (required)
clusterVersion The current runtime version of the cluster. string (required)
commandOutputSettings The settings for commands run in this cluster, such as bare metal machine run read only commands and data extracts. CommandOutputSettings
computeDeploymentThreshold The validation threshold indicating the allowable failures of compute machines during environment validation and deployment. ValidationThreshold
computeRackDefinitions The list of rack definitions for the compute racks in a multi-rack
cluster, or an empty list in a single-rack cluster.
RackDefinition[]
managedResourceGroupConfiguration The configuration of the managed resource group associated with the resource. ManagedResourceGroupConfiguration
networkFabricId The resource ID of the Network Fabric associated with the cluster. string (required)
runtimeProtectionConfiguration The settings for cluster runtime protection. RuntimeProtectionConfiguration
secretArchive The configuration for use of a key vault to store secrets for later retrieval by the operator. ClusterSecretArchive
updateStrategy The strategy for updating the cluster. ClusterUpdateStrategy

ClusterSecretArchive

Name Description Value
keyVaultId The resource ID of the key vault to archive the secrets of the cluster. string (required)
useKeyVault The indicator if the specified key vault should be used to archive the secrets of the cluster. 'False'
'True'

ClusterUpdateStrategy

Name Description Value
maxUnavailable The maximum number of worker nodes that can be offline within the increment of update, e.g., rack-by-rack.
Limited by the maximum number of machines in the increment. Defaults to the whole increment size.
int

Constraints:
Min value = 1
strategyType The mode of operation for runtime protection. 'PauseAfterRack'
'Rack' (required)
thresholdType Selection of how the threshold should be evaluated. 'CountSuccess'
'PercentSuccess' (required)
thresholdValue The numeric threshold value. int

Constraints:
Min value = 0 (required)
waitTimeMinutes The time to wait between the increments of update defined by the strategy. int

Constraints:
Min value = 0
Max value = 60

CommandOutputSettings

Name Description Value
associatedIdentity The selection of the managed identity to use with this storage account container. The identity type must be either system assigned or user assigned. IdentitySelector
containerUrl The URL of the storage account container that is to be used by the specified identities. string

ExtendedLocation

Name Description Value
name The resource ID of the extended location on which the resource will be created. string (required)
type The extended location type, for example, CustomLocation. string (required)

IdentitySelector

Name Description Value
identityType The type of managed identity that is being selected. 'SystemAssignedIdentity'
'UserAssignedIdentity'
userAssignedIdentityResourceId The user assigned managed identity resource ID to use. Mutually exclusive with a system assigned identity type. string

ManagedResourceGroupConfiguration

Name Description Value
location The location of the managed resource group. If not specified, the location of the parent resource is chosen. string
name The name for the managed resource group. If not specified, the unique name is automatically generated. string

Constraints:
Max length = 75

ManagedServiceIdentity

Name Description Value
type Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (required)
userAssignedIdentities The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests. UserAssignedIdentities

RackDefinition

Name Description Value
availabilityZone The zone name used for this rack when created. Availability zones are used for workload placement. string

Constraints:
Pattern = ^[a-zA-Z0-9]{1,10}$
bareMetalMachineConfigurationData The unordered list of bare metal machine configuration. BareMetalMachineConfigurationData[]
networkRackId The resource ID of the network rack that matches this rack definition. string (required)
rackLocation The free-form description of the rack's location. string

Constraints:
Max length = 256
rackSerialNumber The unique identifier for the rack within Network Cloud cluster. An alternate unique alphanumeric value other than a serial number may be provided if desired. string

Constraints:
Min length = 1
Max length = 64 (required)
rackSkuId The resource ID of the sku for the rack being added. string (required)
storageApplianceConfigurationData The list of storage appliance configuration data for this rack. StorageApplianceConfigurationData[]

RuntimeProtectionConfiguration

Name Description Value
enforcementLevel The mode of operation for runtime protection. 'Audit'
'Disabled'
'OnDemand'
'Passive'
'RealTime'

ServicePrincipalInformation

Name Description Value
applicationId The application ID, also known as client ID, of the service principal. string (required)
password The password of the service principal. string

Constraints:
Sensitive value. Pass in as a secure parameter. (required)
principalId The principal ID, also known as the object ID, of the service principal. string (required)
tenantId The tenant ID, also known as the directory ID, of the tenant in which the service principal is created. string (required)

StorageApplianceConfigurationData

Name Description Value
adminCredentials The credentials of the administrative interface on this storage appliance. AdministrativeCredentials (required)
rackSlot The slot that storage appliance is in the rack based on the BOM configuration. int

Constraints:
Min value = 1
Max value = 256 (required)
serialNumber The serial number of the appliance. string (required)
storageApplianceName The user-provided name for the storage appliance that will be created from this specification. string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$

TrackedResourceTags

Name Description Value

UserAssignedIdentities

Name Description Value

UserAssignedIdentity

Name Description Value

ValidationThreshold

Name Description Value
grouping Selection of how the type evaluation is applied to the cluster calculation. 'PerCluster'
'PerRack' (required)
type Selection of how the threshold should be evaluated. 'CountSuccess'
'PercentSuccess' (required)
value The numeric threshold value. int

Constraints:
Min value = 0 (required)

Usage Examples

Terraform (AzAPI provider) resource definition

The clusters resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.NetworkCloud/clusters resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.NetworkCloud/clusters@2024-07-01"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    extendedLocation = {
      name = "string"
      type = "string"
    }
    properties = {
      aggregatorOrSingleRackDefinition = {
        availabilityZone = "string"
        bareMetalMachineConfigurationData = [
          {
            bmcCredentials = {
              password = "string"
              username = "string"
            }
            bmcMacAddress = "string"
            bootMacAddress = "string"
            machineDetails = "string"
            machineName = "string"
            rackSlot = int
            serialNumber = "string"
          }
        ]
        networkRackId = "string"
        rackLocation = "string"
        rackSerialNumber = "string"
        rackSkuId = "string"
        storageApplianceConfigurationData = [
          {
            adminCredentials = {
              password = "string"
              username = "string"
            }
            rackSlot = int
            serialNumber = "string"
            storageApplianceName = "string"
          }
        ]
      }
      analyticsWorkspaceId = "string"
      clusterLocation = "string"
      clusterServicePrincipal = {
        applicationId = "string"
        password = "string"
        principalId = "string"
        tenantId = "string"
      }
      clusterType = "string"
      clusterVersion = "string"
      commandOutputSettings = {
        associatedIdentity = {
          identityType = "string"
          userAssignedIdentityResourceId = "string"
        }
        containerUrl = "string"
      }
      computeDeploymentThreshold = {
        grouping = "string"
        type = "string"
        value = int
      }
      computeRackDefinitions = [
        {
          availabilityZone = "string"
          bareMetalMachineConfigurationData = [
            {
              bmcCredentials = {
                password = "string"
                username = "string"
              }
              bmcMacAddress = "string"
              bootMacAddress = "string"
              machineDetails = "string"
              machineName = "string"
              rackSlot = int
              serialNumber = "string"
            }
          ]
          networkRackId = "string"
          rackLocation = "string"
          rackSerialNumber = "string"
          rackSkuId = "string"
          storageApplianceConfigurationData = [
            {
              adminCredentials = {
                password = "string"
                username = "string"
              }
              rackSlot = int
              serialNumber = "string"
              storageApplianceName = "string"
            }
          ]
        }
      ]
      managedResourceGroupConfiguration = {
        location = "string"
        name = "string"
      }
      networkFabricId = "string"
      runtimeProtectionConfiguration = {
        enforcementLevel = "string"
      }
      secretArchive = {
        keyVaultId = "string"
        useKeyVault = "string"
      }
      updateStrategy = {
        maxUnavailable = int
        strategyType = "string"
        thresholdType = "string"
        thresholdValue = int
        waitTimeMinutes = int
      }
    }
  }
}

Property Values

Microsoft.NetworkCloud/clusters

Name Description Value
extendedLocation The extended location of the cluster manager associated with the cluster. ExtendedLocation (required)
identity The identity for the resource. ManagedServiceIdentity
location The geo-location where the resource lives string (required)
name The resource name string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$ (required)
properties The list of the resource properties. ClusterProperties (required)
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.NetworkCloud/clusters@2024-07-01"

AdministrativeCredentials

Name Description Value
password The password of the administrator of the device used during initialization. string

Constraints:
Min length = 1
Sensitive value. Pass in as a secure parameter. (required)
username The username of the administrator of the device used during initialization. string

Constraints:
Min length = 1 (required)

BareMetalMachineConfigurationData

Name Description Value
bmcCredentials The credentials of the baseboard management controller on this bare metal machine. AdministrativeCredentials (required)
bmcMacAddress The MAC address of the BMC for this machine. string

Constraints:
Pattern = ^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$ (required)
bootMacAddress The MAC address associated with the PXE NIC card. string

Constraints:
Pattern = ^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$ (required)
machineDetails The free-form additional information about the machine, e.g. an asset tag. string

Constraints:
Max length = 256
machineName The user-provided name for the bare metal machine created from this specification.
If not provided, the machine name will be generated programmatically.
string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9]{0,62}[a-zA-Z0-9])$
rackSlot The slot the physical machine is in the rack based on the BOM configuration. int

Constraints:
Min value = 1
Max value = 256 (required)
serialNumber The serial number of the machine. Hardware suppliers may use an alternate value. For example, service tag. string

Constraints:
Max length = 64 (required)

ClusterProperties

Name Description Value
aggregatorOrSingleRackDefinition The rack definition that is intended to reflect only a single rack in a single rack cluster, or an aggregator rack in a multi-rack cluster. RackDefinition (required)
analyticsWorkspaceId The resource ID of the Log Analytics Workspace that will be used for storing relevant logs. string
clusterLocation The customer-provided location information to identify where the cluster resides. string

Constraints:
Max length = 256
clusterServicePrincipal The service principal to be used by the cluster during Arc Appliance installation. ServicePrincipalInformation
clusterType The type of rack configuration for the cluster. 'MultiRack'
'SingleRack' (required)
clusterVersion The current runtime version of the cluster. string (required)
commandOutputSettings The settings for commands run in this cluster, such as bare metal machine run read only commands and data extracts. CommandOutputSettings
computeDeploymentThreshold The validation threshold indicating the allowable failures of compute machines during environment validation and deployment. ValidationThreshold
computeRackDefinitions The list of rack definitions for the compute racks in a multi-rack
cluster, or an empty list in a single-rack cluster.
RackDefinition[]
managedResourceGroupConfiguration The configuration of the managed resource group associated with the resource. ManagedResourceGroupConfiguration
networkFabricId The resource ID of the Network Fabric associated with the cluster. string (required)
runtimeProtectionConfiguration The settings for cluster runtime protection. RuntimeProtectionConfiguration
secretArchive The configuration for use of a key vault to store secrets for later retrieval by the operator. ClusterSecretArchive
updateStrategy The strategy for updating the cluster. ClusterUpdateStrategy

ClusterSecretArchive

Name Description Value
keyVaultId The resource ID of the key vault to archive the secrets of the cluster. string (required)
useKeyVault The indicator if the specified key vault should be used to archive the secrets of the cluster. 'False'
'True'

ClusterUpdateStrategy

Name Description Value
maxUnavailable The maximum number of worker nodes that can be offline within the increment of update, e.g., rack-by-rack.
Limited by the maximum number of machines in the increment. Defaults to the whole increment size.
int

Constraints:
Min value = 1
strategyType The mode of operation for runtime protection. 'PauseAfterRack'
'Rack' (required)
thresholdType Selection of how the threshold should be evaluated. 'CountSuccess'
'PercentSuccess' (required)
thresholdValue The numeric threshold value. int

Constraints:
Min value = 0 (required)
waitTimeMinutes The time to wait between the increments of update defined by the strategy. int

Constraints:
Min value = 0
Max value = 60

CommandOutputSettings

Name Description Value
associatedIdentity The selection of the managed identity to use with this storage account container. The identity type must be either system assigned or user assigned. IdentitySelector
containerUrl The URL of the storage account container that is to be used by the specified identities. string

ExtendedLocation

Name Description Value
name The resource ID of the extended location on which the resource will be created. string (required)
type The extended location type, for example, CustomLocation. string (required)

IdentitySelector

Name Description Value
identityType The type of managed identity that is being selected. 'SystemAssignedIdentity'
'UserAssignedIdentity'
userAssignedIdentityResourceId The user assigned managed identity resource ID to use. Mutually exclusive with a system assigned identity type. string

ManagedResourceGroupConfiguration

Name Description Value
location The location of the managed resource group. If not specified, the location of the parent resource is chosen. string
name The name for the managed resource group. If not specified, the unique name is automatically generated. string

Constraints:
Max length = 75

ManagedServiceIdentity

Name Description Value
type Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed). 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (required)
userAssignedIdentities The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests. UserAssignedIdentities

RackDefinition

Name Description Value
availabilityZone The zone name used for this rack when created. Availability zones are used for workload placement. string

Constraints:
Pattern = ^[a-zA-Z0-9]{1,10}$
bareMetalMachineConfigurationData The unordered list of bare metal machine configuration. BareMetalMachineConfigurationData[]
networkRackId The resource ID of the network rack that matches this rack definition. string (required)
rackLocation The free-form description of the rack's location. string

Constraints:
Max length = 256
rackSerialNumber The unique identifier for the rack within Network Cloud cluster. An alternate unique alphanumeric value other than a serial number may be provided if desired. string

Constraints:
Min length = 1
Max length = 64 (required)
rackSkuId The resource ID of the sku for the rack being added. string (required)
storageApplianceConfigurationData The list of storage appliance configuration data for this rack. StorageApplianceConfigurationData[]

RuntimeProtectionConfiguration

Name Description Value
enforcementLevel The mode of operation for runtime protection. 'Audit'
'Disabled'
'OnDemand'
'Passive'
'RealTime'

ServicePrincipalInformation

Name Description Value
applicationId The application ID, also known as client ID, of the service principal. string (required)
password The password of the service principal. string

Constraints:
Sensitive value. Pass in as a secure parameter. (required)
principalId The principal ID, also known as the object ID, of the service principal. string (required)
tenantId The tenant ID, also known as the directory ID, of the tenant in which the service principal is created. string (required)

StorageApplianceConfigurationData

Name Description Value
adminCredentials The credentials of the administrative interface on this storage appliance. AdministrativeCredentials (required)
rackSlot The slot that storage appliance is in the rack based on the BOM configuration. int

Constraints:
Min value = 1
Max value = 256 (required)
serialNumber The serial number of the appliance. string (required)
storageApplianceName The user-provided name for the storage appliance that will be created from this specification. string

Constraints:
Pattern = ^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$

TrackedResourceTags

Name Description Value

UserAssignedIdentities

Name Description Value

UserAssignedIdentity

Name Description Value

ValidationThreshold

Name Description Value
grouping Selection of how the type evaluation is applied to the cluster calculation. 'PerCluster'
'PerRack' (required)
type Selection of how the threshold should be evaluated. 'CountSuccess'
'PercentSuccess' (required)
value The numeric threshold value. int

Constraints:
Min value = 0 (required)