We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
Manages a Virtual Machine.
Disclaimers
Note: The
azure.compute.VirtualMachineresource has been superseded by theazure.compute.LinuxVirtualMachineandazure.compute.WindowsVirtualMachineresources. The existingazure.compute.VirtualMachineresource will continue to be available throughout the 2.x releases however is in a feature-frozen state to maintain compatibility - new functionality will instead be added to theazure.compute.LinuxVirtualMachineandazure.compute.WindowsVirtualMachineresources.
Note: Data Disks can be attached either directly on the
azure.compute.VirtualMachineresource, or using theazure.compute.DataDiskAttachmentresource - but the two cannot be used together. If both are used against the same Virtual Machine, spurious changes will occur.
Example Usage
From An Azure Platform Image)
using Pulumi;
using Azure = Pulumi.Azure;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var prefix = config.Get("prefix") ?? "tfvmex";
var mainResourceGroup = new Azure.Core.ResourceGroup("mainResourceGroup", new Azure.Core.ResourceGroupArgs
{
Location = "West Europe",
});
var mainVirtualNetwork = new Azure.Network.VirtualNetwork("mainVirtualNetwork", new Azure.Network.VirtualNetworkArgs
{
AddressSpaces =
{
"10.0.0.0/16",
},
Location = mainResourceGroup.Location,
ResourceGroupName = mainResourceGroup.Name,
});
var @internal = new Azure.Network.Subnet("internal", new Azure.Network.SubnetArgs
{
ResourceGroupName = mainResourceGroup.Name,
VirtualNetworkName = mainVirtualNetwork.Name,
AddressPrefixes =
{
"10.0.2.0/24",
},
});
var mainNetworkInterface = new Azure.Network.NetworkInterface("mainNetworkInterface", new Azure.Network.NetworkInterfaceArgs
{
Location = mainResourceGroup.Location,
ResourceGroupName = mainResourceGroup.Name,
IpConfigurations =
{
new Azure.Network.Inputs.NetworkInterfaceIpConfigurationArgs
{
Name = "testconfiguration1",
SubnetId = @internal.Id,
PrivateIpAddressAllocation = "Dynamic",
},
},
});
var mainVirtualMachine = new Azure.Compute.VirtualMachine("mainVirtualMachine", new Azure.Compute.VirtualMachineArgs
{
Location = mainResourceGroup.Location,
ResourceGroupName = mainResourceGroup.Name,
NetworkInterfaceIds =
{
mainNetworkInterface.Id,
},
VmSize = "Standard_DS1_v2",
StorageImageReference = new Azure.Compute.Inputs.VirtualMachineStorageImageReferenceArgs
{
Publisher = "Canonical",
Offer = "UbuntuServer",
Sku = "16.04-LTS",
Version = "latest",
},
StorageOsDisk = new Azure.Compute.Inputs.VirtualMachineStorageOsDiskArgs
{
Name = "myosdisk1",
Caching = "ReadWrite",
CreateOption = "FromImage",
ManagedDiskType = "Standard_LRS",
},
OsProfile = new Azure.Compute.Inputs.VirtualMachineOsProfileArgs
{
ComputerName = "hostname",
AdminUsername = "testadmin",
AdminPassword = "Password1234!",
},
OsProfileLinuxConfig = new Azure.Compute.Inputs.VirtualMachineOsProfileLinuxConfigArgs
{
DisablePasswordAuthentication = false,
},
Tags =
{
{ "environment", "staging" },
},
});
}
}
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
prefix := "tfvmex"
if param := cfg.Get("prefix"); param != "" {
prefix = param
}
mainResourceGroup, err := core.NewResourceGroup(ctx, "mainResourceGroup", &core.ResourceGroupArgs{
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
mainVirtualNetwork, err := network.NewVirtualNetwork(ctx, "mainVirtualNetwork", &network.VirtualNetworkArgs{
AddressSpaces: pulumi.StringArray{
pulumi.String("10.0.0.0/16"),
},
Location: mainResourceGroup.Location,
ResourceGroupName: mainResourceGroup.Name,
})
if err != nil {
return err
}
internal, err := network.NewSubnet(ctx, "internal", &network.SubnetArgs{
ResourceGroupName: mainResourceGroup.Name,
VirtualNetworkName: mainVirtualNetwork.Name,
AddressPrefixes: pulumi.StringArray{
pulumi.String("10.0.2.0/24"),
},
})
if err != nil {
return err
}
mainNetworkInterface, err := network.NewNetworkInterface(ctx, "mainNetworkInterface", &network.NetworkInterfaceArgs{
Location: mainResourceGroup.Location,
ResourceGroupName: mainResourceGroup.Name,
IpConfigurations: network.NetworkInterfaceIpConfigurationArray{
&network.NetworkInterfaceIpConfigurationArgs{
Name: pulumi.String("testconfiguration1"),
SubnetId: internal.ID(),
PrivateIpAddressAllocation: pulumi.String("Dynamic"),
},
},
})
if err != nil {
return err
}
_, err = compute.NewVirtualMachine(ctx, "mainVirtualMachine", &compute.VirtualMachineArgs{
Location: mainResourceGroup.Location,
ResourceGroupName: mainResourceGroup.Name,
NetworkInterfaceIds: pulumi.StringArray{
mainNetworkInterface.ID(),
},
VmSize: pulumi.String("Standard_DS1_v2"),
StorageImageReference: &compute.VirtualMachineStorageImageReferenceArgs{
Publisher: pulumi.String("Canonical"),
Offer: pulumi.String("UbuntuServer"),
Sku: pulumi.String("16.04-LTS"),
Version: pulumi.String("latest"),
},
StorageOsDisk: &compute.VirtualMachineStorageOsDiskArgs{
Name: pulumi.String("myosdisk1"),
Caching: pulumi.String("ReadWrite"),
CreateOption: pulumi.String("FromImage"),
ManagedDiskType: pulumi.String("Standard_LRS"),
},
OsProfile: &compute.VirtualMachineOsProfileArgs{
ComputerName: pulumi.String("hostname"),
AdminUsername: pulumi.String("testadmin"),
AdminPassword: pulumi.String("Password1234!"),
},
OsProfileLinuxConfig: &compute.VirtualMachineOsProfileLinuxConfigArgs{
DisablePasswordAuthentication: pulumi.Bool(false),
},
Tags: pulumi.StringMap{
"environment": pulumi.String("staging"),
},
})
if err != nil {
return err
}
return nil
})
}
Example coming soon!
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const config = new pulumi.Config();
const prefix = config.get("prefix") || "tfvmex";
const mainResourceGroup = new azure.core.ResourceGroup("mainResourceGroup", {location: "West Europe"});
const mainVirtualNetwork = new azure.network.VirtualNetwork("mainVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
});
const internal = new azure.network.Subnet("internal", {
resourceGroupName: mainResourceGroup.name,
virtualNetworkName: mainVirtualNetwork.name,
addressPrefixes: ["10.0.2.0/24"],
});
const mainNetworkInterface = new azure.network.NetworkInterface("mainNetworkInterface", {
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
ipConfigurations: [{
name: "testconfiguration1",
subnetId: internal.id,
privateIpAddressAllocation: "Dynamic",
}],
});
const mainVirtualMachine = new azure.compute.VirtualMachine("mainVirtualMachine", {
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
networkInterfaceIds: [mainNetworkInterface.id],
vmSize: "Standard_DS1_v2",
storageImageReference: {
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
version: "latest",
},
storageOsDisk: {
name: "myosdisk1",
caching: "ReadWrite",
createOption: "FromImage",
managedDiskType: "Standard_LRS",
},
osProfile: {
computerName: "hostname",
adminUsername: "testadmin",
adminPassword: "Password1234!",
},
osProfileLinuxConfig: {
disablePasswordAuthentication: false,
},
tags: {
environment: "staging",
},
});
import pulumi
import pulumi_azure as azure
config = pulumi.Config()
prefix = config.get("prefix")
if prefix is None:
prefix = "tfvmex"
main_resource_group = azure.core.ResourceGroup("mainResourceGroup", location="West Europe")
main_virtual_network = azure.network.VirtualNetwork("mainVirtualNetwork",
address_spaces=["10.0.0.0/16"],
location=main_resource_group.location,
resource_group_name=main_resource_group.name)
internal = azure.network.Subnet("internal",
resource_group_name=main_resource_group.name,
virtual_network_name=main_virtual_network.name,
address_prefixes=["10.0.2.0/24"])
main_network_interface = azure.network.NetworkInterface("mainNetworkInterface",
location=main_resource_group.location,
resource_group_name=main_resource_group.name,
ip_configurations=[azure.network.NetworkInterfaceIpConfigurationArgs(
name="testconfiguration1",
subnet_id=internal.id,
private_ip_address_allocation="Dynamic",
)])
main_virtual_machine = azure.compute.VirtualMachine("mainVirtualMachine",
location=main_resource_group.location,
resource_group_name=main_resource_group.name,
network_interface_ids=[main_network_interface.id],
vm_size="Standard_DS1_v2",
storage_image_reference=azure.compute.VirtualMachineStorageImageReferenceArgs(
publisher="Canonical",
offer="UbuntuServer",
sku="16.04-LTS",
version="latest",
),
storage_os_disk=azure.compute.VirtualMachineStorageOsDiskArgs(
name="myosdisk1",
caching="ReadWrite",
create_option="FromImage",
managed_disk_type="Standard_LRS",
),
os_profile=azure.compute.VirtualMachineOsProfileArgs(
computer_name="hostname",
admin_username="testadmin",
admin_password="Password1234!",
),
os_profile_linux_config=azure.compute.VirtualMachineOsProfileLinuxConfigArgs(
disable_password_authentication=False,
),
tags={
"environment": "staging",
})
Example coming soon!
Create VirtualMachine Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new VirtualMachine(name: string, args: VirtualMachineArgs, opts?: CustomResourceOptions);@overload
def VirtualMachine(resource_name: str,
args: VirtualMachineArgs,
opts: Optional[ResourceOptions] = None)
@overload
def VirtualMachine(resource_name: str,
opts: Optional[ResourceOptions] = None,
network_interface_ids: Optional[Sequence[str]] = None,
vm_size: Optional[str] = None,
storage_os_disk: Optional[VirtualMachineStorageOsDiskArgs] = None,
resource_group_name: Optional[str] = None,
os_profile_secrets: Optional[Sequence[VirtualMachineOsProfileSecretArgs]] = None,
os_profile_windows_config: Optional[VirtualMachineOsProfileWindowsConfigArgs] = None,
license_type: Optional[str] = None,
location: Optional[str] = None,
name: Optional[str] = None,
delete_os_disk_on_termination: Optional[bool] = None,
os_profile: Optional[VirtualMachineOsProfileArgs] = None,
os_profile_linux_config: Optional[VirtualMachineOsProfileLinuxConfigArgs] = None,
additional_capabilities: Optional[VirtualMachineAdditionalCapabilitiesArgs] = None,
identity: Optional[VirtualMachineIdentityArgs] = None,
plan: Optional[VirtualMachinePlanArgs] = None,
primary_network_interface_id: Optional[str] = None,
proximity_placement_group_id: Optional[str] = None,
delete_data_disks_on_termination: Optional[bool] = None,
storage_data_disks: Optional[Sequence[VirtualMachineStorageDataDiskArgs]] = None,
storage_image_reference: Optional[VirtualMachineStorageImageReferenceArgs] = None,
boot_diagnostics: Optional[VirtualMachineBootDiagnosticsArgs] = None,
tags: Optional[Mapping[str, str]] = None,
availability_set_id: Optional[str] = None,
zones: Optional[str] = None)func NewVirtualMachine(ctx *Context, name string, args VirtualMachineArgs, opts ...ResourceOption) (*VirtualMachine, error)public VirtualMachine(string name, VirtualMachineArgs args, CustomResourceOptions? opts = null)
public VirtualMachine(String name, VirtualMachineArgs args)
public VirtualMachine(String name, VirtualMachineArgs args, CustomResourceOptions options)
type: azure:compute:VirtualMachine
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args VirtualMachineArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args VirtualMachineArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args VirtualMachineArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args VirtualMachineArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args VirtualMachineArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var virtualMachineResource = new Azure.Compute.VirtualMachine("virtualMachineResource", new()
{
NetworkInterfaceIds = new[]
{
"string",
},
VmSize = "string",
StorageOsDisk = new Azure.Compute.Inputs.VirtualMachineStorageOsDiskArgs
{
CreateOption = "string",
Name = "string",
Caching = "string",
DiskSizeGb = 0,
ImageUri = "string",
ManagedDiskId = "string",
ManagedDiskType = "string",
OsType = "string",
VhdUri = "string",
WriteAcceleratorEnabled = false,
},
ResourceGroupName = "string",
OsProfileSecrets = new[]
{
new Azure.Compute.Inputs.VirtualMachineOsProfileSecretArgs
{
SourceVaultId = "string",
VaultCertificates = new[]
{
new Azure.Compute.Inputs.VirtualMachineOsProfileSecretVaultCertificateArgs
{
CertificateUrl = "string",
CertificateStore = "string",
},
},
},
},
OsProfileWindowsConfig = new Azure.Compute.Inputs.VirtualMachineOsProfileWindowsConfigArgs
{
AdditionalUnattendConfigs = new[]
{
new Azure.Compute.Inputs.VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs
{
Component = "string",
Content = "string",
Pass = "string",
SettingName = "string",
},
},
EnableAutomaticUpgrades = false,
ProvisionVmAgent = false,
Timezone = "string",
Winrms = new[]
{
new Azure.Compute.Inputs.VirtualMachineOsProfileWindowsConfigWinrmArgs
{
Protocol = "string",
CertificateUrl = "string",
},
},
},
LicenseType = "string",
Location = "string",
Name = "string",
DeleteOsDiskOnTermination = false,
OsProfile = new Azure.Compute.Inputs.VirtualMachineOsProfileArgs
{
AdminUsername = "string",
ComputerName = "string",
AdminPassword = "string",
CustomData = "string",
},
OsProfileLinuxConfig = new Azure.Compute.Inputs.VirtualMachineOsProfileLinuxConfigArgs
{
DisablePasswordAuthentication = false,
SshKeys = new[]
{
new Azure.Compute.Inputs.VirtualMachineOsProfileLinuxConfigSshKeyArgs
{
KeyData = "string",
Path = "string",
},
},
},
AdditionalCapabilities = new Azure.Compute.Inputs.VirtualMachineAdditionalCapabilitiesArgs
{
UltraSsdEnabled = false,
},
Identity = new Azure.Compute.Inputs.VirtualMachineIdentityArgs
{
Type = "string",
IdentityIds = new[]
{
"string",
},
PrincipalId = "string",
},
Plan = new Azure.Compute.Inputs.VirtualMachinePlanArgs
{
Name = "string",
Product = "string",
Publisher = "string",
},
PrimaryNetworkInterfaceId = "string",
ProximityPlacementGroupId = "string",
DeleteDataDisksOnTermination = false,
StorageDataDisks = new[]
{
new Azure.Compute.Inputs.VirtualMachineStorageDataDiskArgs
{
CreateOption = "string",
Lun = 0,
Name = "string",
Caching = "string",
DiskSizeGb = 0,
ManagedDiskId = "string",
ManagedDiskType = "string",
VhdUri = "string",
WriteAcceleratorEnabled = false,
},
},
StorageImageReference = new Azure.Compute.Inputs.VirtualMachineStorageImageReferenceArgs
{
Id = "string",
Offer = "string",
Publisher = "string",
Sku = "string",
Version = "string",
},
BootDiagnostics = new Azure.Compute.Inputs.VirtualMachineBootDiagnosticsArgs
{
Enabled = false,
StorageUri = "string",
},
Tags =
{
{ "string", "string" },
},
AvailabilitySetId = "string",
Zones = "string",
});
example, err := compute.NewVirtualMachine(ctx, "virtualMachineResource", &compute.VirtualMachineArgs{
NetworkInterfaceIds: pulumi.StringArray{
pulumi.String("string"),
},
VmSize: pulumi.String("string"),
StorageOsDisk: &compute.VirtualMachineStorageOsDiskArgs{
CreateOption: pulumi.String("string"),
Name: pulumi.String("string"),
Caching: pulumi.String("string"),
DiskSizeGb: pulumi.Int(0),
ImageUri: pulumi.String("string"),
ManagedDiskId: pulumi.String("string"),
ManagedDiskType: pulumi.String("string"),
OsType: pulumi.String("string"),
VhdUri: pulumi.String("string"),
WriteAcceleratorEnabled: pulumi.Bool(false),
},
ResourceGroupName: pulumi.String("string"),
OsProfileSecrets: compute.VirtualMachineOsProfileSecretArray{
&compute.VirtualMachineOsProfileSecretArgs{
SourceVaultId: pulumi.String("string"),
VaultCertificates: compute.VirtualMachineOsProfileSecretVaultCertificateArray{
&compute.VirtualMachineOsProfileSecretVaultCertificateArgs{
CertificateUrl: pulumi.String("string"),
CertificateStore: pulumi.String("string"),
},
},
},
},
OsProfileWindowsConfig: &compute.VirtualMachineOsProfileWindowsConfigArgs{
AdditionalUnattendConfigs: compute.VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArray{
&compute.VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs{
Component: pulumi.String("string"),
Content: pulumi.String("string"),
Pass: pulumi.String("string"),
SettingName: pulumi.String("string"),
},
},
EnableAutomaticUpgrades: pulumi.Bool(false),
ProvisionVmAgent: pulumi.Bool(false),
Timezone: pulumi.String("string"),
Winrms: compute.VirtualMachineOsProfileWindowsConfigWinrmArray{
&compute.VirtualMachineOsProfileWindowsConfigWinrmArgs{
Protocol: pulumi.String("string"),
CertificateUrl: pulumi.String("string"),
},
},
},
LicenseType: pulumi.String("string"),
Location: pulumi.String("string"),
Name: pulumi.String("string"),
DeleteOsDiskOnTermination: pulumi.Bool(false),
OsProfile: &compute.VirtualMachineOsProfileArgs{
AdminUsername: pulumi.String("string"),
ComputerName: pulumi.String("string"),
AdminPassword: pulumi.String("string"),
CustomData: pulumi.String("string"),
},
OsProfileLinuxConfig: &compute.VirtualMachineOsProfileLinuxConfigArgs{
DisablePasswordAuthentication: pulumi.Bool(false),
SshKeys: compute.VirtualMachineOsProfileLinuxConfigSshKeyArray{
&compute.VirtualMachineOsProfileLinuxConfigSshKeyArgs{
KeyData: pulumi.String("string"),
Path: pulumi.String("string"),
},
},
},
AdditionalCapabilities: &compute.VirtualMachineAdditionalCapabilitiesArgs{
UltraSsdEnabled: pulumi.Bool(false),
},
Identity: &compute.VirtualMachineIdentityArgs{
Type: pulumi.String("string"),
IdentityIds: pulumi.StringArray{
pulumi.String("string"),
},
PrincipalId: pulumi.String("string"),
},
Plan: &compute.VirtualMachinePlanArgs{
Name: pulumi.String("string"),
Product: pulumi.String("string"),
Publisher: pulumi.String("string"),
},
PrimaryNetworkInterfaceId: pulumi.String("string"),
ProximityPlacementGroupId: pulumi.String("string"),
DeleteDataDisksOnTermination: pulumi.Bool(false),
StorageDataDisks: compute.VirtualMachineStorageDataDiskArray{
&compute.VirtualMachineStorageDataDiskArgs{
CreateOption: pulumi.String("string"),
Lun: pulumi.Int(0),
Name: pulumi.String("string"),
Caching: pulumi.String("string"),
DiskSizeGb: pulumi.Int(0),
ManagedDiskId: pulumi.String("string"),
ManagedDiskType: pulumi.String("string"),
VhdUri: pulumi.String("string"),
WriteAcceleratorEnabled: pulumi.Bool(false),
},
},
StorageImageReference: &compute.VirtualMachineStorageImageReferenceArgs{
Id: pulumi.String("string"),
Offer: pulumi.String("string"),
Publisher: pulumi.String("string"),
Sku: pulumi.String("string"),
Version: pulumi.String("string"),
},
BootDiagnostics: &compute.VirtualMachineBootDiagnosticsArgs{
Enabled: pulumi.Bool(false),
StorageUri: pulumi.String("string"),
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
AvailabilitySetId: pulumi.String("string"),
Zones: pulumi.String("string"),
})
var virtualMachineResource = new com.pulumi.azure.compute.VirtualMachine("virtualMachineResource", com.pulumi.azure.compute.VirtualMachineArgs.builder()
.networkInterfaceIds("string")
.vmSize("string")
.storageOsDisk(VirtualMachineStorageOsDiskArgs.builder()
.createOption("string")
.name("string")
.caching("string")
.diskSizeGb(0)
.imageUri("string")
.managedDiskId("string")
.managedDiskType("string")
.osType("string")
.vhdUri("string")
.writeAcceleratorEnabled(false)
.build())
.resourceGroupName("string")
.osProfileSecrets(VirtualMachineOsProfileSecretArgs.builder()
.sourceVaultId("string")
.vaultCertificates(VirtualMachineOsProfileSecretVaultCertificateArgs.builder()
.certificateUrl("string")
.certificateStore("string")
.build())
.build())
.osProfileWindowsConfig(VirtualMachineOsProfileWindowsConfigArgs.builder()
.additionalUnattendConfigs(VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs.builder()
.component("string")
.content("string")
.pass("string")
.settingName("string")
.build())
.enableAutomaticUpgrades(false)
.provisionVmAgent(false)
.timezone("string")
.winrms(VirtualMachineOsProfileWindowsConfigWinrmArgs.builder()
.protocol("string")
.certificateUrl("string")
.build())
.build())
.licenseType("string")
.location("string")
.name("string")
.deleteOsDiskOnTermination(false)
.osProfile(VirtualMachineOsProfileArgs.builder()
.adminUsername("string")
.computerName("string")
.adminPassword("string")
.customData("string")
.build())
.osProfileLinuxConfig(VirtualMachineOsProfileLinuxConfigArgs.builder()
.disablePasswordAuthentication(false)
.sshKeys(VirtualMachineOsProfileLinuxConfigSshKeyArgs.builder()
.keyData("string")
.path("string")
.build())
.build())
.additionalCapabilities(VirtualMachineAdditionalCapabilitiesArgs.builder()
.ultraSsdEnabled(false)
.build())
.identity(VirtualMachineIdentityArgs.builder()
.type("string")
.identityIds("string")
.principalId("string")
.build())
.plan(VirtualMachinePlanArgs.builder()
.name("string")
.product("string")
.publisher("string")
.build())
.primaryNetworkInterfaceId("string")
.proximityPlacementGroupId("string")
.deleteDataDisksOnTermination(false)
.storageDataDisks(VirtualMachineStorageDataDiskArgs.builder()
.createOption("string")
.lun(0)
.name("string")
.caching("string")
.diskSizeGb(0)
.managedDiskId("string")
.managedDiskType("string")
.vhdUri("string")
.writeAcceleratorEnabled(false)
.build())
.storageImageReference(VirtualMachineStorageImageReferenceArgs.builder()
.id("string")
.offer("string")
.publisher("string")
.sku("string")
.version("string")
.build())
.bootDiagnostics(VirtualMachineBootDiagnosticsArgs.builder()
.enabled(false)
.storageUri("string")
.build())
.tags(Map.of("string", "string"))
.availabilitySetId("string")
.zones("string")
.build());
virtual_machine_resource = azure.compute.VirtualMachine("virtualMachineResource",
network_interface_ids=["string"],
vm_size="string",
storage_os_disk={
"create_option": "string",
"name": "string",
"caching": "string",
"disk_size_gb": 0,
"image_uri": "string",
"managed_disk_id": "string",
"managed_disk_type": "string",
"os_type": "string",
"vhd_uri": "string",
"write_accelerator_enabled": False,
},
resource_group_name="string",
os_profile_secrets=[{
"source_vault_id": "string",
"vault_certificates": [{
"certificate_url": "string",
"certificate_store": "string",
}],
}],
os_profile_windows_config={
"additional_unattend_configs": [{
"component": "string",
"content": "string",
"pass_": "string",
"setting_name": "string",
}],
"enable_automatic_upgrades": False,
"provision_vm_agent": False,
"timezone": "string",
"winrms": [{
"protocol": "string",
"certificate_url": "string",
}],
},
license_type="string",
location="string",
name="string",
delete_os_disk_on_termination=False,
os_profile={
"admin_username": "string",
"computer_name": "string",
"admin_password": "string",
"custom_data": "string",
},
os_profile_linux_config={
"disable_password_authentication": False,
"ssh_keys": [{
"key_data": "string",
"path": "string",
}],
},
additional_capabilities={
"ultra_ssd_enabled": False,
},
identity={
"type": "string",
"identity_ids": ["string"],
"principal_id": "string",
},
plan={
"name": "string",
"product": "string",
"publisher": "string",
},
primary_network_interface_id="string",
proximity_placement_group_id="string",
delete_data_disks_on_termination=False,
storage_data_disks=[{
"create_option": "string",
"lun": 0,
"name": "string",
"caching": "string",
"disk_size_gb": 0,
"managed_disk_id": "string",
"managed_disk_type": "string",
"vhd_uri": "string",
"write_accelerator_enabled": False,
}],
storage_image_reference={
"id": "string",
"offer": "string",
"publisher": "string",
"sku": "string",
"version": "string",
},
boot_diagnostics={
"enabled": False,
"storage_uri": "string",
},
tags={
"string": "string",
},
availability_set_id="string",
zones="string")
const virtualMachineResource = new azure.compute.VirtualMachine("virtualMachineResource", {
networkInterfaceIds: ["string"],
vmSize: "string",
storageOsDisk: {
createOption: "string",
name: "string",
caching: "string",
diskSizeGb: 0,
imageUri: "string",
managedDiskId: "string",
managedDiskType: "string",
osType: "string",
vhdUri: "string",
writeAcceleratorEnabled: false,
},
resourceGroupName: "string",
osProfileSecrets: [{
sourceVaultId: "string",
vaultCertificates: [{
certificateUrl: "string",
certificateStore: "string",
}],
}],
osProfileWindowsConfig: {
additionalUnattendConfigs: [{
component: "string",
content: "string",
pass: "string",
settingName: "string",
}],
enableAutomaticUpgrades: false,
provisionVmAgent: false,
timezone: "string",
winrms: [{
protocol: "string",
certificateUrl: "string",
}],
},
licenseType: "string",
location: "string",
name: "string",
deleteOsDiskOnTermination: false,
osProfile: {
adminUsername: "string",
computerName: "string",
adminPassword: "string",
customData: "string",
},
osProfileLinuxConfig: {
disablePasswordAuthentication: false,
sshKeys: [{
keyData: "string",
path: "string",
}],
},
additionalCapabilities: {
ultraSsdEnabled: false,
},
identity: {
type: "string",
identityIds: ["string"],
principalId: "string",
},
plan: {
name: "string",
product: "string",
publisher: "string",
},
primaryNetworkInterfaceId: "string",
proximityPlacementGroupId: "string",
deleteDataDisksOnTermination: false,
storageDataDisks: [{
createOption: "string",
lun: 0,
name: "string",
caching: "string",
diskSizeGb: 0,
managedDiskId: "string",
managedDiskType: "string",
vhdUri: "string",
writeAcceleratorEnabled: false,
}],
storageImageReference: {
id: "string",
offer: "string",
publisher: "string",
sku: "string",
version: "string",
},
bootDiagnostics: {
enabled: false,
storageUri: "string",
},
tags: {
string: "string",
},
availabilitySetId: "string",
zones: "string",
});
type: azure:compute:VirtualMachine
properties:
additionalCapabilities:
ultraSsdEnabled: false
availabilitySetId: string
bootDiagnostics:
enabled: false
storageUri: string
deleteDataDisksOnTermination: false
deleteOsDiskOnTermination: false
identity:
identityIds:
- string
principalId: string
type: string
licenseType: string
location: string
name: string
networkInterfaceIds:
- string
osProfile:
adminPassword: string
adminUsername: string
computerName: string
customData: string
osProfileLinuxConfig:
disablePasswordAuthentication: false
sshKeys:
- keyData: string
path: string
osProfileSecrets:
- sourceVaultId: string
vaultCertificates:
- certificateStore: string
certificateUrl: string
osProfileWindowsConfig:
additionalUnattendConfigs:
- component: string
content: string
pass: string
settingName: string
enableAutomaticUpgrades: false
provisionVmAgent: false
timezone: string
winrms:
- certificateUrl: string
protocol: string
plan:
name: string
product: string
publisher: string
primaryNetworkInterfaceId: string
proximityPlacementGroupId: string
resourceGroupName: string
storageDataDisks:
- caching: string
createOption: string
diskSizeGb: 0
lun: 0
managedDiskId: string
managedDiskType: string
name: string
vhdUri: string
writeAcceleratorEnabled: false
storageImageReference:
id: string
offer: string
publisher: string
sku: string
version: string
storageOsDisk:
caching: string
createOption: string
diskSizeGb: 0
imageUri: string
managedDiskId: string
managedDiskType: string
name: string
osType: string
vhdUri: string
writeAcceleratorEnabled: false
tags:
string: string
vmSize: string
zones: string
VirtualMachine Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The VirtualMachine resource accepts the following input properties:
- Network
Interface List<string>Ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- Resource
Group stringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- Storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_diskblock as defined below. - Vm
Size string - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- Additional
Capabilities VirtualMachine Additional Capabilities - An
additional_capabilitiesblock as defined below. - Availability
Set stringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- Boot
Diagnostics VirtualMachine Boot Diagnostics - A
boot_diagnosticsblock as defined below. - Delete
Data boolDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - Delete
Os boolDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - Identity
Virtual
Machine Identity - An
identityblock as defined below. - License
Type string - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - Location string
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- Name string
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- Os
Profile VirtualMachine Os Profile - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - Os
Profile VirtualLinux Config Machine Os Profile Linux Config - An
os_profile_linux_configblock as defined below. - Os
Profile List<VirtualSecrets Machine Os Profile Secret> - One or more
os_profile_secretsblocks. - Os
Profile VirtualWindows Config Machine Os Profile Windows Config - An
os_profile_windows_configblock as defined below. - Plan
Virtual
Machine Plan - A
planblock as defined below. - Primary
Network stringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- Proximity
Placement stringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- Storage
Data List<VirtualDisks Machine Storage Data Disk> - One or more
storage_data_diskblocks. - Storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_referenceblock as defined below. - Dictionary<string, string>
- A mapping of tags to assign to the Virtual Machine.
- Zones string
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- Network
Interface []stringIds - A list of Network Interface ID's which should be associated with the Virtual Machine.
- Resource
Group stringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- Storage
Os VirtualDisk Machine Storage Os Disk Args - A
storage_os_diskblock as defined below. - Vm
Size string - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- Additional
Capabilities VirtualMachine Additional Capabilities Args - An
additional_capabilitiesblock as defined below. - Availability
Set stringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- Boot
Diagnostics VirtualMachine Boot Diagnostics Args - A
boot_diagnosticsblock as defined below. - Delete
Data boolDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - Delete
Os boolDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - Identity
Virtual
Machine Identity Args - An
identityblock as defined below. - License
Type string - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - Location string
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- Name string
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- Os
Profile VirtualMachine Os Profile Args - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - Os
Profile VirtualLinux Config Machine Os Profile Linux Config Args - An
os_profile_linux_configblock as defined below. - Os
Profile []VirtualSecrets Machine Os Profile Secret Args - One or more
os_profile_secretsblocks. - Os
Profile VirtualWindows Config Machine Os Profile Windows Config Args - An
os_profile_windows_configblock as defined below. - Plan
Virtual
Machine Plan Args - A
planblock as defined below. - Primary
Network stringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- Proximity
Placement stringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- Storage
Data []VirtualDisks Machine Storage Data Disk Args - One or more
storage_data_diskblocks. - Storage
Image VirtualReference Machine Storage Image Reference Args - A
storage_image_referenceblock as defined below. - map[string]string
- A mapping of tags to assign to the Virtual Machine.
- Zones string
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- network
Interface List<String>Ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- resource
Group StringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_diskblock as defined below. - vm
Size String - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- additional
Capabilities VirtualMachine Additional Capabilities - An
additional_capabilitiesblock as defined below. - availability
Set StringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- boot
Diagnostics VirtualMachine Boot Diagnostics - A
boot_diagnosticsblock as defined below. - delete
Data BooleanDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - delete
Os BooleanDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - identity
Virtual
Machine Identity - An
identityblock as defined below. - license
Type String - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - location String
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- name String
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- os
Profile VirtualMachine Os Profile - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - os
Profile VirtualLinux Config Machine Os Profile Linux Config - An
os_profile_linux_configblock as defined below. - os
Profile List<VirtualSecrets Machine Os Profile Secret> - One or more
os_profile_secretsblocks. - os
Profile VirtualWindows Config Machine Os Profile Windows Config - An
os_profile_windows_configblock as defined below. - plan
Virtual
Machine Plan - A
planblock as defined below. - primary
Network StringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- proximity
Placement StringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- storage
Data List<VirtualDisks Machine Storage Data Disk> - One or more
storage_data_diskblocks. - storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_referenceblock as defined below. - Map<String,String>
- A mapping of tags to assign to the Virtual Machine.
- zones String
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- network
Interface string[]Ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- resource
Group stringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_diskblock as defined below. - vm
Size string - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- additional
Capabilities VirtualMachine Additional Capabilities - An
additional_capabilitiesblock as defined below. - availability
Set stringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- boot
Diagnostics VirtualMachine Boot Diagnostics - A
boot_diagnosticsblock as defined below. - delete
Data booleanDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - delete
Os booleanDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - identity
Virtual
Machine Identity - An
identityblock as defined below. - license
Type string - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - location string
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- name string
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- os
Profile VirtualMachine Os Profile - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - os
Profile VirtualLinux Config Machine Os Profile Linux Config - An
os_profile_linux_configblock as defined below. - os
Profile VirtualSecrets Machine Os Profile Secret[] - One or more
os_profile_secretsblocks. - os
Profile VirtualWindows Config Machine Os Profile Windows Config - An
os_profile_windows_configblock as defined below. - plan
Virtual
Machine Plan - A
planblock as defined below. - primary
Network stringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- proximity
Placement stringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- storage
Data VirtualDisks Machine Storage Data Disk[] - One or more
storage_data_diskblocks. - storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_referenceblock as defined below. - {[key: string]: string}
- A mapping of tags to assign to the Virtual Machine.
- zones string
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- network_
interface_ Sequence[str]ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- resource_
group_ strname - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- storage_
os_ Virtualdisk Machine Storage Os Disk Args - A
storage_os_diskblock as defined below. - vm_
size str - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- additional_
capabilities VirtualMachine Additional Capabilities Args - An
additional_capabilitiesblock as defined below. - availability_
set_ strid - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- boot_
diagnostics VirtualMachine Boot Diagnostics Args - A
boot_diagnosticsblock as defined below. - delete_
data_ booldisks_ on_ termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - delete_
os_ booldisk_ on_ termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - identity
Virtual
Machine Identity Args - An
identityblock as defined below. - license_
type str - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - location str
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- name str
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- os_
profile VirtualMachine Os Profile Args - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - os_
profile_ Virtuallinux_ config Machine Os Profile Linux Config Args - An
os_profile_linux_configblock as defined below. - os_
profile_ Sequence[Virtualsecrets Machine Os Profile Secret Args] - One or more
os_profile_secretsblocks. - os_
profile_ Virtualwindows_ config Machine Os Profile Windows Config Args - An
os_profile_windows_configblock as defined below. - plan
Virtual
Machine Plan Args - A
planblock as defined below. - primary_
network_ strinterface_ id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- proximity_
placement_ strgroup_ id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- storage_
data_ Sequence[Virtualdisks Machine Storage Data Disk Args] - One or more
storage_data_diskblocks. - storage_
image_ Virtualreference Machine Storage Image Reference Args - A
storage_image_referenceblock as defined below. - Mapping[str, str]
- A mapping of tags to assign to the Virtual Machine.
- zones str
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- network
Interface List<String>Ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- resource
Group StringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- storage
Os Property MapDisk - A
storage_os_diskblock as defined below. - vm
Size String - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- additional
Capabilities Property Map - An
additional_capabilitiesblock as defined below. - availability
Set StringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- boot
Diagnostics Property Map - A
boot_diagnosticsblock as defined below. - delete
Data BooleanDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - delete
Os BooleanDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - identity Property Map
- An
identityblock as defined below. - license
Type String - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - location String
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- name String
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- os
Profile Property Map - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - os
Profile Property MapLinux Config - An
os_profile_linux_configblock as defined below. - os
Profile List<Property Map>Secrets - One or more
os_profile_secretsblocks. - os
Profile Property MapWindows Config - An
os_profile_windows_configblock as defined below. - plan Property Map
- A
planblock as defined below. - primary
Network StringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- proximity
Placement StringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- storage
Data List<Property Map>Disks - One or more
storage_data_diskblocks. - storage
Image Property MapReference - A
storage_image_referenceblock as defined below. - Map<String>
- A mapping of tags to assign to the Virtual Machine.
- zones String
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
Outputs
All input properties are implicitly available as output properties. Additionally, the VirtualMachine resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing VirtualMachine Resource
Get an existing VirtualMachine resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: VirtualMachineState, opts?: CustomResourceOptions): VirtualMachine@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
additional_capabilities: Optional[VirtualMachineAdditionalCapabilitiesArgs] = None,
availability_set_id: Optional[str] = None,
boot_diagnostics: Optional[VirtualMachineBootDiagnosticsArgs] = None,
delete_data_disks_on_termination: Optional[bool] = None,
delete_os_disk_on_termination: Optional[bool] = None,
identity: Optional[VirtualMachineIdentityArgs] = None,
license_type: Optional[str] = None,
location: Optional[str] = None,
name: Optional[str] = None,
network_interface_ids: Optional[Sequence[str]] = None,
os_profile: Optional[VirtualMachineOsProfileArgs] = None,
os_profile_linux_config: Optional[VirtualMachineOsProfileLinuxConfigArgs] = None,
os_profile_secrets: Optional[Sequence[VirtualMachineOsProfileSecretArgs]] = None,
os_profile_windows_config: Optional[VirtualMachineOsProfileWindowsConfigArgs] = None,
plan: Optional[VirtualMachinePlanArgs] = None,
primary_network_interface_id: Optional[str] = None,
proximity_placement_group_id: Optional[str] = None,
resource_group_name: Optional[str] = None,
storage_data_disks: Optional[Sequence[VirtualMachineStorageDataDiskArgs]] = None,
storage_image_reference: Optional[VirtualMachineStorageImageReferenceArgs] = None,
storage_os_disk: Optional[VirtualMachineStorageOsDiskArgs] = None,
tags: Optional[Mapping[str, str]] = None,
vm_size: Optional[str] = None,
zones: Optional[str] = None) -> VirtualMachinefunc GetVirtualMachine(ctx *Context, name string, id IDInput, state *VirtualMachineState, opts ...ResourceOption) (*VirtualMachine, error)public static VirtualMachine Get(string name, Input<string> id, VirtualMachineState? state, CustomResourceOptions? opts = null)public static VirtualMachine get(String name, Output<String> id, VirtualMachineState state, CustomResourceOptions options)resources: _: type: azure:compute:VirtualMachine get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Additional
Capabilities VirtualMachine Additional Capabilities - An
additional_capabilitiesblock as defined below. - Availability
Set stringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- Boot
Diagnostics VirtualMachine Boot Diagnostics - A
boot_diagnosticsblock as defined below. - Delete
Data boolDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - Delete
Os boolDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - Identity
Virtual
Machine Identity - An
identityblock as defined below. - License
Type string - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - Location string
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- Name string
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- Network
Interface List<string>Ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- Os
Profile VirtualMachine Os Profile - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - Os
Profile VirtualLinux Config Machine Os Profile Linux Config - An
os_profile_linux_configblock as defined below. - Os
Profile List<VirtualSecrets Machine Os Profile Secret> - One or more
os_profile_secretsblocks. - Os
Profile VirtualWindows Config Machine Os Profile Windows Config - An
os_profile_windows_configblock as defined below. - Plan
Virtual
Machine Plan - A
planblock as defined below. - Primary
Network stringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- Proximity
Placement stringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- Resource
Group stringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- Storage
Data List<VirtualDisks Machine Storage Data Disk> - One or more
storage_data_diskblocks. - Storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_referenceblock as defined below. - Storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_diskblock as defined below. - Dictionary<string, string>
- A mapping of tags to assign to the Virtual Machine.
- Vm
Size string - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- Zones string
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- Additional
Capabilities VirtualMachine Additional Capabilities Args - An
additional_capabilitiesblock as defined below. - Availability
Set stringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- Boot
Diagnostics VirtualMachine Boot Diagnostics Args - A
boot_diagnosticsblock as defined below. - Delete
Data boolDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - Delete
Os boolDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - Identity
Virtual
Machine Identity Args - An
identityblock as defined below. - License
Type string - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - Location string
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- Name string
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- Network
Interface []stringIds - A list of Network Interface ID's which should be associated with the Virtual Machine.
- Os
Profile VirtualMachine Os Profile Args - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - Os
Profile VirtualLinux Config Machine Os Profile Linux Config Args - An
os_profile_linux_configblock as defined below. - Os
Profile []VirtualSecrets Machine Os Profile Secret Args - One or more
os_profile_secretsblocks. - Os
Profile VirtualWindows Config Machine Os Profile Windows Config Args - An
os_profile_windows_configblock as defined below. - Plan
Virtual
Machine Plan Args - A
planblock as defined below. - Primary
Network stringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- Proximity
Placement stringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- Resource
Group stringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- Storage
Data []VirtualDisks Machine Storage Data Disk Args - One or more
storage_data_diskblocks. - Storage
Image VirtualReference Machine Storage Image Reference Args - A
storage_image_referenceblock as defined below. - Storage
Os VirtualDisk Machine Storage Os Disk Args - A
storage_os_diskblock as defined below. - map[string]string
- A mapping of tags to assign to the Virtual Machine.
- Vm
Size string - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- Zones string
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- additional
Capabilities VirtualMachine Additional Capabilities - An
additional_capabilitiesblock as defined below. - availability
Set StringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- boot
Diagnostics VirtualMachine Boot Diagnostics - A
boot_diagnosticsblock as defined below. - delete
Data BooleanDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - delete
Os BooleanDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - identity
Virtual
Machine Identity - An
identityblock as defined below. - license
Type String - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - location String
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- name String
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- network
Interface List<String>Ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- os
Profile VirtualMachine Os Profile - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - os
Profile VirtualLinux Config Machine Os Profile Linux Config - An
os_profile_linux_configblock as defined below. - os
Profile List<VirtualSecrets Machine Os Profile Secret> - One or more
os_profile_secretsblocks. - os
Profile VirtualWindows Config Machine Os Profile Windows Config - An
os_profile_windows_configblock as defined below. - plan
Virtual
Machine Plan - A
planblock as defined below. - primary
Network StringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- proximity
Placement StringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- resource
Group StringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- storage
Data List<VirtualDisks Machine Storage Data Disk> - One or more
storage_data_diskblocks. - storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_referenceblock as defined below. - storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_diskblock as defined below. - Map<String,String>
- A mapping of tags to assign to the Virtual Machine.
- vm
Size String - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- zones String
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- additional
Capabilities VirtualMachine Additional Capabilities - An
additional_capabilitiesblock as defined below. - availability
Set stringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- boot
Diagnostics VirtualMachine Boot Diagnostics - A
boot_diagnosticsblock as defined below. - delete
Data booleanDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - delete
Os booleanDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - identity
Virtual
Machine Identity - An
identityblock as defined below. - license
Type string - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - location string
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- name string
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- network
Interface string[]Ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- os
Profile VirtualMachine Os Profile - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - os
Profile VirtualLinux Config Machine Os Profile Linux Config - An
os_profile_linux_configblock as defined below. - os
Profile VirtualSecrets Machine Os Profile Secret[] - One or more
os_profile_secretsblocks. - os
Profile VirtualWindows Config Machine Os Profile Windows Config - An
os_profile_windows_configblock as defined below. - plan
Virtual
Machine Plan - A
planblock as defined below. - primary
Network stringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- proximity
Placement stringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- resource
Group stringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- storage
Data VirtualDisks Machine Storage Data Disk[] - One or more
storage_data_diskblocks. - storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_referenceblock as defined below. - storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_diskblock as defined below. - {[key: string]: string}
- A mapping of tags to assign to the Virtual Machine.
- vm
Size string - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- zones string
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- additional_
capabilities VirtualMachine Additional Capabilities Args - An
additional_capabilitiesblock as defined below. - availability_
set_ strid - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- boot_
diagnostics VirtualMachine Boot Diagnostics Args - A
boot_diagnosticsblock as defined below. - delete_
data_ booldisks_ on_ termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - delete_
os_ booldisk_ on_ termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - identity
Virtual
Machine Identity Args - An
identityblock as defined below. - license_
type str - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - location str
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- name str
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- network_
interface_ Sequence[str]ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- os_
profile VirtualMachine Os Profile Args - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - os_
profile_ Virtuallinux_ config Machine Os Profile Linux Config Args - An
os_profile_linux_configblock as defined below. - os_
profile_ Sequence[Virtualsecrets Machine Os Profile Secret Args] - One or more
os_profile_secretsblocks. - os_
profile_ Virtualwindows_ config Machine Os Profile Windows Config Args - An
os_profile_windows_configblock as defined below. - plan
Virtual
Machine Plan Args - A
planblock as defined below. - primary_
network_ strinterface_ id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- proximity_
placement_ strgroup_ id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- resource_
group_ strname - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- storage_
data_ Sequence[Virtualdisks Machine Storage Data Disk Args] - One or more
storage_data_diskblocks. - storage_
image_ Virtualreference Machine Storage Image Reference Args - A
storage_image_referenceblock as defined below. - storage_
os_ Virtualdisk Machine Storage Os Disk Args - A
storage_os_diskblock as defined below. - Mapping[str, str]
- A mapping of tags to assign to the Virtual Machine.
- vm_
size str - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- zones str
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
- additional
Capabilities Property Map - An
additional_capabilitiesblock as defined below. - availability
Set StringId - The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- boot
Diagnostics Property Map - A
boot_diagnosticsblock as defined below. - delete
Data BooleanDisks On Termination - Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to
false. - delete
Os BooleanDisk On Termination - Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to
false. - identity Property Map
- An
identityblock as defined below. - license
Type String - Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are
Windows_ClientandWindows_Server. - location String
- Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
- name String
- Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- network
Interface List<String>Ids - A list of Network Interface ID's which should be associated with the Virtual Machine.
- os
Profile Property Map - An
os_profileblock as defined below. Required whencreate_optionin thestorage_os_diskblock is set toFromImage. - os
Profile Property MapLinux Config - An
os_profile_linux_configblock as defined below. - os
Profile List<Property Map>Secrets - One or more
os_profile_secretsblocks. - os
Profile Property MapWindows Config - An
os_profile_windows_configblock as defined below. - plan Property Map
- A
planblock as defined below. - primary
Network StringInterface Id - The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.
- proximity
Placement StringGroup Id - The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
- resource
Group StringName - Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
- storage
Data List<Property Map>Disks - One or more
storage_data_diskblocks. - storage
Image Property MapReference - A
storage_image_referenceblock as defined below. - storage
Os Property MapDisk - A
storage_os_diskblock as defined below. - Map<String>
- A mapping of tags to assign to the Virtual Machine.
- vm
Size String - Specifies the size of the Virtual Machine. See also Azure VM Naming Conventions.
- zones String
- A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
Supporting Types
VirtualMachineAdditionalCapabilities, VirtualMachineAdditionalCapabilitiesArgs
- Ultra
Ssd boolEnabled - Should Ultra SSD disk be enabled for this Virtual Machine?
- Ultra
Ssd boolEnabled - Should Ultra SSD disk be enabled for this Virtual Machine?
- ultra
Ssd BooleanEnabled - Should Ultra SSD disk be enabled for this Virtual Machine?
- ultra
Ssd booleanEnabled - Should Ultra SSD disk be enabled for this Virtual Machine?
- ultra_
ssd_ boolenabled - Should Ultra SSD disk be enabled for this Virtual Machine?
- ultra
Ssd BooleanEnabled - Should Ultra SSD disk be enabled for this Virtual Machine?
VirtualMachineBootDiagnostics, VirtualMachineBootDiagnosticsArgs
- Enabled bool
- Should Boot Diagnostics be enabled for this Virtual Machine?
- Storage
Uri string - The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.
- Enabled bool
- Should Boot Diagnostics be enabled for this Virtual Machine?
- Storage
Uri string - The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.
- enabled Boolean
- Should Boot Diagnostics be enabled for this Virtual Machine?
- storage
Uri String - The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.
- enabled boolean
- Should Boot Diagnostics be enabled for this Virtual Machine?
- storage
Uri string - The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.
- enabled bool
- Should Boot Diagnostics be enabled for this Virtual Machine?
- storage_
uri str - The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.
- enabled Boolean
- Should Boot Diagnostics be enabled for this Virtual Machine?
- storage
Uri String - The Storage Account's Blob Endpoint which should hold the virtual machine's diagnostic files.
VirtualMachineIdentity, VirtualMachineIdentityArgs
- Type string
- The Managed Service Identity Type of this Virtual Machine. Possible values are
SystemAssigned(where Azure will generate a Service Principal for you),UserAssigned(where you can specify the Service Principal ID's) to be used by this Virtual Machine using theidentity_idsfield, andSystemAssigned, UserAssignedwhich assigns both a system managed identity as well as the specified user assigned identities. - Identity
Ids List<string> - Specifies a list of user managed identity ids to be assigned to the VM. Required if
typeisUserAssigned. - Principal
Id string - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.
- Type string
- The Managed Service Identity Type of this Virtual Machine. Possible values are
SystemAssigned(where Azure will generate a Service Principal for you),UserAssigned(where you can specify the Service Principal ID's) to be used by this Virtual Machine using theidentity_idsfield, andSystemAssigned, UserAssignedwhich assigns both a system managed identity as well as the specified user assigned identities. - Identity
Ids []string - Specifies a list of user managed identity ids to be assigned to the VM. Required if
typeisUserAssigned. - Principal
Id string - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.
- type String
- The Managed Service Identity Type of this Virtual Machine. Possible values are
SystemAssigned(where Azure will generate a Service Principal for you),UserAssigned(where you can specify the Service Principal ID's) to be used by this Virtual Machine using theidentity_idsfield, andSystemAssigned, UserAssignedwhich assigns both a system managed identity as well as the specified user assigned identities. - identity
Ids List<String> - Specifies a list of user managed identity ids to be assigned to the VM. Required if
typeisUserAssigned. - principal
Id String - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.
- type string
- The Managed Service Identity Type of this Virtual Machine. Possible values are
SystemAssigned(where Azure will generate a Service Principal for you),UserAssigned(where you can specify the Service Principal ID's) to be used by this Virtual Machine using theidentity_idsfield, andSystemAssigned, UserAssignedwhich assigns both a system managed identity as well as the specified user assigned identities. - identity
Ids string[] - Specifies a list of user managed identity ids to be assigned to the VM. Required if
typeisUserAssigned. - principal
Id string - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.
- type str
- The Managed Service Identity Type of this Virtual Machine. Possible values are
SystemAssigned(where Azure will generate a Service Principal for you),UserAssigned(where you can specify the Service Principal ID's) to be used by this Virtual Machine using theidentity_idsfield, andSystemAssigned, UserAssignedwhich assigns both a system managed identity as well as the specified user assigned identities. - identity_
ids Sequence[str] - Specifies a list of user managed identity ids to be assigned to the VM. Required if
typeisUserAssigned. - principal_
id str - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.
- type String
- The Managed Service Identity Type of this Virtual Machine. Possible values are
SystemAssigned(where Azure will generate a Service Principal for you),UserAssigned(where you can specify the Service Principal ID's) to be used by this Virtual Machine using theidentity_idsfield, andSystemAssigned, UserAssignedwhich assigns both a system managed identity as well as the specified user assigned identities. - identity
Ids List<String> - Specifies a list of user managed identity ids to be assigned to the VM. Required if
typeisUserAssigned. - principal
Id String - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.
VirtualMachineOsProfile, VirtualMachineOsProfileArgs
- Admin
Username string - Specifies the name of the local administrator account.
- Computer
Name string - Specifies the name of the Virtual Machine.
- Admin
Password string - The password associated with the local administrator account.
- Custom
Data string - Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.
- Admin
Username string - Specifies the name of the local administrator account.
- Computer
Name string - Specifies the name of the Virtual Machine.
- Admin
Password string - The password associated with the local administrator account.
- Custom
Data string - Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.
- admin
Username String - Specifies the name of the local administrator account.
- computer
Name String - Specifies the name of the Virtual Machine.
- admin
Password String - The password associated with the local administrator account.
- custom
Data String - Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.
- admin
Username string - Specifies the name of the local administrator account.
- computer
Name string - Specifies the name of the Virtual Machine.
- admin
Password string - The password associated with the local administrator account.
- custom
Data string - Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.
- admin_
username str - Specifies the name of the local administrator account.
- computer_
name str - Specifies the name of the Virtual Machine.
- admin_
password str - The password associated with the local administrator account.
- custom_
data str - Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.
- admin
Username String - Specifies the name of the local administrator account.
- computer
Name String - Specifies the name of the Virtual Machine.
- admin
Password String - The password associated with the local administrator account.
- custom
Data String - Specifies custom data to supply to the machine. On Linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.
VirtualMachineOsProfileLinuxConfig, VirtualMachineOsProfileLinuxConfigArgs
- Disable
Password boolAuthentication - Specifies whether password authentication should be disabled. If set to
false, anadmin_passwordmust be specified. - Ssh
Keys List<VirtualMachine Os Profile Linux Config Ssh Key> - One or more
ssh_keysblocks. This field is required ifdisable_password_authenticationis set totrue.
- Disable
Password boolAuthentication - Specifies whether password authentication should be disabled. If set to
false, anadmin_passwordmust be specified. - Ssh
Keys []VirtualMachine Os Profile Linux Config Ssh Key - One or more
ssh_keysblocks. This field is required ifdisable_password_authenticationis set totrue.
- disable
Password BooleanAuthentication - Specifies whether password authentication should be disabled. If set to
false, anadmin_passwordmust be specified. - ssh
Keys List<VirtualMachine Os Profile Linux Config Ssh Key> - One or more
ssh_keysblocks. This field is required ifdisable_password_authenticationis set totrue.
- disable
Password booleanAuthentication - Specifies whether password authentication should be disabled. If set to
false, anadmin_passwordmust be specified. - ssh
Keys VirtualMachine Os Profile Linux Config Ssh Key[] - One or more
ssh_keysblocks. This field is required ifdisable_password_authenticationis set totrue.
- disable_
password_ boolauthentication - Specifies whether password authentication should be disabled. If set to
false, anadmin_passwordmust be specified. - ssh_
keys Sequence[VirtualMachine Os Profile Linux Config Ssh Key] - One or more
ssh_keysblocks. This field is required ifdisable_password_authenticationis set totrue.
- disable
Password BooleanAuthentication - Specifies whether password authentication should be disabled. If set to
false, anadmin_passwordmust be specified. - ssh
Keys List<Property Map> - One or more
ssh_keysblocks. This field is required ifdisable_password_authenticationis set totrue.
VirtualMachineOsProfileLinuxConfigSshKey, VirtualMachineOsProfileLinuxConfigSshKeyArgs
VirtualMachineOsProfileSecret, VirtualMachineOsProfileSecretArgs
- Source
Vault stringId - Specifies the ID of the Key Vault to use.
- Vault
Certificates List<VirtualMachine Os Profile Secret Vault Certificate> - One or more
vault_certificatesblocks.
- Source
Vault stringId - Specifies the ID of the Key Vault to use.
- Vault
Certificates []VirtualMachine Os Profile Secret Vault Certificate - One or more
vault_certificatesblocks.
- source
Vault StringId - Specifies the ID of the Key Vault to use.
- vault
Certificates List<VirtualMachine Os Profile Secret Vault Certificate> - One or more
vault_certificatesblocks.
- source
Vault stringId - Specifies the ID of the Key Vault to use.
- vault
Certificates VirtualMachine Os Profile Secret Vault Certificate[] - One or more
vault_certificatesblocks.
- source_
vault_ strid - Specifies the ID of the Key Vault to use.
- vault_
certificates Sequence[VirtualMachine Os Profile Secret Vault Certificate] - One or more
vault_certificatesblocks.
- source
Vault StringId - Specifies the ID of the Key Vault to use.
- vault
Certificates List<Property Map> - One or more
vault_certificatesblocks.
VirtualMachineOsProfileSecretVaultCertificate, VirtualMachineOsProfileSecretVaultCertificateArgs
- Certificate
Url string - The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:
- Certificate
Store string - Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as
My.
- Certificate
Url string - The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:
- Certificate
Store string - Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as
My.
- certificate
Url String - The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:
- certificate
Store String - Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as
My.
- certificate
Url string - The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:
- certificate
Store string - Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as
My.
- certificate_
url str - The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:
- certificate_
store str - Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as
My.
- certificate
Url String - The ID of the Key Vault Secret. Stored secret is the Base64 encoding of a JSON Object that which is encoded in UTF-8 of which the contents need to be:
- certificate
Store String - Specifies the certificate store on the Virtual Machine where the certificate should be added to, such as
My.
VirtualMachineOsProfileWindowsConfig, VirtualMachineOsProfileWindowsConfigArgs
- Additional
Unattend List<VirtualConfigs Machine Os Profile Windows Config Additional Unattend Config> - An
additional_unattend_configblock as defined below. - Enable
Automatic boolUpgrades - Are automatic updates enabled on this Virtual Machine? Defaults to
false. - Provision
Vm boolAgent - Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to
false. - Timezone string
- Specifies the time zone of the virtual machine, the possible values are defined here.
- Winrms
List<Virtual
Machine Os Profile Windows Config Winrm> - One or more
winrmblocks as defined below.
- Additional
Unattend []VirtualConfigs Machine Os Profile Windows Config Additional Unattend Config - An
additional_unattend_configblock as defined below. - Enable
Automatic boolUpgrades - Are automatic updates enabled on this Virtual Machine? Defaults to
false. - Provision
Vm boolAgent - Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to
false. - Timezone string
- Specifies the time zone of the virtual machine, the possible values are defined here.
- Winrms
[]Virtual
Machine Os Profile Windows Config Winrm - One or more
winrmblocks as defined below.
- additional
Unattend List<VirtualConfigs Machine Os Profile Windows Config Additional Unattend Config> - An
additional_unattend_configblock as defined below. - enable
Automatic BooleanUpgrades - Are automatic updates enabled on this Virtual Machine? Defaults to
false. - provision
Vm BooleanAgent - Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to
false. - timezone String
- Specifies the time zone of the virtual machine, the possible values are defined here.
- winrms
List<Virtual
Machine Os Profile Windows Config Winrm> - One or more
winrmblocks as defined below.
- additional
Unattend VirtualConfigs Machine Os Profile Windows Config Additional Unattend Config[] - An
additional_unattend_configblock as defined below. - enable
Automatic booleanUpgrades - Are automatic updates enabled on this Virtual Machine? Defaults to
false. - provision
Vm booleanAgent - Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to
false. - timezone string
- Specifies the time zone of the virtual machine, the possible values are defined here.
- winrms
Virtual
Machine Os Profile Windows Config Winrm[] - One or more
winrmblocks as defined below.
- additional_
unattend_ Sequence[Virtualconfigs Machine Os Profile Windows Config Additional Unattend Config] - An
additional_unattend_configblock as defined below. - enable_
automatic_ boolupgrades - Are automatic updates enabled on this Virtual Machine? Defaults to
false. - provision_
vm_ boolagent - Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to
false. - timezone str
- Specifies the time zone of the virtual machine, the possible values are defined here.
- winrms
Sequence[Virtual
Machine Os Profile Windows Config Winrm] - One or more
winrmblocks as defined below.
- additional
Unattend List<Property Map>Configs - An
additional_unattend_configblock as defined below. - enable
Automatic BooleanUpgrades - Are automatic updates enabled on this Virtual Machine? Defaults to
false. - provision
Vm BooleanAgent - Should the Azure Virtual Machine Guest Agent be installed on this Virtual Machine? Defaults to
false. - timezone String
- Specifies the time zone of the virtual machine, the possible values are defined here.
- winrms List<Property Map>
- One or more
winrmblocks as defined below.
VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfig, VirtualMachineOsProfileWindowsConfigAdditionalUnattendConfigArgs
- Component string
- Specifies the name of the component to configure with the added content. The only allowable value is
Microsoft-Windows-Shell-Setup. - Content string
- Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
- Pass string
- Specifies the name of the pass that the content applies to. The only allowable value is
oobeSystem. - Setting
Name string - Specifies the name of the setting to which the content applies. Possible values are:
FirstLogonCommandsandAutoLogon.
- Component string
- Specifies the name of the component to configure with the added content. The only allowable value is
Microsoft-Windows-Shell-Setup. - Content string
- Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
- Pass string
- Specifies the name of the pass that the content applies to. The only allowable value is
oobeSystem. - Setting
Name string - Specifies the name of the setting to which the content applies. Possible values are:
FirstLogonCommandsandAutoLogon.
- component String
- Specifies the name of the component to configure with the added content. The only allowable value is
Microsoft-Windows-Shell-Setup. - content String
- Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
- pass String
- Specifies the name of the pass that the content applies to. The only allowable value is
oobeSystem. - setting
Name String - Specifies the name of the setting to which the content applies. Possible values are:
FirstLogonCommandsandAutoLogon.
- component string
- Specifies the name of the component to configure with the added content. The only allowable value is
Microsoft-Windows-Shell-Setup. - content string
- Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
- pass string
- Specifies the name of the pass that the content applies to. The only allowable value is
oobeSystem. - setting
Name string - Specifies the name of the setting to which the content applies. Possible values are:
FirstLogonCommandsandAutoLogon.
- component str
- Specifies the name of the component to configure with the added content. The only allowable value is
Microsoft-Windows-Shell-Setup. - content str
- Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
- pass_ str
- Specifies the name of the pass that the content applies to. The only allowable value is
oobeSystem. - setting_
name str - Specifies the name of the setting to which the content applies. Possible values are:
FirstLogonCommandsandAutoLogon.
- component String
- Specifies the name of the component to configure with the added content. The only allowable value is
Microsoft-Windows-Shell-Setup. - content String
- Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.
- pass String
- Specifies the name of the pass that the content applies to. The only allowable value is
oobeSystem. - setting
Name String - Specifies the name of the setting to which the content applies. Possible values are:
FirstLogonCommandsandAutoLogon.
VirtualMachineOsProfileWindowsConfigWinrm, VirtualMachineOsProfileWindowsConfigWinrmArgs
- Protocol string
- Specifies the protocol of listener. Possible values are
HTTPorHTTPS. - Certificate
Url string - The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the
vault_certificatesblock within theos_profile_secretsblock.
- Protocol string
- Specifies the protocol of listener. Possible values are
HTTPorHTTPS. - Certificate
Url string - The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the
vault_certificatesblock within theos_profile_secretsblock.
- protocol String
- Specifies the protocol of listener. Possible values are
HTTPorHTTPS. - certificate
Url String - The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the
vault_certificatesblock within theos_profile_secretsblock.
- protocol string
- Specifies the protocol of listener. Possible values are
HTTPorHTTPS. - certificate
Url string - The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the
vault_certificatesblock within theos_profile_secretsblock.
- protocol str
- Specifies the protocol of listener. Possible values are
HTTPorHTTPS. - certificate_
url str - The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the
vault_certificatesblock within theos_profile_secretsblock.
- protocol String
- Specifies the protocol of listener. Possible values are
HTTPorHTTPS. - certificate
Url String - The ID of the Key Vault Secret which contains the encrypted Certificate which should be installed on the Virtual Machine. This certificate must also be specified in the
vault_certificatesblock within theos_profile_secretsblock.
VirtualMachinePlan, VirtualMachinePlanArgs
VirtualMachineStorageDataDisk, VirtualMachineStorageDataDiskArgs
- Create
Option string - Specifies how the data disk should be created. Possible values are
Attach,FromImageandEmpty. - Lun int
- Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.
- Name string
- The name of the Data Disk.
- Caching string
- Specifies the caching requirements for the Data Disk. Possible values include
None,ReadOnlyandReadWrite. - Disk
Size intGb - Specifies the size of the data disk in gigabytes.
- Managed
Disk stringId - Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set
create_optionmust be set toAttach. - Managed
Disk stringType - Specifies the type of managed disk to create. Possible values are either
Standard_LRS,StandardSSD_LRS,Premium_LRSorUltraSSD_LRS. - Vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged Data Disk. Changing this forces a new resource to be created.
- Write
Accelerator boolEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- Create
Option string - Specifies how the data disk should be created. Possible values are
Attach,FromImageandEmpty. - Lun int
- Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.
- Name string
- The name of the Data Disk.
- Caching string
- Specifies the caching requirements for the Data Disk. Possible values include
None,ReadOnlyandReadWrite. - Disk
Size intGb - Specifies the size of the data disk in gigabytes.
- Managed
Disk stringId - Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set
create_optionmust be set toAttach. - Managed
Disk stringType - Specifies the type of managed disk to create. Possible values are either
Standard_LRS,StandardSSD_LRS,Premium_LRSorUltraSSD_LRS. - Vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged Data Disk. Changing this forces a new resource to be created.
- Write
Accelerator boolEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- create
Option String - Specifies how the data disk should be created. Possible values are
Attach,FromImageandEmpty. - lun Integer
- Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.
- name String
- The name of the Data Disk.
- caching String
- Specifies the caching requirements for the Data Disk. Possible values include
None,ReadOnlyandReadWrite. - disk
Size IntegerGb - Specifies the size of the data disk in gigabytes.
- managed
Disk StringId - Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set
create_optionmust be set toAttach. - managed
Disk StringType - Specifies the type of managed disk to create. Possible values are either
Standard_LRS,StandardSSD_LRS,Premium_LRSorUltraSSD_LRS. - vhd
Uri String - Specifies the URI of the VHD file backing this Unmanaged Data Disk. Changing this forces a new resource to be created.
- write
Accelerator BooleanEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- create
Option string - Specifies how the data disk should be created. Possible values are
Attach,FromImageandEmpty. - lun number
- Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.
- name string
- The name of the Data Disk.
- caching string
- Specifies the caching requirements for the Data Disk. Possible values include
None,ReadOnlyandReadWrite. - disk
Size numberGb - Specifies the size of the data disk in gigabytes.
- managed
Disk stringId - Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set
create_optionmust be set toAttach. - managed
Disk stringType - Specifies the type of managed disk to create. Possible values are either
Standard_LRS,StandardSSD_LRS,Premium_LRSorUltraSSD_LRS. - vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged Data Disk. Changing this forces a new resource to be created.
- write
Accelerator booleanEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- create_
option str - Specifies how the data disk should be created. Possible values are
Attach,FromImageandEmpty. - lun int
- Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.
- name str
- The name of the Data Disk.
- caching str
- Specifies the caching requirements for the Data Disk. Possible values include
None,ReadOnlyandReadWrite. - disk_
size_ intgb - Specifies the size of the data disk in gigabytes.
- managed_
disk_ strid - Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set
create_optionmust be set toAttach. - managed_
disk_ strtype - Specifies the type of managed disk to create. Possible values are either
Standard_LRS,StandardSSD_LRS,Premium_LRSorUltraSSD_LRS. - vhd_
uri str - Specifies the URI of the VHD file backing this Unmanaged Data Disk. Changing this forces a new resource to be created.
- write_
accelerator_ boolenabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- create
Option String - Specifies how the data disk should be created. Possible values are
Attach,FromImageandEmpty. - lun Number
- Specifies the logical unit number of the data disk. This needs to be unique within all the Data Disks on the Virtual Machine.
- name String
- The name of the Data Disk.
- caching String
- Specifies the caching requirements for the Data Disk. Possible values include
None,ReadOnlyandReadWrite. - disk
Size NumberGb - Specifies the size of the data disk in gigabytes.
- managed
Disk StringId - Specifies the ID of an Existing Managed Disk which should be attached to this Virtual Machine. When this field is set
create_optionmust be set toAttach. - managed
Disk StringType - Specifies the type of managed disk to create. Possible values are either
Standard_LRS,StandardSSD_LRS,Premium_LRSorUltraSSD_LRS. - vhd
Uri String - Specifies the URI of the VHD file backing this Unmanaged Data Disk. Changing this forces a new resource to be created.
- write
Accelerator BooleanEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
VirtualMachineStorageImageReference, VirtualMachineStorageImageReferenceArgs
- Id string
- Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.
- Offer string
- Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.
- Publisher string
- Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.
- Sku string
- Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.
- Version string
- Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.
- Id string
- Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.
- Offer string
- Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.
- Publisher string
- Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.
- Sku string
- Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.
- Version string
- Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.
- id String
- Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.
- offer String
- Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.
- publisher String
- Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.
- sku String
- Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.
- version String
- Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.
- id string
- Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.
- offer string
- Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.
- publisher string
- Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.
- sku string
- Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.
- version string
- Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.
- id str
- Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.
- offer str
- Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.
- publisher str
- Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.
- sku str
- Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.
- version str
- Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.
- id String
- Specifies the ID of the Custom Image which the Virtual Machine should be created from. Changing this forces a new resource to be created.
- offer String
- Specifies the offer of the image used to create the virtual machine. Changing this forces a new resource to be created.
- publisher String
- Specifies the publisher of the image used to create the virtual machine. Changing this forces a new resource to be created.
- sku String
- Specifies the SKU of the image used to create the virtual machine. Changing this forces a new resource to be created.
- version String
- Specifies the version of the image used to create the virtual machine. Changing this forces a new resource to be created.
VirtualMachineStorageOsDisk, VirtualMachineStorageOsDiskArgs
- Create
Option string - Specifies how the OS Disk should be created. Possible values are
Attach(managed disks only) andFromImage. - Name string
- Specifies the name of the OS Disk.
- Caching string
- Specifies the caching requirements for the OS Disk. Possible values include
None,ReadOnlyandReadWrite. - Disk
Size intGb - Specifies the size of the OS Disk in gigabytes.
- Image
Uri string - Specifies the Image URI in the format
publisherName:offer:skus:version. This field can also specify the VHD uri of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image theos_typefield must be set. - Managed
Disk stringId - Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the
create_optionmust be set toAttach. - Managed
Disk stringType - Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS,StandardSSD_LRSorPremium_LRS. - Os
Type string - Specifies the Operating System on the OS Disk. Possible values are
LinuxandWindows. - Vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.
- Write
Accelerator boolEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- Create
Option string - Specifies how the OS Disk should be created. Possible values are
Attach(managed disks only) andFromImage. - Name string
- Specifies the name of the OS Disk.
- Caching string
- Specifies the caching requirements for the OS Disk. Possible values include
None,ReadOnlyandReadWrite. - Disk
Size intGb - Specifies the size of the OS Disk in gigabytes.
- Image
Uri string - Specifies the Image URI in the format
publisherName:offer:skus:version. This field can also specify the VHD uri of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image theos_typefield must be set. - Managed
Disk stringId - Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the
create_optionmust be set toAttach. - Managed
Disk stringType - Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS,StandardSSD_LRSorPremium_LRS. - Os
Type string - Specifies the Operating System on the OS Disk. Possible values are
LinuxandWindows. - Vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.
- Write
Accelerator boolEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- create
Option String - Specifies how the OS Disk should be created. Possible values are
Attach(managed disks only) andFromImage. - name String
- Specifies the name of the OS Disk.
- caching String
- Specifies the caching requirements for the OS Disk. Possible values include
None,ReadOnlyandReadWrite. - disk
Size IntegerGb - Specifies the size of the OS Disk in gigabytes.
- image
Uri String - Specifies the Image URI in the format
publisherName:offer:skus:version. This field can also specify the VHD uri of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image theos_typefield must be set. - managed
Disk StringId - Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the
create_optionmust be set toAttach. - managed
Disk StringType - Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS,StandardSSD_LRSorPremium_LRS. - os
Type String - Specifies the Operating System on the OS Disk. Possible values are
LinuxandWindows. - vhd
Uri String - Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.
- write
Accelerator BooleanEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- create
Option string - Specifies how the OS Disk should be created. Possible values are
Attach(managed disks only) andFromImage. - name string
- Specifies the name of the OS Disk.
- caching string
- Specifies the caching requirements for the OS Disk. Possible values include
None,ReadOnlyandReadWrite. - disk
Size numberGb - Specifies the size of the OS Disk in gigabytes.
- image
Uri string - Specifies the Image URI in the format
publisherName:offer:skus:version. This field can also specify the VHD uri of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image theos_typefield must be set. - managed
Disk stringId - Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the
create_optionmust be set toAttach. - managed
Disk stringType - Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS,StandardSSD_LRSorPremium_LRS. - os
Type string - Specifies the Operating System on the OS Disk. Possible values are
LinuxandWindows. - vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.
- write
Accelerator booleanEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- create_
option str - Specifies how the OS Disk should be created. Possible values are
Attach(managed disks only) andFromImage. - name str
- Specifies the name of the OS Disk.
- caching str
- Specifies the caching requirements for the OS Disk. Possible values include
None,ReadOnlyandReadWrite. - disk_
size_ intgb - Specifies the size of the OS Disk in gigabytes.
- image_
uri str - Specifies the Image URI in the format
publisherName:offer:skus:version. This field can also specify the VHD uri of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image theos_typefield must be set. - managed_
disk_ strid - Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the
create_optionmust be set toAttach. - managed_
disk_ strtype - Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS,StandardSSD_LRSorPremium_LRS. - os_
type str - Specifies the Operating System on the OS Disk. Possible values are
LinuxandWindows. - vhd_
uri str - Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.
- write_
accelerator_ boolenabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
- create
Option String - Specifies how the OS Disk should be created. Possible values are
Attach(managed disks only) andFromImage. - name String
- Specifies the name of the OS Disk.
- caching String
- Specifies the caching requirements for the OS Disk. Possible values include
None,ReadOnlyandReadWrite. - disk
Size NumberGb - Specifies the size of the OS Disk in gigabytes.
- image
Uri String - Specifies the Image URI in the format
publisherName:offer:skus:version. This field can also specify the VHD uri of a custom VM image to clone. When cloning a Custom (Unmanaged) Disk Image theos_typefield must be set. - managed
Disk StringId - Specifies the ID of an existing Managed Disk which should be attached as the OS Disk of this Virtual Machine. If this is set then the
create_optionmust be set toAttach. - managed
Disk StringType - Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS,StandardSSD_LRSorPremium_LRS. - os
Type String - Specifies the Operating System on the OS Disk. Possible values are
LinuxandWindows. - vhd
Uri String - Specifies the URI of the VHD file backing this Unmanaged OS Disk. Changing this forces a new resource to be created.
- write
Accelerator BooleanEnabled - Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRSmanaged disks with no caching and M-Series VMs. Defaults tofalse.
Import
Virtual Machines can be imported using the resource id, e.g.
$ pulumi import azure:compute/virtualMachine:VirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Compute/virtualMachines/machine1
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
azurermTerraform Provider.
We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
