Share via


Microsoft.NetworkCloud clusters 2023-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@2023-07-01' = {
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  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'
    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'
  }
  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)
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)
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)

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)

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

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[]

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

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": "2023-07-01",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "string"
  },
  "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",
    "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"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property Values

Microsoft.NetworkCloud/clusters

Name Description Value
apiVersion The api version '2023-07-01'
extendedLocation The extended location of the cluster manager associated with the cluster. ExtendedLocation (required)
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)
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)

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)

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

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[]

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

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@2023-07-01"
  name = "string"
  parent_id = "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"
      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"
    }
  }
}

Property Values

Microsoft.NetworkCloud/clusters

Name Description Value
extendedLocation The extended location of the cluster manager associated with the cluster. ExtendedLocation (required)
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@2023-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)
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)

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)

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

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[]

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

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)