We recommend using Azure Native.
azure.compute.VirtualMachine
Explore with Pulumi AI
Manages a Virtual Machine.
Disclaimers
Note: The
azure.compute.VirtualMachine
resource has been superseded by theazure.compute.LinuxVirtualMachine
andazure.compute.WindowsVirtualMachine
resources. The existingazure.compute.VirtualMachine
resource 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.LinuxVirtualMachine
andazure.compute.WindowsVirtualMachine
resources.
Note: Data Disks can be attached either directly on the
azure.compute.VirtualMachine
resource, or using theazure.compute.DataDiskAttachment
resource - 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)
This example provisions a Virtual Machine with Managed Disks.
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const config = new pulumi.Config();
const prefix = config.get("prefix") || "tfvmex";
const example = new azure.core.ResourceGroup("example", {
name: `${prefix}-resources`,
location: "West Europe",
});
const main = new azure.network.VirtualNetwork("main", {
name: `${prefix}-network`,
addressSpaces: ["10.0.0.0/16"],
location: example.location,
resourceGroupName: example.name,
});
const internal = new azure.network.Subnet("internal", {
name: "internal",
resourceGroupName: example.name,
virtualNetworkName: main.name,
addressPrefixes: ["10.0.2.0/24"],
});
const mainNetworkInterface = new azure.network.NetworkInterface("main", {
name: `${prefix}-nic`,
location: example.location,
resourceGroupName: example.name,
ipConfigurations: [{
name: "testconfiguration1",
subnetId: internal.id,
privateIpAddressAllocation: "Dynamic",
}],
});
const mainVirtualMachine = new azure.compute.VirtualMachine("main", {
name: `${prefix}-vm`,
location: example.location,
resourceGroupName: example.name,
networkInterfaceIds: [mainNetworkInterface.id],
vmSize: "Standard_DS1_v2",
storageImageReference: {
publisher: "Canonical",
offer: "0001-com-ubuntu-server-jammy",
sku: "22_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"
example = azure.core.ResourceGroup("example",
name=f"{prefix}-resources",
location="West Europe")
main = azure.network.VirtualNetwork("main",
name=f"{prefix}-network",
address_spaces=["10.0.0.0/16"],
location=example.location,
resource_group_name=example.name)
internal = azure.network.Subnet("internal",
name="internal",
resource_group_name=example.name,
virtual_network_name=main.name,
address_prefixes=["10.0.2.0/24"])
main_network_interface = azure.network.NetworkInterface("main",
name=f"{prefix}-nic",
location=example.location,
resource_group_name=example.name,
ip_configurations=[{
"name": "testconfiguration1",
"subnet_id": internal.id,
"private_ip_address_allocation": "Dynamic",
}])
main_virtual_machine = azure.compute.VirtualMachine("main",
name=f"{prefix}-vm",
location=example.location,
resource_group_name=example.name,
network_interface_ids=[main_network_interface.id],
vm_size="Standard_DS1_v2",
storage_image_reference={
"publisher": "Canonical",
"offer": "0001-com-ubuntu-server-jammy",
"sku": "22_04-lts",
"version": "latest",
},
storage_os_disk={
"name": "myosdisk1",
"caching": "ReadWrite",
"create_option": "FromImage",
"managed_disk_type": "Standard_LRS",
},
os_profile={
"computer_name": "hostname",
"admin_username": "testadmin",
"admin_password": "Password1234!",
},
os_profile_linux_config={
"disable_password_authentication": False,
},
tags={
"environment": "staging",
})
package main
import (
"fmt"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/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
}
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.Sprintf("%v-resources", prefix),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
main, err := network.NewVirtualNetwork(ctx, "main", &network.VirtualNetworkArgs{
Name: pulumi.Sprintf("%v-network", prefix),
AddressSpaces: pulumi.StringArray{
pulumi.String("10.0.0.0/16"),
},
Location: example.Location,
ResourceGroupName: example.Name,
})
if err != nil {
return err
}
internal, err := network.NewSubnet(ctx, "internal", &network.SubnetArgs{
Name: pulumi.String("internal"),
ResourceGroupName: example.Name,
VirtualNetworkName: main.Name,
AddressPrefixes: pulumi.StringArray{
pulumi.String("10.0.2.0/24"),
},
})
if err != nil {
return err
}
mainNetworkInterface, err := network.NewNetworkInterface(ctx, "main", &network.NetworkInterfaceArgs{
Name: pulumi.Sprintf("%v-nic", prefix),
Location: example.Location,
ResourceGroupName: example.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, "main", &compute.VirtualMachineArgs{
Name: pulumi.Sprintf("%v-vm", prefix),
Location: example.Location,
ResourceGroupName: example.Name,
NetworkInterfaceIds: pulumi.StringArray{
mainNetworkInterface.ID(),
},
VmSize: pulumi.String("Standard_DS1_v2"),
StorageImageReference: &compute.VirtualMachineStorageImageReferenceArgs{
Publisher: pulumi.String("Canonical"),
Offer: pulumi.String("0001-com-ubuntu-server-jammy"),
Sku: pulumi.String("22_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
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var prefix = config.Get("prefix") ?? "tfvmex";
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = $"{prefix}-resources",
Location = "West Europe",
});
var main = new Azure.Network.VirtualNetwork("main", new()
{
Name = $"{prefix}-network",
AddressSpaces = new[]
{
"10.0.0.0/16",
},
Location = example.Location,
ResourceGroupName = example.Name,
});
var @internal = new Azure.Network.Subnet("internal", new()
{
Name = "internal",
ResourceGroupName = example.Name,
VirtualNetworkName = main.Name,
AddressPrefixes = new[]
{
"10.0.2.0/24",
},
});
var mainNetworkInterface = new Azure.Network.NetworkInterface("main", new()
{
Name = $"{prefix}-nic",
Location = example.Location,
ResourceGroupName = example.Name,
IpConfigurations = new[]
{
new Azure.Network.Inputs.NetworkInterfaceIpConfigurationArgs
{
Name = "testconfiguration1",
SubnetId = @internal.Id,
PrivateIpAddressAllocation = "Dynamic",
},
},
});
var mainVirtualMachine = new Azure.Compute.VirtualMachine("main", new()
{
Name = $"{prefix}-vm",
Location = example.Location,
ResourceGroupName = example.Name,
NetworkInterfaceIds = new[]
{
mainNetworkInterface.Id,
},
VmSize = "Standard_DS1_v2",
StorageImageReference = new Azure.Compute.Inputs.VirtualMachineStorageImageReferenceArgs
{
Publisher = "Canonical",
Offer = "0001-com-ubuntu-server-jammy",
Sku = "22_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 generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.network.Subnet;
import com.pulumi.azure.network.SubnetArgs;
import com.pulumi.azure.network.NetworkInterface;
import com.pulumi.azure.network.NetworkInterfaceArgs;
import com.pulumi.azure.network.inputs.NetworkInterfaceIpConfigurationArgs;
import com.pulumi.azure.compute.VirtualMachine;
import com.pulumi.azure.compute.VirtualMachineArgs;
import com.pulumi.azure.compute.inputs.VirtualMachineStorageImageReferenceArgs;
import com.pulumi.azure.compute.inputs.VirtualMachineStorageOsDiskArgs;
import com.pulumi.azure.compute.inputs.VirtualMachineOsProfileArgs;
import com.pulumi.azure.compute.inputs.VirtualMachineOsProfileLinuxConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var prefix = config.get("prefix").orElse("tfvmex");
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name(String.format("%s-resources", prefix))
.location("West Europe")
.build());
var main = new VirtualNetwork("main", VirtualNetworkArgs.builder()
.name(String.format("%s-network", prefix))
.addressSpaces("10.0.0.0/16")
.location(example.location())
.resourceGroupName(example.name())
.build());
var internal = new Subnet("internal", SubnetArgs.builder()
.name("internal")
.resourceGroupName(example.name())
.virtualNetworkName(main.name())
.addressPrefixes("10.0.2.0/24")
.build());
var mainNetworkInterface = new NetworkInterface("mainNetworkInterface", NetworkInterfaceArgs.builder()
.name(String.format("%s-nic", prefix))
.location(example.location())
.resourceGroupName(example.name())
.ipConfigurations(NetworkInterfaceIpConfigurationArgs.builder()
.name("testconfiguration1")
.subnetId(internal.id())
.privateIpAddressAllocation("Dynamic")
.build())
.build());
var mainVirtualMachine = new VirtualMachine("mainVirtualMachine", VirtualMachineArgs.builder()
.name(String.format("%s-vm", prefix))
.location(example.location())
.resourceGroupName(example.name())
.networkInterfaceIds(mainNetworkInterface.id())
.vmSize("Standard_DS1_v2")
.storageImageReference(VirtualMachineStorageImageReferenceArgs.builder()
.publisher("Canonical")
.offer("0001-com-ubuntu-server-jammy")
.sku("22_04-lts")
.version("latest")
.build())
.storageOsDisk(VirtualMachineStorageOsDiskArgs.builder()
.name("myosdisk1")
.caching("ReadWrite")
.createOption("FromImage")
.managedDiskType("Standard_LRS")
.build())
.osProfile(VirtualMachineOsProfileArgs.builder()
.computerName("hostname")
.adminUsername("testadmin")
.adminPassword("Password1234!")
.build())
.osProfileLinuxConfig(VirtualMachineOsProfileLinuxConfigArgs.builder()
.disablePasswordAuthentication(false)
.build())
.tags(Map.of("environment", "staging"))
.build());
}
}
configuration:
prefix:
type: string
default: tfvmex
resources:
example:
type: azure:core:ResourceGroup
properties:
name: ${prefix}-resources
location: West Europe
main:
type: azure:network:VirtualNetwork
properties:
name: ${prefix}-network
addressSpaces:
- 10.0.0.0/16
location: ${example.location}
resourceGroupName: ${example.name}
internal:
type: azure:network:Subnet
properties:
name: internal
resourceGroupName: ${example.name}
virtualNetworkName: ${main.name}
addressPrefixes:
- 10.0.2.0/24
mainNetworkInterface:
type: azure:network:NetworkInterface
name: main
properties:
name: ${prefix}-nic
location: ${example.location}
resourceGroupName: ${example.name}
ipConfigurations:
- name: testconfiguration1
subnetId: ${internal.id}
privateIpAddressAllocation: Dynamic
mainVirtualMachine:
type: azure:compute:VirtualMachine
name: main
properties:
name: ${prefix}-vm
location: ${example.location}
resourceGroupName: ${example.name}
networkInterfaceIds:
- ${mainNetworkInterface.id}
vmSize: Standard_DS1_v2
storageImageReference:
publisher: Canonical
offer: 0001-com-ubuntu-server-jammy
sku: 22_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
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",
TenantId = "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"),
TenantId: 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 VirtualMachine("virtualMachineResource", 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")
.tenantId("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",
"tenant_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",
tenantId: "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
tenantId: 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 IDs 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_disk
block 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_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- Identity
Virtual
Machine Identity - An
identity
block 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_Client
andWindows_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_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - Os
Profile VirtualLinux Config Machine Os Profile Linux Config - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - Os
Profile List<VirtualSecrets Machine Os Profile Secret> - One or more
os_profile_secrets
blocks as defined below. - Os
Profile VirtualWindows Config Machine Os Profile Windows Config - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - Plan
Virtual
Machine Plan - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- Storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- Network
Interface []stringIds - A list of Network Interface IDs 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_disk
block 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_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- Identity
Virtual
Machine Identity Args - An
identity
block 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_Client
andWindows_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_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - Os
Profile VirtualLinux Config Machine Os Profile Linux Config Args - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - Os
Profile []VirtualSecrets Machine Os Profile Secret Args - One or more
os_profile_secrets
blocks as defined below. - Os
Profile VirtualWindows Config Machine Os Profile Windows Config Args - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - Plan
Virtual
Machine Plan Args - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- Storage
Image VirtualReference Machine Storage Image Reference Args - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- network
Interface List<String>Ids - A list of Network Interface IDs 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_disk
block 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_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- identity
Virtual
Machine Identity - An
identity
block 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_Client
andWindows_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_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - os
Profile VirtualLinux Config Machine Os Profile Linux Config - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - os
Profile List<VirtualSecrets Machine Os Profile Secret> - One or more
os_profile_secrets
blocks as defined below. - os
Profile VirtualWindows Config Machine Os Profile Windows Config - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - plan
Virtual
Machine Plan - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- network
Interface string[]Ids - A list of Network Interface IDs 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_disk
block 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_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- identity
Virtual
Machine Identity - An
identity
block 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_Client
andWindows_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_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - os
Profile VirtualLinux Config Machine Os Profile Linux Config - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - os
Profile VirtualSecrets Machine Os Profile Secret[] - One or more
os_profile_secrets
blocks as defined below. - os
Profile VirtualWindows Config Machine Os Profile Windows Config - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - plan
Virtual
Machine Plan - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - {[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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- network_
interface_ Sequence[str]ids - A list of Network Interface IDs 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_disk
block 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_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- identity
Virtual
Machine Identity Args - An
identity
block 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_Client
andWindows_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_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - os_
profile_ Virtuallinux_ config Machine Os Profile Linux Config Args - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - os_
profile_ Sequence[Virtualsecrets Machine Os Profile Secret Args] - One or more
os_profile_secrets
blocks as defined below. - os_
profile_ Virtualwindows_ config Machine Os Profile Windows Config Args - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - plan
Virtual
Machine Plan Args - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- storage_
image_ Virtualreference Machine Storage Image Reference Args - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- network
Interface List<String>Ids - A list of Network Interface IDs 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_disk
block 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_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- identity Property Map
- An
identity
block 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_Client
andWindows_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_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - os
Profile Property MapLinux Config - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - os
Profile List<Property Map>Secrets - One or more
os_profile_secrets
blocks as defined below. - os
Profile Property MapWindows Config - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - plan Property Map
- A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- storage
Image Property MapReference - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
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) -> VirtualMachine
func 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)
Resource lookup is not supported in YAML
- 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_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- Identity
Virtual
Machine Identity - An
identity
block 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_Client
andWindows_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 IDs which should be associated with the Virtual Machine.
- Os
Profile VirtualMachine Os Profile - An
os_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - Os
Profile VirtualLinux Config Machine Os Profile Linux Config - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - Os
Profile List<VirtualSecrets Machine Os Profile Secret> - One or more
os_profile_secrets
blocks as defined below. - Os
Profile VirtualWindows Config Machine Os Profile Windows Config - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - Plan
Virtual
Machine Plan - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- Storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - Storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_disk
block 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- Additional
Capabilities VirtualMachine Additional Capabilities Args - An
additional_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- Identity
Virtual
Machine Identity Args - An
identity
block 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_Client
andWindows_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 IDs which should be associated with the Virtual Machine.
- Os
Profile VirtualMachine Os Profile Args - An
os_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - Os
Profile VirtualLinux Config Machine Os Profile Linux Config Args - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - Os
Profile []VirtualSecrets Machine Os Profile Secret Args - One or more
os_profile_secrets
blocks as defined below. - Os
Profile VirtualWindows Config Machine Os Profile Windows Config Args - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - Plan
Virtual
Machine Plan Args - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- Storage
Image VirtualReference Machine Storage Image Reference Args - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - Storage
Os VirtualDisk Machine Storage Os Disk Args - A
storage_os_disk
block 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- additional
Capabilities VirtualMachine Additional Capabilities - An
additional_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- identity
Virtual
Machine Identity - An
identity
block 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_Client
andWindows_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 IDs which should be associated with the Virtual Machine.
- os
Profile VirtualMachine Os Profile - An
os_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - os
Profile VirtualLinux Config Machine Os Profile Linux Config - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - os
Profile List<VirtualSecrets Machine Os Profile Secret> - One or more
os_profile_secrets
blocks as defined below. - os
Profile VirtualWindows Config Machine Os Profile Windows Config - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - plan
Virtual
Machine Plan - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_disk
block 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- additional
Capabilities VirtualMachine Additional Capabilities - An
additional_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- identity
Virtual
Machine Identity - An
identity
block 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_Client
andWindows_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 IDs which should be associated with the Virtual Machine.
- os
Profile VirtualMachine Os Profile - An
os_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - os
Profile VirtualLinux Config Machine Os Profile Linux Config - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - os
Profile VirtualSecrets Machine Os Profile Secret[] - One or more
os_profile_secrets
blocks as defined below. - os
Profile VirtualWindows Config Machine Os Profile Windows Config - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - plan
Virtual
Machine Plan - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- storage
Image VirtualReference Machine Storage Image Reference - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - storage
Os VirtualDisk Machine Storage Os Disk - A
storage_os_disk
block 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- additional_
capabilities VirtualMachine Additional Capabilities Args - An
additional_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- identity
Virtual
Machine Identity Args - An
identity
block 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_Client
andWindows_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 IDs which should be associated with the Virtual Machine.
- os_
profile VirtualMachine Os Profile Args - An
os_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - os_
profile_ Virtuallinux_ config Machine Os Profile Linux Config Args - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - os_
profile_ Sequence[Virtualsecrets Machine Os Profile Secret Args] - One or more
os_profile_secrets
blocks as defined below. - os_
profile_ Virtualwindows_ config Machine Os Profile Windows Config Args - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - plan
Virtual
Machine Plan Args - A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- storage_
image_ Virtualreference Machine Storage Image Reference Args - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - storage_
os_ Virtualdisk Machine Storage Os Disk Args - A
storage_os_disk
block 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
- additional
Capabilities Property Map - An
additional_capabilities
block 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_diagnostics
block 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- 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
.Note: This setting works when instance is deleted via the provider only and don't forget to delete disks manually if you deleted VM manually. It can increase spending.
- identity Property Map
- An
identity
block 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_Client
andWindows_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 IDs which should be associated with the Virtual Machine.
- os
Profile Property Map - An
os_profile
block as defined below. Required whencreate_option
in thestorage_os_disk
block is set toFromImage
. - os
Profile Property MapLinux Config - (Required, when a Linux machine) An
os_profile_linux_config
block as defined below. - os
Profile List<Property Map>Secrets - One or more
os_profile_secrets
blocks as defined below. - os
Profile Property MapWindows Config - (Required, when a Windows machine) An
os_profile_windows_config
block as defined below. - plan Property Map
- A
plan
block 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_disk
blocks as defined below.Please Note: Data Disks can also be attached either using this block or the
azure.compute.DataDiskAttachment
resource - but not both.- storage
Image Property MapReference - A
storage_image_reference
block as defined below. Changing this forces a new resource to be created. - storage
Os Property MapDisk - A
storage_os_disk
block 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. Changing this forces a new resource to be created.
Please Note: Availability Zones are only supported in several regions at this time.
For more information on the different example configurations, please check out the Azure documentation
Supporting Types
VirtualMachineAdditionalCapabilities, VirtualMachineAdditionalCapabilitiesArgs
- Ultra
Ssd boolEnabled Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.
Note: Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series:
ESv3
,DSv3
,FSv3
,LSv2
,M
andMv2
. For more information see theAzure Ultra Disk Storage
product documentation.
- Ultra
Ssd boolEnabled Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.
Note: Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series:
ESv3
,DSv3
,FSv3
,LSv2
,M
andMv2
. For more information see theAzure Ultra Disk Storage
product documentation.
- ultra
Ssd BooleanEnabled Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.
Note: Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series:
ESv3
,DSv3
,FSv3
,LSv2
,M
andMv2
. For more information see theAzure Ultra Disk Storage
product documentation.
- ultra
Ssd booleanEnabled Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.
Note: Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series:
ESv3
,DSv3
,FSv3
,LSv2
,M
andMv2
. For more information see theAzure Ultra Disk Storage
product documentation.
- ultra_
ssd_ boolenabled Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.
Note: Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series:
ESv3
,DSv3
,FSv3
,LSv2
,M
andMv2
. For more information see theAzure Ultra Disk Storage
product documentation.
- ultra
Ssd BooleanEnabled Should Ultra SSD disk be enabled for this Virtual Machine? Changing this forces a new resource to be created.
Note: Azure Ultra Disk Storage is only available in a region that support availability zones and can only enabled on the following VM series:
ESv3
,DSv3
,FSv3
,LSv2
,M
andMv2
. For more information see theAzure Ultra Disk Storage
product documentation.
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.
NOTE: This needs to be the root of a Storage Account and not a Storage Container.
- 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.
NOTE: This needs to be the root of a Storage Account and not a Storage Container.
- 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.
NOTE: This needs to be the root of a Storage Account and not a Storage Container.
- 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.
NOTE: This needs to be the root of a Storage Account and not a Storage Container.
- 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.
NOTE: This needs to be the root of a Storage Account and not a Storage Container.
- 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.
NOTE: This needs to be the root of a Storage Account and not a Storage Container.
VirtualMachineIdentity, VirtualMachineIdentityArgs
- Type string
Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are
SystemAssigned
,UserAssigned
,SystemAssigned, UserAssigned
(to enable both).NOTE: Managed Service Identity previously required the installation of a VM Extension, but this information is now available via the Azure Instance Metadata Service.
NOTE: When
type
is set toSystemAssigned
, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See documentation for additional information.- Identity
Ids List<string> Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.
NOTE: This is required when
type
is set toUserAssigned
orSystemAssigned, UserAssigned
.- Principal
Id string - The Principal ID associated with this Managed Service Identity.
- Tenant
Id string
- Type string
Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are
SystemAssigned
,UserAssigned
,SystemAssigned, UserAssigned
(to enable both).NOTE: Managed Service Identity previously required the installation of a VM Extension, but this information is now available via the Azure Instance Metadata Service.
NOTE: When
type
is set toSystemAssigned
, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See documentation for additional information.- Identity
Ids []string Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.
NOTE: This is required when
type
is set toUserAssigned
orSystemAssigned, UserAssigned
.- Principal
Id string - The Principal ID associated with this Managed Service Identity.
- Tenant
Id string
- type String
Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are
SystemAssigned
,UserAssigned
,SystemAssigned, UserAssigned
(to enable both).NOTE: Managed Service Identity previously required the installation of a VM Extension, but this information is now available via the Azure Instance Metadata Service.
NOTE: When
type
is set toSystemAssigned
, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See documentation for additional information.- identity
Ids List<String> Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.
NOTE: This is required when
type
is set toUserAssigned
orSystemAssigned, UserAssigned
.- principal
Id String - The Principal ID associated with this Managed Service Identity.
- tenant
Id String
- type string
Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are
SystemAssigned
,UserAssigned
,SystemAssigned, UserAssigned
(to enable both).NOTE: Managed Service Identity previously required the installation of a VM Extension, but this information is now available via the Azure Instance Metadata Service.
NOTE: When
type
is set toSystemAssigned
, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See documentation for additional information.- identity
Ids string[] Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.
NOTE: This is required when
type
is set toUserAssigned
orSystemAssigned, UserAssigned
.- principal
Id string - The Principal ID associated with this Managed Service Identity.
- tenant
Id string
- type str
Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are
SystemAssigned
,UserAssigned
,SystemAssigned, UserAssigned
(to enable both).NOTE: Managed Service Identity previously required the installation of a VM Extension, but this information is now available via the Azure Instance Metadata Service.
NOTE: When
type
is set toSystemAssigned
, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See documentation for additional information.- identity_
ids Sequence[str] Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.
NOTE: This is required when
type
is set toUserAssigned
orSystemAssigned, UserAssigned
.- principal_
id str - The Principal ID associated with this Managed Service Identity.
- tenant_
id str
- type String
Specifies the type of Managed Service Identity that should be configured on this Virtual Machine. Possible values are
SystemAssigned
,UserAssigned
,SystemAssigned, UserAssigned
(to enable both).NOTE: Managed Service Identity previously required the installation of a VM Extension, but this information is now available via the Azure Instance Metadata Service.
NOTE: When
type
is set toSystemAssigned
, identity the Principal ID can be retrieved after the virtual machine has been created. More details are available below. See documentation for additional information.- identity
Ids List<String> Specifies a list of User Assigned Managed Identity IDs to be assigned to this Virtual Machine.
NOTE: This is required when
type
is set toUserAssigned
orSystemAssigned, UserAssigned
.- principal
Id String - The Principal ID associated with this Managed Service Identity.
- tenant
Id String
VirtualMachineOsProfile, VirtualMachineOsProfileArgs
- Admin
Username string - Specifies the name of the local administrator account.
- Computer
Name string - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- Admin
Password string (Optional for Windows, Optional for Linux) The password associated with the local administrator account.
NOTE: If using Linux, it may be preferable to use SSH Key authentication (available in the
os_profile_linux_config
block) instead of password authentication.- 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. Changing this forces a new resource to be created.
- Admin
Username string - Specifies the name of the local administrator account.
- Computer
Name string - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- Admin
Password string (Optional for Windows, Optional for Linux) The password associated with the local administrator account.
NOTE: If using Linux, it may be preferable to use SSH Key authentication (available in the
os_profile_linux_config
block) instead of password authentication.- 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. Changing this forces a new resource to be created.
- admin
Username String - Specifies the name of the local administrator account.
- computer
Name String - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- admin
Password String (Optional for Windows, Optional for Linux) The password associated with the local administrator account.
NOTE: If using Linux, it may be preferable to use SSH Key authentication (available in the
os_profile_linux_config
block) instead of password authentication.- 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. Changing this forces a new resource to be created.
- admin
Username string - Specifies the name of the local administrator account.
- computer
Name string - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- admin
Password string (Optional for Windows, Optional for Linux) The password associated with the local administrator account.
NOTE: If using Linux, it may be preferable to use SSH Key authentication (available in the
os_profile_linux_config
block) instead of password authentication.- 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. Changing this forces a new resource to be created.
- admin_
username str - Specifies the name of the local administrator account.
- computer_
name str - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- admin_
password str (Optional for Windows, Optional for Linux) The password associated with the local administrator account.
NOTE: If using Linux, it may be preferable to use SSH Key authentication (available in the
os_profile_linux_config
block) instead of password authentication.- 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. Changing this forces a new resource to be created.
- admin
Username String - Specifies the name of the local administrator account.
- computer
Name String - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
- admin
Password String (Optional for Windows, Optional for Linux) The password associated with the local administrator account.
NOTE: If using Linux, it may be preferable to use SSH Key authentication (available in the
os_profile_linux_config
block) instead of password authentication.- 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. Changing this forces a new resource to be created.
VirtualMachineOsProfileLinuxConfig, VirtualMachineOsProfileLinuxConfigArgs
- Disable
Password boolAuthentication - Specifies whether password authentication should be disabled. If set to
false
, anadmin_password
must be specified. - Ssh
Keys List<VirtualMachine Os Profile Linux Config Ssh Key> - One or more
ssh_keys
blocks as defined below. This field is required ifdisable_password_authentication
is set totrue
.
- Disable
Password boolAuthentication - Specifies whether password authentication should be disabled. If set to
false
, anadmin_password
must be specified. - Ssh
Keys []VirtualMachine Os Profile Linux Config Ssh Key - One or more
ssh_keys
blocks as defined below. This field is required ifdisable_password_authentication
is set totrue
.
- disable
Password BooleanAuthentication - Specifies whether password authentication should be disabled. If set to
false
, anadmin_password
must be specified. - ssh
Keys List<VirtualMachine Os Profile Linux Config Ssh Key> - One or more
ssh_keys
blocks as defined below. This field is required ifdisable_password_authentication
is set totrue
.
- disable
Password booleanAuthentication - Specifies whether password authentication should be disabled. If set to
false
, anadmin_password
must be specified. - ssh
Keys VirtualMachine Os Profile Linux Config Ssh Key[] - One or more
ssh_keys
blocks as defined below. This field is required ifdisable_password_authentication
is set totrue
.
- disable_
password_ boolauthentication - Specifies whether password authentication should be disabled. If set to
false
, anadmin_password
must be specified. - ssh_
keys Sequence[VirtualMachine Os Profile Linux Config Ssh Key] - One or more
ssh_keys
blocks as defined below. This field is required ifdisable_password_authentication
is set totrue
.
- disable
Password BooleanAuthentication - Specifies whether password authentication should be disabled. If set to
false
, anadmin_password
must be specified. - ssh
Keys List<Property Map> - One or more
ssh_keys
blocks as defined below. This field is required ifdisable_password_authentication
is set totrue
.
VirtualMachineOsProfileLinuxConfigSshKey, VirtualMachineOsProfileLinuxConfigSshKeyArgs
- Key
Data string The Public SSH Key which should be written to the
path
defined above.Note: Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
- Path string
The path of the destination file on the virtual machine
NOTE: Due to a limitation in the Azure VM Agent the only allowed
path
is/home/{username}/.ssh/authorized_keys
.
- Key
Data string The Public SSH Key which should be written to the
path
defined above.Note: Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
- Path string
The path of the destination file on the virtual machine
NOTE: Due to a limitation in the Azure VM Agent the only allowed
path
is/home/{username}/.ssh/authorized_keys
.
- key
Data String The Public SSH Key which should be written to the
path
defined above.Note: Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
- path String
The path of the destination file on the virtual machine
NOTE: Due to a limitation in the Azure VM Agent the only allowed
path
is/home/{username}/.ssh/authorized_keys
.
- key
Data string The Public SSH Key which should be written to the
path
defined above.Note: Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
- path string
The path of the destination file on the virtual machine
NOTE: Due to a limitation in the Azure VM Agent the only allowed
path
is/home/{username}/.ssh/authorized_keys
.
- key_
data str The Public SSH Key which should be written to the
path
defined above.Note: Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
- path str
The path of the destination file on the virtual machine
NOTE: Due to a limitation in the Azure VM Agent the only allowed
path
is/home/{username}/.ssh/authorized_keys
.
- key
Data String The Public SSH Key which should be written to the
path
defined above.Note: Azure only supports RSA SSH2 key signatures of at least 2048 bits in length
- path String
The path of the destination file on the virtual machine
NOTE: Due to a limitation in the Azure VM Agent the only allowed
path
is/home/{username}/.ssh/authorized_keys
.
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_certificates
blocks as defined below.
- Source
Vault stringId - Specifies the ID of the Key Vault to use.
- Vault
Certificates []VirtualMachine Os Profile Secret Vault Certificate - One or more
vault_certificates
blocks as defined below.
- 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_certificates
blocks as defined below.
- source
Vault stringId - Specifies the ID of the Key Vault to use.
- vault
Certificates VirtualMachine Os Profile Secret Vault Certificate[] - One or more
vault_certificates
blocks as defined below.
- 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_certificates
blocks as defined below.
- source
Vault StringId - Specifies the ID of the Key Vault to use.
- vault
Certificates List<Property Map> - One or more
vault_certificates
blocks as defined below.
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:
{ "data":"<Base64-encoded-certificate>", "dataType":"pfx", "password":"<pfx-file-password>" }
NOTE: If your certificate is stored in Azure Key Vault - this can be sourced from the
secret_id
property on theazure.keyvault.Certificate
resource.- Certificate
Store string - (Required, on windows machines) 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:
{ "data":"<Base64-encoded-certificate>", "dataType":"pfx", "password":"<pfx-file-password>" }
NOTE: If your certificate is stored in Azure Key Vault - this can be sourced from the
secret_id
property on theazure.keyvault.Certificate
resource.- Certificate
Store string - (Required, on windows machines) 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:
{ "data":"<Base64-encoded-certificate>", "dataType":"pfx", "password":"<pfx-file-password>" }
NOTE: If your certificate is stored in Azure Key Vault - this can be sourced from the
secret_id
property on theazure.keyvault.Certificate
resource.- certificate
Store String - (Required, on windows machines) 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:
{ "data":"<Base64-encoded-certificate>", "dataType":"pfx", "password":"<pfx-file-password>" }
NOTE: If your certificate is stored in Azure Key Vault - this can be sourced from the
secret_id
property on theazure.keyvault.Certificate
resource.- certificate
Store string - (Required, on windows machines) 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:
{ "data":"<Base64-encoded-certificate>", "dataType":"pfx", "password":"<pfx-file-password>" }
NOTE: If your certificate is stored in Azure Key Vault - this can be sourced from the
secret_id
property on theazure.keyvault.Certificate
resource.- certificate_
store str - (Required, on windows machines) 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:
{ "data":"<Base64-encoded-certificate>", "dataType":"pfx", "password":"<pfx-file-password>" }
NOTE: If your certificate is stored in Azure Key Vault - this can be sourced from the
secret_id
property on theazure.keyvault.Certificate
resource.- certificate
Store String - (Required, on windows machines) 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_config
block 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
.NOTE: This is different from the Default value used for this field within Azure.
- Timezone string
- Specifies the time zone of the virtual machine, the possible values are defined here. Changing this forces a new resource to be created.
- Winrms
List<Virtual
Machine Os Profile Windows Config Winrm> - One or more
winrm
blocks as defined below.
- Additional
Unattend []VirtualConfigs Machine Os Profile Windows Config Additional Unattend Config - An
additional_unattend_config
block 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
.NOTE: This is different from the Default value used for this field within Azure.
- Timezone string
- Specifies the time zone of the virtual machine, the possible values are defined here. Changing this forces a new resource to be created.
- Winrms
[]Virtual
Machine Os Profile Windows Config Winrm - One or more
winrm
blocks as defined below.
- additional
Unattend List<VirtualConfigs Machine Os Profile Windows Config Additional Unattend Config> - An
additional_unattend_config
block 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
.NOTE: This is different from the Default value used for this field within Azure.
- timezone String
- Specifies the time zone of the virtual machine, the possible values are defined here. Changing this forces a new resource to be created.
- winrms
List<Virtual
Machine Os Profile Windows Config Winrm> - One or more
winrm
blocks as defined below.
- additional
Unattend VirtualConfigs Machine Os Profile Windows Config Additional Unattend Config[] - An
additional_unattend_config
block 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
.NOTE: This is different from the Default value used for this field within Azure.
- timezone string
- Specifies the time zone of the virtual machine, the possible values are defined here. Changing this forces a new resource to be created.
- winrms
Virtual
Machine Os Profile Windows Config Winrm[] - One or more
winrm
blocks as defined below.
- additional_
unattend_ Sequence[Virtualconfigs Machine Os Profile Windows Config Additional Unattend Config] - An
additional_unattend_config
block 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
.NOTE: This is different from the Default value used for this field within Azure.
- timezone str
- Specifies the time zone of the virtual machine, the possible values are defined here. Changing this forces a new resource to be created.
- winrms
Sequence[Virtual
Machine Os Profile Windows Config Winrm] - One or more
winrm
blocks as defined below.
- additional
Unattend List<Property Map>Configs - An
additional_unattend_config
block 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
.NOTE: This is different from the Default value used for this field within Azure.
- timezone String
- Specifies the time zone of the virtual machine, the possible values are defined here. Changing this forces a new resource to be created.
- winrms List<Property Map>
- One or more
winrm
blocks 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:
FirstLogonCommands
andAutoLogon
.
- 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:
FirstLogonCommands
andAutoLogon
.
- 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:
FirstLogonCommands
andAutoLogon
.
- 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:
FirstLogonCommands
andAutoLogon
.
- 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:
FirstLogonCommands
andAutoLogon
.
- 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:
FirstLogonCommands
andAutoLogon
.
VirtualMachineOsProfileWindowsConfigWinrm, VirtualMachineOsProfileWindowsConfigWinrmArgs
- Protocol string
- Specifies the protocol of listener. Possible values are
HTTP
orHTTPS
. - 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_certificates
block within theos_profile_secrets
block.NOTE: This can be sourced from the
secret_id
field on theazure.keyvault.Certificate
resource.
- Protocol string
- Specifies the protocol of listener. Possible values are
HTTP
orHTTPS
. - 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_certificates
block within theos_profile_secrets
block.NOTE: This can be sourced from the
secret_id
field on theazure.keyvault.Certificate
resource.
- protocol String
- Specifies the protocol of listener. Possible values are
HTTP
orHTTPS
. - 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_certificates
block within theos_profile_secrets
block.NOTE: This can be sourced from the
secret_id
field on theazure.keyvault.Certificate
resource.
- protocol string
- Specifies the protocol of listener. Possible values are
HTTP
orHTTPS
. - 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_certificates
block within theos_profile_secrets
block.NOTE: This can be sourced from the
secret_id
field on theazure.keyvault.Certificate
resource.
- protocol str
- Specifies the protocol of listener. Possible values are
HTTP
orHTTPS
. - 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_certificates
block within theos_profile_secrets
block.NOTE: This can be sourced from the
secret_id
field on theazure.keyvault.Certificate
resource.
- protocol String
- Specifies the protocol of listener. Possible values are
HTTP
orHTTPS
. - 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_certificates
block within theos_profile_secrets
block.NOTE: This can be sourced from the
secret_id
field on theazure.keyvault.Certificate
resource.
VirtualMachinePlan, VirtualMachinePlanArgs
VirtualMachineStorageDataDisk, VirtualMachineStorageDataDiskArgs
- Create
Option string Specifies how the data disk should be created. Possible values are
Attach
,FromImage
andEmpty
.NOTE: If using an image that does not have data to be written to the Data Disk, use
Empty
as the create option in order to create the desired disk without any data.- 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
,ReadOnly
andReadWrite
. - 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_option
must be set toAttach
.The following properties apply when using Unmanaged Disks:
- Managed
Disk stringType Specifies the type of managed disk to create. Possible values are either
Standard_LRS
,StandardSSD_LRS
,Premium_LRS
orUltraSSD_LRS
.Note:
managed_disk_type
of typeUltraSSD_LRS
is currently in preview and are not available to subscriptions that have not requested onboarding toAzure Ultra Disk Storage
preview.Azure Ultra Disk Storage
is only available inEast US 2
,North Europe
, andSoutheast Asia
regions. For more information see theAzure Ultra Disk Storage
product documentation, product blog and FAQ. You must also setadditional_capabilities.ultra_ssd_enabled
totrue
.- Vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged Data Disk.
- Write
Accelerator boolEnabled Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- Create
Option string Specifies how the data disk should be created. Possible values are
Attach
,FromImage
andEmpty
.NOTE: If using an image that does not have data to be written to the Data Disk, use
Empty
as the create option in order to create the desired disk without any data.- 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
,ReadOnly
andReadWrite
. - 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_option
must be set toAttach
.The following properties apply when using Unmanaged Disks:
- Managed
Disk stringType Specifies the type of managed disk to create. Possible values are either
Standard_LRS
,StandardSSD_LRS
,Premium_LRS
orUltraSSD_LRS
.Note:
managed_disk_type
of typeUltraSSD_LRS
is currently in preview and are not available to subscriptions that have not requested onboarding toAzure Ultra Disk Storage
preview.Azure Ultra Disk Storage
is only available inEast US 2
,North Europe
, andSoutheast Asia
regions. For more information see theAzure Ultra Disk Storage
product documentation, product blog and FAQ. You must also setadditional_capabilities.ultra_ssd_enabled
totrue
.- Vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged Data Disk.
- Write
Accelerator boolEnabled Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- create
Option String Specifies how the data disk should be created. Possible values are
Attach
,FromImage
andEmpty
.NOTE: If using an image that does not have data to be written to the Data Disk, use
Empty
as the create option in order to create the desired disk without any data.- 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
,ReadOnly
andReadWrite
. - 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_option
must be set toAttach
.The following properties apply when using Unmanaged Disks:
- managed
Disk StringType Specifies the type of managed disk to create. Possible values are either
Standard_LRS
,StandardSSD_LRS
,Premium_LRS
orUltraSSD_LRS
.Note:
managed_disk_type
of typeUltraSSD_LRS
is currently in preview and are not available to subscriptions that have not requested onboarding toAzure Ultra Disk Storage
preview.Azure Ultra Disk Storage
is only available inEast US 2
,North Europe
, andSoutheast Asia
regions. For more information see theAzure Ultra Disk Storage
product documentation, product blog and FAQ. You must also setadditional_capabilities.ultra_ssd_enabled
totrue
.- vhd
Uri String - Specifies the URI of the VHD file backing this Unmanaged Data Disk.
- write
Accelerator BooleanEnabled Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- create
Option string Specifies how the data disk should be created. Possible values are
Attach
,FromImage
andEmpty
.NOTE: If using an image that does not have data to be written to the Data Disk, use
Empty
as the create option in order to create the desired disk without any data.- 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
,ReadOnly
andReadWrite
. - 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_option
must be set toAttach
.The following properties apply when using Unmanaged Disks:
- managed
Disk stringType Specifies the type of managed disk to create. Possible values are either
Standard_LRS
,StandardSSD_LRS
,Premium_LRS
orUltraSSD_LRS
.Note:
managed_disk_type
of typeUltraSSD_LRS
is currently in preview and are not available to subscriptions that have not requested onboarding toAzure Ultra Disk Storage
preview.Azure Ultra Disk Storage
is only available inEast US 2
,North Europe
, andSoutheast Asia
regions. For more information see theAzure Ultra Disk Storage
product documentation, product blog and FAQ. You must also setadditional_capabilities.ultra_ssd_enabled
totrue
.- vhd
Uri string - Specifies the URI of the VHD file backing this Unmanaged Data Disk.
- write
Accelerator booleanEnabled Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- create_
option str Specifies how the data disk should be created. Possible values are
Attach
,FromImage
andEmpty
.NOTE: If using an image that does not have data to be written to the Data Disk, use
Empty
as the create option in order to create the desired disk without any data.- 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
,ReadOnly
andReadWrite
. - 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_option
must be set toAttach
.The following properties apply when using Unmanaged Disks:
- managed_
disk_ strtype Specifies the type of managed disk to create. Possible values are either
Standard_LRS
,StandardSSD_LRS
,Premium_LRS
orUltraSSD_LRS
.Note:
managed_disk_type
of typeUltraSSD_LRS
is currently in preview and are not available to subscriptions that have not requested onboarding toAzure Ultra Disk Storage
preview.Azure Ultra Disk Storage
is only available inEast US 2
,North Europe
, andSoutheast Asia
regions. For more information see theAzure Ultra Disk Storage
product documentation, product blog and FAQ. You must also setadditional_capabilities.ultra_ssd_enabled
totrue
.- vhd_
uri str - Specifies the URI of the VHD file backing this Unmanaged Data Disk.
- write_
accelerator_ boolenabled Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- create
Option String Specifies how the data disk should be created. Possible values are
Attach
,FromImage
andEmpty
.NOTE: If using an image that does not have data to be written to the Data Disk, use
Empty
as the create option in order to create the desired disk without any data.- 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
,ReadOnly
andReadWrite
. - 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_option
must be set toAttach
.The following properties apply when using Unmanaged Disks:
- managed
Disk StringType Specifies the type of managed disk to create. Possible values are either
Standard_LRS
,StandardSSD_LRS
,Premium_LRS
orUltraSSD_LRS
.Note:
managed_disk_type
of typeUltraSSD_LRS
is currently in preview and are not available to subscriptions that have not requested onboarding toAzure Ultra Disk Storage
preview.Azure Ultra Disk Storage
is only available inEast US 2
,North Europe
, andSoutheast Asia
regions. For more information see theAzure Ultra Disk Storage
product documentation, product blog and FAQ. You must also setadditional_capabilities.ultra_ssd_enabled
totrue
.- vhd
Uri String - Specifies the URI of the VHD file backing this Unmanaged Data Disk.
- write
Accelerator BooleanEnabled Specifies if Write Accelerator is enabled on the disk. This can only be enabled on
Premium_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
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.
To provision a Custom Image, the following fields are applicable:
- 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.
To provision a Custom Image, the following fields are applicable:
- 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.
To provision a Custom Image, the following fields are applicable:
- 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.
To provision a Custom Image, the following fields are applicable:
- 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.
To provision a Custom Image, the following fields are applicable:
- 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.
To provision a Custom Image, the following fields are applicable:
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
,ReadOnly
andReadWrite
. - 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_type
field 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_option
must be set toAttach
. Changing this forces a new resource to be created. - Managed
Disk stringType Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS
,StandardSSD_LRS
orPremium_LRS
.The following properties apply when using Unmanaged Disks:
- Os
Type string - Specifies the Operating System on the OS Disk. Possible values are
Linux
andWindows
. - 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_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- 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
,ReadOnly
andReadWrite
. - 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_type
field 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_option
must be set toAttach
. Changing this forces a new resource to be created. - Managed
Disk stringType Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS
,StandardSSD_LRS
orPremium_LRS
.The following properties apply when using Unmanaged Disks:
- Os
Type string - Specifies the Operating System on the OS Disk. Possible values are
Linux
andWindows
. - 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_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- 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
,ReadOnly
andReadWrite
. - 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_type
field 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_option
must be set toAttach
. Changing this forces a new resource to be created. - managed
Disk StringType Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS
,StandardSSD_LRS
orPremium_LRS
.The following properties apply when using Unmanaged Disks:
- os
Type String - Specifies the Operating System on the OS Disk. Possible values are
Linux
andWindows
. - 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_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- 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
,ReadOnly
andReadWrite
. - 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_type
field 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_option
must be set toAttach
. Changing this forces a new resource to be created. - managed
Disk stringType Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS
,StandardSSD_LRS
orPremium_LRS
.The following properties apply when using Unmanaged Disks:
- os
Type string - Specifies the Operating System on the OS Disk. Possible values are
Linux
andWindows
. - 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_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- 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
,ReadOnly
andReadWrite
. - 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_type
field 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_option
must be set toAttach
. Changing this forces a new resource to be created. - managed_
disk_ strtype Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS
,StandardSSD_LRS
orPremium_LRS
.The following properties apply when using Unmanaged Disks:
- os_
type str - Specifies the Operating System on the OS Disk. Possible values are
Linux
andWindows
. - 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_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
- 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
,ReadOnly
andReadWrite
. - 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_type
field 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_option
must be set toAttach
. Changing this forces a new resource to be created. - managed
Disk StringType Specifies the type of Managed Disk which should be created. Possible values are
Standard_LRS
,StandardSSD_LRS
orPremium_LRS
.The following properties apply when using Unmanaged Disks:
- os
Type String - Specifies the Operating System on the OS Disk. Possible values are
Linux
andWindows
. - 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_LRS
managed disks with no caching and M-Series VMs. Defaults tofalse
.The following properties apply when using Managed Disks:
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
azurerm
Terraform Provider.