Note
Access to this page requires authorization. You can try signing in or .
Access to this page requires authorization. You can try .
Microsoft.ScVmm virtualMachineInstances
Bicep resource definition
The virtualMachineInstances resource type can be deployed with operations that target:
- Tenant - See tenant deployment commands* Management groups - See management group deployment commands* Subscription - See subscription deployment commands* Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.ScVmm/virtualMachineInstances resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.ScVmm/virtualMachineInstances@2025-03-13' = {
scope: resourceSymbolicName or scope
extendedLocation: {
name: 'string'
type: 'string'
}
name: 'default'
properties: {
availabilitySets: [
{
id: 'string'
name: 'string'
}
]
hardwareProfile: {
cpuCount: int
dynamicMemoryEnabled: 'string'
dynamicMemoryMaxMB: int
dynamicMemoryMinMB: int
limitCpuForMigration: 'string'
memoryMB: int
}
infrastructureProfile: {
biosGuid: 'string'
checkpointType: 'string'
cloudId: 'string'
generation: int
inventoryItemId: 'string'
templateId: 'string'
uuid: 'string'
vmmServerId: 'string'
vmName: 'string'
}
networkProfile: {
networkInterfaces: [
{
ipv4AddressType: 'string'
ipv6AddressType: 'string'
macAddress: 'string'
macAddressType: 'string'
name: 'string'
nicId: 'string'
virtualNetworkId: 'string'
}
]
}
osProfile: {
adminPassword: 'string'
adminUsername: 'string'
computerName: 'string'
domainName: 'string'
domainPassword: 'string'
domainUsername: 'string'
productKey: 'string'
runOnceCommands: 'string'
timezone: int
workgroup: 'string'
}
storageProfile: {
disks: [
{
bus: int
busType: 'string'
createDiffDisk: 'string'
diskId: 'string'
diskSizeGB: int
lun: int
name: 'string'
storageQoSPolicy: {
id: 'string'
name: 'string'
}
templateDiskId: 'string'
vhdType: 'string'
}
]
}
}
}
Property Values
Microsoft.ScVmm/virtualMachineInstances
| Name | Description | Value |
|---|---|---|
| extendedLocation | Gets or sets the extended location. | ExtendedLocation (required) |
| name | The resource name | 'default' (required) |
| properties | The resource-specific properties for this resource. | VirtualMachineInstanceProperties |
| scope | Use when creating a resource at a scope that is different than the deployment scope. | Set this property to the symbolic name of a resource to apply the extension resource. |
AvailabilitySetListItem
| Name | Description | Value |
|---|---|---|
| id | Gets the ARM Id of the microsoft.scvmm/availabilitySets resource. | string |
| name | Gets or sets the name of the availability set. | string |
ExtendedLocation
| Name | Description | Value |
|---|---|---|
| name | The extended location name. | string |
| type | The extended location type. | string |
HardwareProfile
| Name | Description | Value |
|---|---|---|
| cpuCount | Gets or sets the number of vCPUs for the vm. | int |
| dynamicMemoryEnabled | Gets or sets a value indicating whether to enable dynamic memory or not. | 'false' 'true' |
| dynamicMemoryMaxMB | Gets or sets the max dynamic memory for the vm. | int |
| dynamicMemoryMinMB | Gets or sets the min dynamic memory for the vm. | int |
| limitCpuForMigration | Gets or sets a value indicating whether to enable processor compatibility mode for live migration of VMs. | 'false' 'true' |
| memoryMB | MemoryMB is the size of a virtual machine's memory, in MB. | int |
InfrastructureProfile
| Name | Description | Value |
|---|---|---|
| biosGuid | Gets or sets the bios guid for the vm. | string |
| checkpointType | Type of checkpoint supported for the vm. | string |
| cloudId | ARM Id of the cloud resource to use for deploying the vm. | string |
| generation | Gets or sets the generation for the vm. | int |
| inventoryItemId | Gets or sets the inventory Item ID for the resource. | string |
| templateId | ARM Id of the template resource to use for deploying the vm. | string |
| uuid | Unique ID of the virtual machine. | string |
| vmmServerId | ARM Id of the vmmServer resource in which this resource resides. | string |
| vmName | VMName is the name of VM on the SCVmm server. | string Constraints: Min length = 1 |
NetworkInterface
| Name | Description | Value |
|---|---|---|
| ipv4AddressType | Gets or sets the ipv4 address type. | 'Dynamic' 'Static' |
| ipv6AddressType | Gets or sets the ipv6 address type. | 'Dynamic' 'Static' |
| macAddress | Gets or sets the nic MAC address. | string |
| macAddressType | Gets or sets the mac address type. | 'Dynamic' 'Static' |
| name | Gets or sets the name of the network interface. | string |
| nicId | Gets or sets the nic id. | string |
| virtualNetworkId | Gets or sets the ARM Id of the Microsoft.ScVmm/virtualNetwork resource to connect the nic. | string |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| networkInterfaces | Gets or sets the list of network interfaces associated with the virtual machine. | NetworkInterface[] |
OsProfileForVmInstance
| Name | Description | Value |
|---|---|---|
| adminPassword | Admin password of the virtual machine. | string Constraints: Sensitive value. Pass in as a secure parameter. |
| adminUsername | Gets or sets the admin username. | string |
| computerName | Gets or sets computer name. | string |
| domainName | Gets or sets the domain name. | string |
| domainPassword | Password of the domain the VM has to join. | string Constraints: Sensitive value. Pass in as a secure parameter. |
| domainUsername | Gets or sets the domain username. | string |
| productKey | Gets or sets the product key.Input format xxxxx-xxxxx-xxxxx-xxxxx-xxxxx | string Constraints: Sensitive value. Pass in as a secure parameter. |
| runOnceCommands | Get or sets the commands to be run once at the time of creation separated by semicolons. | string |
| timezone | Gets or sets the index value of the timezone. | int |
| workgroup | Gets or sets the workgroup. | string |
StorageProfile
| Name | Description | Value |
|---|---|---|
| disks | Gets or sets the list of virtual disks associated with the virtual machine. | VirtualDisk[] |
StorageQosPolicyDetails
| Name | Description | Value |
|---|---|---|
| id | The ID of the QoS policy. | string |
| name | The name of the policy. | string |
VirtualDisk
| Name | Description | Value |
|---|---|---|
| bus | Gets or sets the disk bus. | int |
| busType | Gets or sets the disk bus type. | string |
| createDiffDisk | Gets or sets a value indicating diff disk. | 'false' 'true' |
| diskId | Gets or sets the disk id. | string |
| diskSizeGB | Gets or sets the disk total size. | int |
| lun | Gets or sets the disk lun. | int |
| name | Gets or sets the name of the disk. | string |
| storageQoSPolicy | The QoS policy for the disk. | StorageQosPolicyDetails |
| templateDiskId | Gets or sets the disk id in the template. | string |
| vhdType | Gets or sets the disk vhd type. | string |
VirtualMachineInstanceProperties
| Name | Description | Value |
|---|---|---|
| availabilitySets | Availability Sets in vm. | AvailabilitySetListItem[] |
| hardwareProfile | Hardware properties. | HardwareProfile |
| infrastructureProfile | Gets the infrastructure profile. | InfrastructureProfile |
| networkProfile | Network properties. | NetworkProfile |
| osProfile | OS properties. | OsProfileForVmInstance |
| storageProfile | Storage properties. | StorageProfile |
ARM template resource definition
The virtualMachineInstances resource type can be deployed with operations that target:
- Tenant - See tenant deployment commands* Management groups - See management group deployment commands* Subscription - See subscription deployment commands* Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.ScVmm/virtualMachineInstances resource, add the following JSON to your template.
{
"type": "Microsoft.ScVmm/virtualMachineInstances",
"apiVersion": "2025-03-13",
"name": "string",
"extendedLocation": {
"name": "string",
"type": "string"
},
"properties": {
"availabilitySets": [
{
"id": "string",
"name": "string"
}
],
"hardwareProfile": {
"cpuCount": "int",
"dynamicMemoryEnabled": "string",
"dynamicMemoryMaxMB": "int",
"dynamicMemoryMinMB": "int",
"limitCpuForMigration": "string",
"memoryMB": "int"
},
"infrastructureProfile": {
"biosGuid": "string",
"checkpointType": "string",
"cloudId": "string",
"generation": "int",
"inventoryItemId": "string",
"templateId": "string",
"uuid": "string",
"vmmServerId": "string",
"vmName": "string"
},
"networkProfile": {
"networkInterfaces": [
{
"ipv4AddressType": "string",
"ipv6AddressType": "string",
"macAddress": "string",
"macAddressType": "string",
"name": "string",
"nicId": "string",
"virtualNetworkId": "string"
}
]
},
"osProfile": {
"adminPassword": "string",
"adminUsername": "string",
"computerName": "string",
"domainName": "string",
"domainPassword": "string",
"domainUsername": "string",
"productKey": "string",
"runOnceCommands": "string",
"timezone": "int",
"workgroup": "string"
},
"storageProfile": {
"disks": [
{
"bus": "int",
"busType": "string",
"createDiffDisk": "string",
"diskId": "string",
"diskSizeGB": "int",
"lun": "int",
"name": "string",
"storageQoSPolicy": {
"id": "string",
"name": "string"
},
"templateDiskId": "string",
"vhdType": "string"
}
]
}
}
}
Property Values
Microsoft.ScVmm/virtualMachineInstances
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2025-03-13' |
| extendedLocation | Gets or sets the extended location. | ExtendedLocation (required) |
| name | The resource name | 'default' (required) |
| properties | The resource-specific properties for this resource. | VirtualMachineInstanceProperties |
| type | The resource type | 'Microsoft.ScVmm/virtualMachineInstances' |
AvailabilitySetListItem
| Name | Description | Value |
|---|---|---|
| id | Gets the ARM Id of the microsoft.scvmm/availabilitySets resource. | string |
| name | Gets or sets the name of the availability set. | string |
ExtendedLocation
| Name | Description | Value |
|---|---|---|
| name | The extended location name. | string |
| type | The extended location type. | string |
HardwareProfile
| Name | Description | Value |
|---|---|---|
| cpuCount | Gets or sets the number of vCPUs for the vm. | int |
| dynamicMemoryEnabled | Gets or sets a value indicating whether to enable dynamic memory or not. | 'false' 'true' |
| dynamicMemoryMaxMB | Gets or sets the max dynamic memory for the vm. | int |
| dynamicMemoryMinMB | Gets or sets the min dynamic memory for the vm. | int |
| limitCpuForMigration | Gets or sets a value indicating whether to enable processor compatibility mode for live migration of VMs. | 'false' 'true' |
| memoryMB | MemoryMB is the size of a virtual machine's memory, in MB. | int |
InfrastructureProfile
| Name | Description | Value |
|---|---|---|
| biosGuid | Gets or sets the bios guid for the vm. | string |
| checkpointType | Type of checkpoint supported for the vm. | string |
| cloudId | ARM Id of the cloud resource to use for deploying the vm. | string |
| generation | Gets or sets the generation for the vm. | int |
| inventoryItemId | Gets or sets the inventory Item ID for the resource. | string |
| templateId | ARM Id of the template resource to use for deploying the vm. | string |
| uuid | Unique ID of the virtual machine. | string |
| vmmServerId | ARM Id of the vmmServer resource in which this resource resides. | string |
| vmName | VMName is the name of VM on the SCVmm server. | string Constraints: Min length = 1 |
NetworkInterface
| Name | Description | Value |
|---|---|---|
| ipv4AddressType | Gets or sets the ipv4 address type. | 'Dynamic' 'Static' |
| ipv6AddressType | Gets or sets the ipv6 address type. | 'Dynamic' 'Static' |
| macAddress | Gets or sets the nic MAC address. | string |
| macAddressType | Gets or sets the mac address type. | 'Dynamic' 'Static' |
| name | Gets or sets the name of the network interface. | string |
| nicId | Gets or sets the nic id. | string |
| virtualNetworkId | Gets or sets the ARM Id of the Microsoft.ScVmm/virtualNetwork resource to connect the nic. | string |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| networkInterfaces | Gets or sets the list of network interfaces associated with the virtual machine. | NetworkInterface[] |
OsProfileForVmInstance
| Name | Description | Value |
|---|---|---|
| adminPassword | Admin password of the virtual machine. | string Constraints: Sensitive value. Pass in as a secure parameter. |
| adminUsername | Gets or sets the admin username. | string |
| computerName | Gets or sets computer name. | string |
| domainName | Gets or sets the domain name. | string |
| domainPassword | Password of the domain the VM has to join. | string Constraints: Sensitive value. Pass in as a secure parameter. |
| domainUsername | Gets or sets the domain username. | string |
| productKey | Gets or sets the product key.Input format xxxxx-xxxxx-xxxxx-xxxxx-xxxxx | string Constraints: Sensitive value. Pass in as a secure parameter. |
| runOnceCommands | Get or sets the commands to be run once at the time of creation separated by semicolons. | string |
| timezone | Gets or sets the index value of the timezone. | int |
| workgroup | Gets or sets the workgroup. | string |
StorageProfile
| Name | Description | Value |
|---|---|---|
| disks | Gets or sets the list of virtual disks associated with the virtual machine. | VirtualDisk[] |
StorageQosPolicyDetails
| Name | Description | Value |
|---|---|---|
| id | The ID of the QoS policy. | string |
| name | The name of the policy. | string |
VirtualDisk
| Name | Description | Value |
|---|---|---|
| bus | Gets or sets the disk bus. | int |
| busType | Gets or sets the disk bus type. | string |
| createDiffDisk | Gets or sets a value indicating diff disk. | 'false' 'true' |
| diskId | Gets or sets the disk id. | string |
| diskSizeGB | Gets or sets the disk total size. | int |
| lun | Gets or sets the disk lun. | int |
| name | Gets or sets the name of the disk. | string |
| storageQoSPolicy | The QoS policy for the disk. | StorageQosPolicyDetails |
| templateDiskId | Gets or sets the disk id in the template. | string |
| vhdType | Gets or sets the disk vhd type. | string |
VirtualMachineInstanceProperties
| Name | Description | Value |
|---|---|---|
| availabilitySets | Availability Sets in vm. | AvailabilitySetListItem[] |
| hardwareProfile | Hardware properties. | HardwareProfile |
| infrastructureProfile | Gets the infrastructure profile. | InfrastructureProfile |
| networkProfile | Network properties. | NetworkProfile |
| osProfile | OS properties. | OsProfileForVmInstance |
| storageProfile | Storage properties. | StorageProfile |
Usage Examples
Terraform (AzAPI provider) resource definition
The virtualMachineInstances resource type can be deployed with operations that target:
- Tenant* Management groups* Subscription* Resource groups
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.ScVmm/virtualMachineInstances resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.ScVmm/virtualMachineInstances@2025-03-13"
name = "string"
parent_id = "string"
body = {
extendedLocation = {
name = "string"
type = "string"
}
properties = {
availabilitySets = [
{
id = "string"
name = "string"
}
]
hardwareProfile = {
cpuCount = int
dynamicMemoryEnabled = "string"
dynamicMemoryMaxMB = int
dynamicMemoryMinMB = int
limitCpuForMigration = "string"
memoryMB = int
}
infrastructureProfile = {
biosGuid = "string"
checkpointType = "string"
cloudId = "string"
generation = int
inventoryItemId = "string"
templateId = "string"
uuid = "string"
vmmServerId = "string"
vmName = "string"
}
networkProfile = {
networkInterfaces = [
{
ipv4AddressType = "string"
ipv6AddressType = "string"
macAddress = "string"
macAddressType = "string"
name = "string"
nicId = "string"
virtualNetworkId = "string"
}
]
}
osProfile = {
adminPassword = "string"
adminUsername = "string"
computerName = "string"
domainName = "string"
domainPassword = "string"
domainUsername = "string"
productKey = "string"
runOnceCommands = "string"
timezone = int
workgroup = "string"
}
storageProfile = {
disks = [
{
bus = int
busType = "string"
createDiffDisk = "string"
diskId = "string"
diskSizeGB = int
lun = int
name = "string"
storageQoSPolicy = {
id = "string"
name = "string"
}
templateDiskId = "string"
vhdType = "string"
}
]
}
}
}
}
Property Values
Microsoft.ScVmm/virtualMachineInstances
| Name | Description | Value |
|---|---|---|
| extendedLocation | Gets or sets the extended location. | ExtendedLocation (required) |
| name | The resource name | 'default' (required) |
| parent_id | The ID of the resource to apply this extension resource to. | string (required) |
| properties | The resource-specific properties for this resource. | VirtualMachineInstanceProperties |
| type | The resource type | "Microsoft.ScVmm/virtualMachineInstances@2025-03-13" |
AvailabilitySetListItem
| Name | Description | Value |
|---|---|---|
| id | Gets the ARM Id of the microsoft.scvmm/availabilitySets resource. | string |
| name | Gets or sets the name of the availability set. | string |
ExtendedLocation
| Name | Description | Value |
|---|---|---|
| name | The extended location name. | string |
| type | The extended location type. | string |
HardwareProfile
| Name | Description | Value |
|---|---|---|
| cpuCount | Gets or sets the number of vCPUs for the vm. | int |
| dynamicMemoryEnabled | Gets or sets a value indicating whether to enable dynamic memory or not. | 'false' 'true' |
| dynamicMemoryMaxMB | Gets or sets the max dynamic memory for the vm. | int |
| dynamicMemoryMinMB | Gets or sets the min dynamic memory for the vm. | int |
| limitCpuForMigration | Gets or sets a value indicating whether to enable processor compatibility mode for live migration of VMs. | 'false' 'true' |
| memoryMB | MemoryMB is the size of a virtual machine's memory, in MB. | int |
InfrastructureProfile
| Name | Description | Value |
|---|---|---|
| biosGuid | Gets or sets the bios guid for the vm. | string |
| checkpointType | Type of checkpoint supported for the vm. | string |
| cloudId | ARM Id of the cloud resource to use for deploying the vm. | string |
| generation | Gets or sets the generation for the vm. | int |
| inventoryItemId | Gets or sets the inventory Item ID for the resource. | string |
| templateId | ARM Id of the template resource to use for deploying the vm. | string |
| uuid | Unique ID of the virtual machine. | string |
| vmmServerId | ARM Id of the vmmServer resource in which this resource resides. | string |
| vmName | VMName is the name of VM on the SCVmm server. | string Constraints: Min length = 1 |
NetworkInterface
| Name | Description | Value |
|---|---|---|
| ipv4AddressType | Gets or sets the ipv4 address type. | 'Dynamic' 'Static' |
| ipv6AddressType | Gets or sets the ipv6 address type. | 'Dynamic' 'Static' |
| macAddress | Gets or sets the nic MAC address. | string |
| macAddressType | Gets or sets the mac address type. | 'Dynamic' 'Static' |
| name | Gets or sets the name of the network interface. | string |
| nicId | Gets or sets the nic id. | string |
| virtualNetworkId | Gets or sets the ARM Id of the Microsoft.ScVmm/virtualNetwork resource to connect the nic. | string |
NetworkProfile
| Name | Description | Value |
|---|---|---|
| networkInterfaces | Gets or sets the list of network interfaces associated with the virtual machine. | NetworkInterface[] |
OsProfileForVmInstance
| Name | Description | Value |
|---|---|---|
| adminPassword | Admin password of the virtual machine. | string Constraints: Sensitive value. Pass in as a secure parameter. |
| adminUsername | Gets or sets the admin username. | string |
| computerName | Gets or sets computer name. | string |
| domainName | Gets or sets the domain name. | string |
| domainPassword | Password of the domain the VM has to join. | string Constraints: Sensitive value. Pass in as a secure parameter. |
| domainUsername | Gets or sets the domain username. | string |
| productKey | Gets or sets the product key.Input format xxxxx-xxxxx-xxxxx-xxxxx-xxxxx | string Constraints: Sensitive value. Pass in as a secure parameter. |
| runOnceCommands | Get or sets the commands to be run once at the time of creation separated by semicolons. | string |
| timezone | Gets or sets the index value of the timezone. | int |
| workgroup | Gets or sets the workgroup. | string |
StorageProfile
| Name | Description | Value |
|---|---|---|
| disks | Gets or sets the list of virtual disks associated with the virtual machine. | VirtualDisk[] |
StorageQosPolicyDetails
| Name | Description | Value |
|---|---|---|
| id | The ID of the QoS policy. | string |
| name | The name of the policy. | string |
VirtualDisk
| Name | Description | Value |
|---|---|---|
| bus | Gets or sets the disk bus. | int |
| busType | Gets or sets the disk bus type. | string |
| createDiffDisk | Gets or sets a value indicating diff disk. | 'false' 'true' |
| diskId | Gets or sets the disk id. | string |
| diskSizeGB | Gets or sets the disk total size. | int |
| lun | Gets or sets the disk lun. | int |
| name | Gets or sets the name of the disk. | string |
| storageQoSPolicy | The QoS policy for the disk. | StorageQosPolicyDetails |
| templateDiskId | Gets or sets the disk id in the template. | string |
| vhdType | Gets or sets the disk vhd type. | string |
VirtualMachineInstanceProperties
| Name | Description | Value |
|---|---|---|
| availabilitySets | Availability Sets in vm. | AvailabilitySetListItem[] |
| hardwareProfile | Hardware properties. | HardwareProfile |
| infrastructureProfile | Gets the infrastructure profile. | InfrastructureProfile |
| networkProfile | Network properties. | NetworkProfile |
| osProfile | OS properties. | OsProfileForVmInstance |
| storageProfile | Storage properties. | StorageProfile |
Feedback
Was this page helpful?
