Module compute
This page documents the language specification for the azure package. If you're looking for help working with the inputs, outputs, or functions of azure resources in a Pulumi program, please see the resource documentation for examples and API reference.
Resources
- AvailabilitySet
- BastionHost
- DataDiskAttachment
- DedicatedHost
- DedicatedHostGroup
- DiskEncryptionSet
- Extension
- Image
- LinuxVirtualMachine
- LinuxVirtualMachineScaleSet
- ManagedDisk
- OrchestratedVirtualMachineScaleSet
- ScaleSet
- SharedImage
- SharedImageGallery
- SharedImageVersion
- Snapshot
- VirtualMachine
- VirtualMachineScaleSetExtension
- WindowsVirtualMachine
- WindowsVirtualMachineScaleSet
Functions
- getAvailabilitySet
- getDedicatedHost
- getDedicatedHostGroup
- getDiskEncryptionSet
- getImage
- getManagedDisk
- getPlatformImage
- getSharedImage
- getSharedImageGallery
- getSharedImageVersion
- getSharedImageVersions
- getSnapshot
- getVirtualMachine
- getVirtualMachineScaleSet
Others
- AvailabilitySetArgs
- AvailabilitySetState
- BastionHostArgs
- BastionHostState
- DataDiskAttachmentArgs
- DataDiskAttachmentState
- DedicatedHostArgs
- DedicatedHostGroupArgs
- DedicatedHostGroupState
- DedicatedHostState
- DiskEncryptionSetArgs
- DiskEncryptionSetState
- ExtensionArgs
- ExtensionState
- GetAvailabilitySetArgs
- GetAvailabilitySetResult
- GetDedicatedHostArgs
- GetDedicatedHostGroupArgs
- GetDedicatedHostGroupResult
- GetDedicatedHostResult
- GetDiskEncryptionSetArgs
- GetDiskEncryptionSetResult
- GetImageArgs
- GetImageResult
- GetManagedDiskArgs
- GetManagedDiskResult
- GetPlatformImageArgs
- GetPlatformImageResult
- GetSharedImageArgs
- GetSharedImageGalleryArgs
- GetSharedImageGalleryResult
- GetSharedImageResult
- GetSharedImageVersionArgs
- GetSharedImageVersionResult
- GetSharedImageVersionsArgs
- GetSharedImageVersionsResult
- GetSnapshotArgs
- GetSnapshotResult
- GetVirtualMachineArgs
- GetVirtualMachineResult
- GetVirtualMachineScaleSetArgs
- GetVirtualMachineScaleSetResult
- ImageArgs
- ImageState
- LinuxVirtualMachineArgs
- LinuxVirtualMachineScaleSetArgs
- LinuxVirtualMachineScaleSetState
- LinuxVirtualMachineState
- ManagedDiskArgs
- ManagedDiskState
- OrchestratedVirtualMachineScaleSetArgs
- OrchestratedVirtualMachineScaleSetState
- ScaleSetArgs
- ScaleSetState
- SharedImageArgs
- SharedImageGalleryArgs
- SharedImageGalleryState
- SharedImageState
- SharedImageVersionArgs
- SharedImageVersionState
- SnapshotArgs
- SnapshotState
- VirtualMachineArgs
- VirtualMachineScaleSetExtensionArgs
- VirtualMachineScaleSetExtensionState
- VirtualMachineState
- WindowsVirtualMachineArgs
- WindowsVirtualMachineScaleSetArgs
- WindowsVirtualMachineScaleSetState
- WindowsVirtualMachineState
Resources
Resource AvailabilitySet
class AvailabilitySet extends CustomResourceManages an Availability Set for Virtual Machines.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleAvailabilitySet = new azure.compute.AvailabilitySet("exampleAvailabilitySet", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
tags: {
environment: "Production",
},
});constructor
new AvailabilitySet(name: string, args: AvailabilitySetArgs, opts?: pulumi.CustomResourceOptions)Create a AvailabilitySet resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AvailabilitySetState, opts?: pulumi.CustomResourceOptions): AvailabilitySetGet an existing AvailabilitySet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is AvailabilitySetReturns true if the given object is an instance of AvailabilitySet. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property location
public location: pulumi.Output<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property managed
public managed: pulumi.Output<boolean | undefined>;Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true.
property name
public name: pulumi.Output<string>;Specifies the name of the availability set. Changing this forces a new resource to be created.
property platformFaultDomainCount
public platformFaultDomainCount: pulumi.Output<number | undefined>;Specifies the number of fault domains that are used. Defaults to 3.
property platformUpdateDomainCount
public platformUpdateDomainCount: pulumi.Output<number | undefined>;Specifies the number of update domains that are used. Defaults to 5.
property proximityPlacementGroupId
public proximityPlacementGroupId: pulumi.Output<string | undefined>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource BastionHost
class BastionHost extends CustomResourceManages a Bastion Host.
Note: Bastion Hosts are a preview feature in Azure, and therefore are only supported in a select number of regions. Read more.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
addressSpaces: ["192.168.1.0/24"],
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
});
const exampleSubnet = new azure.network.Subnet("exampleSubnet", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefix: "192.168.1.224/27",
});
const examplePublicIp = new azure.network.PublicIp("examplePublicIp", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
allocationMethod: "Static",
sku: "Standard",
});
const exampleBastionHost = new azure.compute.BastionHost("exampleBastionHost", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
ip_configuration: {
name: "configuration",
subnetId: exampleSubnet.id,
publicIpAddressId: examplePublicIp.id,
},
});constructor
new BastionHost(name: string, args: BastionHostArgs, opts?: pulumi.CustomResourceOptions)Create a BastionHost resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BastionHostState, opts?: pulumi.CustomResourceOptions): BastionHostGet an existing BastionHost resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is BastionHostReturns true if the given object is an instance of BastionHost. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property dnsName
public dnsName: pulumi.Output<string>;The FQDN for the Bastion Host.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property ipConfiguration
public ipConfiguration: pulumi.Output<BastionHostIpConfiguration | undefined>;A ipConfiguration block as defined below.
property location
public location: pulumi.Output<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the Bastion Host. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the resource group in which to create the Bastion Host.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource DataDiskAttachment
class DataDiskAttachment extends CustomResourceManages attaching a Disk to a Virtual Machine.
NOTE: Data Disks can be attached either directly on the
azure.compute.VirtualMachineresource, or using theazure.compute.DataDiskAttachmentresource - but the two cannot be used together. If both are used against the same Virtual Machine, spurious changes will occur.Please Note: only Managed Disks are supported via this separate resource, Unmanaged Disks can be attached using the
storageDataDiskblock in theazure.compute.VirtualMachineresource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const config = new pulumi.Config();
const prefix = config.get("prefix") || "example";
const vmName = `${prefix}-vm`;
const mainResourceGroup = new azure.core.ResourceGroup("mainResourceGroup", {location: "West Europe"});
const mainVirtualNetwork = new azure.network.VirtualNetwork("mainVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
});
const internal = new azure.network.Subnet("internal", {
resourceGroupName: mainResourceGroup.name,
virtualNetworkName: mainVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const mainNetworkInterface = new azure.network.NetworkInterface("mainNetworkInterface", {
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
ip_configuration: [{
name: "internal",
subnetId: internal.id,
privateIpAddressAllocation: "Dynamic",
}],
});
const exampleVirtualMachine = new azure.compute.VirtualMachine("exampleVirtualMachine", {
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
networkInterfaceIds: [mainNetworkInterface.id],
vmSize: "Standard_F2",
storage_image_reference: {
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
version: "latest",
},
storage_os_disk: {
name: "myosdisk1",
caching: "ReadWrite",
createOption: "FromImage",
managedDiskType: "Standard_LRS",
},
os_profile: {
computerName: vmName,
adminUsername: "testadmin",
adminPassword: "Password1234!",
},
os_profile_linux_config: {
disablePasswordAuthentication: false,
},
});
const exampleManagedDisk = new azure.compute.ManagedDisk("exampleManagedDisk", {
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
storageAccountType: "Standard_LRS",
createOption: "Empty",
diskSizeGb: 10,
});
const exampleDataDiskAttachment = new azure.compute.DataDiskAttachment("exampleDataDiskAttachment", {
managedDiskId: exampleManagedDisk.id,
virtualMachineId: exampleVirtualMachine.id,
lun: "10",
caching: "ReadWrite",
});constructor
new DataDiskAttachment(name: string, args: DataDiskAttachmentArgs, opts?: pulumi.CustomResourceOptions)Create a DataDiskAttachment resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DataDiskAttachmentState, opts?: pulumi.CustomResourceOptions): DataDiskAttachmentGet an existing DataDiskAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DataDiskAttachmentReturns true if the given object is an instance of DataDiskAttachment. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property caching
public caching: pulumi.Output<string>;Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.
property createOption
public createOption: pulumi.Output<string | undefined>;The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property lun
public lun: pulumi.Output<number>;The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
property managedDiskId
public managedDiskId: pulumi.Output<string>;The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property virtualMachineId
public virtualMachineId: pulumi.Output<string>;The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
property writeAcceleratorEnabled
public writeAcceleratorEnabled: pulumi.Output<boolean | undefined>;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 to false.
Resource DedicatedHost
class DedicatedHost extends CustomResourceManage a Dedicated Host within a Dedicated Host Group.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleDedicatedHostGroup = new azure.compute.DedicatedHostGroup("exampleDedicatedHostGroup", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
platformFaultDomainCount: 2,
});
const exampleDedicatedHost = new azure.compute.DedicatedHost("exampleDedicatedHost", {
location: exampleResourceGroup.location,
dedicatedHostGroupId: exampleDedicatedHostGroup.id,
skuName: "DSv3-Type1",
platformFaultDomain: 1,
});constructor
new DedicatedHost(name: string, args: DedicatedHostArgs, opts?: pulumi.CustomResourceOptions)Create a DedicatedHost resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DedicatedHostState, opts?: pulumi.CustomResourceOptions): DedicatedHostGet an existing DedicatedHost resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DedicatedHostReturns true if the given object is an instance of DedicatedHost. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property autoReplaceOnFailure
public autoReplaceOnFailure: pulumi.Output<boolean | undefined>;Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true.
property dedicatedHostGroupId
public dedicatedHostGroupId: pulumi.Output<string>;Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property licenseType
public licenseType: pulumi.Output<string | undefined>;Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. Defaults to None.
property location
public location: pulumi.Output<string>;Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of this Dedicated Host. Changing this forces a new resource to be created.
property platformFaultDomain
public platformFaultDomain: pulumi.Output<number>;Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
property skuName
public skuName: pulumi.Output<string>;Specify the sku name of the Dedicated Host. Possible values are DSv3-Type1, DSv3-Type2, ESv3-Type1, ESv3-Type2,FSv2-Type2. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource DedicatedHostGroup
class DedicatedHostGroup extends CustomResourceManage a Dedicated Host Group.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleDedicatedHostGroup = new azure.compute.DedicatedHostGroup("exampleDedicatedHostGroup", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
platformFaultDomainCount: 1,
});constructor
new DedicatedHostGroup(name: string, args: DedicatedHostGroupArgs, opts?: pulumi.CustomResourceOptions)Create a DedicatedHostGroup resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DedicatedHostGroupState, opts?: pulumi.CustomResourceOptions): DedicatedHostGroupGet an existing DedicatedHostGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DedicatedHostGroupReturns true if the given object is an instance of DedicatedHostGroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property location
public location: pulumi.Output<string>;The Azure location where the Dedicated Host Group exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the Dedicated Host Group. Changing this forces a new resource to be created.
property platformFaultDomainCount
public platformFaultDomainCount: pulumi.Output<number>;The number of fault domains that the Dedicated Host Group spans. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;Specifies the name of the resource group the Dedicated Host Group is located in. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property zones
public zones: pulumi.Output<string | undefined>;A list of Availability Zones in which the Dedicated Host Group should be located. Changing this forces a new resource to be created.
Resource DiskEncryptionSet
class DiskEncryptionSet extends CustomResourceManages a Disk Encryption Set.
NOTE: At this time the Key Vault used to store the Active Key for this Disk Encryption Set must have both Soft Delete & Purge Protection enabled - which are not yet supported by this provider.
constructor
new DiskEncryptionSet(name: string, args: DiskEncryptionSetArgs, opts?: pulumi.CustomResourceOptions)Create a DiskEncryptionSet resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DiskEncryptionSetState, opts?: pulumi.CustomResourceOptions): DiskEncryptionSetGet an existing DiskEncryptionSet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DiskEncryptionSetReturns true if the given object is an instance of DiskEncryptionSet. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identity
public identity: pulumi.Output<DiskEncryptionSetIdentity>;A identity block defined below.
property keyVaultKeyId
public keyVaultKeyId: pulumi.Output<string>;Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
property location
public location: pulumi.Output<string>;Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;The name of the Disk Encryption Set. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;Specifies the name of the Resource Group where the Disk Encryption Set should exist. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the Disk Encryption Set.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Extension
class Extension extends CustomResourceManages a Virtual Machine Extension to provide post deployment configuration and run automated tasks.
NOTE: Custom Script Extensions for Linux & Windows require that the
commandToExecutereturns a0exit code to be classified as successfully deployed. You can achieve this by appendingexit 0to the end of yourcommandToExecute.NOTE: Custom Script Extensions require that the Azure Virtual Machine Guest Agent is running on the Virtual Machine.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West US"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
});
const exampleSubnet = new azure.network.Subnet("exampleSubnet", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const exampleNetworkInterface = new azure.network.NetworkInterface("exampleNetworkInterface", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
ip_configuration: [{
name: "testconfiguration1",
subnetId: exampleSubnet.id,
privateIpAddressAllocation: "Dynamic",
}],
});
const exampleAccount = new azure.storage.Account("exampleAccount", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
accountTier: "Standard",
accountReplicationType: "LRS",
tags: {
environment: "staging",
},
});
const exampleContainer = new azure.storage.Container("exampleContainer", {
storageAccountName: exampleAccount.name,
containerAccessType: "private",
});
const exampleVirtualMachine = new azure.compute.VirtualMachine("exampleVirtualMachine", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
networkInterfaceIds: [exampleNetworkInterface.id],
vmSize: "Standard_F2",
storage_image_reference: {
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
version: "latest",
},
storage_os_disk: {
name: "myosdisk1",
vhdUri: pulumi.interpolate`${exampleAccount.primaryBlobEndpoint}${exampleContainer.name}/myosdisk1.vhd`,
caching: "ReadWrite",
createOption: "FromImage",
},
os_profile: {
computerName: "hostname",
adminUsername: "testadmin",
adminPassword: "Password1234!",
},
os_profile_linux_config: {
disablePasswordAuthentication: false,
},
tags: {
environment: "staging",
},
});
const exampleExtension = new azure.compute.Extension("exampleExtension", {
virtualMachineId: exampleVirtualMachine.id,
publisher: "Microsoft.Azure.Extensions",
type: "CustomScript",
typeHandlerVersion: "2.0",
settings: ` {
"commandToExecute": "hostname && uptime"
}
`,
tags: {
environment: "Production",
},
});constructor
new Extension(name: string, args: ExtensionArgs, opts?: pulumi.CustomResourceOptions)Create a Extension resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ExtensionState, opts?: pulumi.CustomResourceOptions): ExtensionGet an existing Extension resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ExtensionReturns true if the given object is an instance of Extension. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property autoUpgradeMinorVersion
public autoUpgradeMinorVersion: pulumi.Output<boolean | undefined>;Specifies if the platform deploys
the latest minor version update to the typeHandlerVersion specified.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the virtual machine extension peering. Changing this forces a new resource to be created.
property protectedSettings
public protectedSettings: pulumi.Output<string | undefined>;The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.
property publisher
public publisher: pulumi.Output<string>;The publisher of the extension, available publishers can be found by using the Azure CLI.
property settings
public settings: pulumi.Output<string | undefined>;The settings passed to the extension, these are specified as a JSON object in a string.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property type
public type: pulumi.Output<string>;The type of extension, available types for a publisher can be found using the Azure CLI.
property typeHandlerVersion
public typeHandlerVersion: pulumi.Output<string>;Specifies the version of the extension to use, available versions can be found using the Azure CLI.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property virtualMachineId
public virtualMachineId: pulumi.Output<string>;The ID of the Virtual Machine. Changing this forces a new resource to be created
Resource Image
class Image extends CustomResourceManages a custom virtual machine image that can be used to create virtual machines.
Example Usage
Creating From VHD
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West US"});
const exampleImage = new azure.compute.Image("exampleImage", {
location: "West US",
resourceGroupName: exampleResourceGroup.name,
os_disk: {
osType: "Linux",
osState: "Generalized",
blobUri: "{blob_uri}",
sizeGb: 30,
},
});Creating From Virtual Machine (VM Must Be Generalized Beforehand)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West US"});
const exampleImage = new azure.compute.Image("exampleImage", {
location: "West US",
resourceGroupName: exampleResourceGroup.name,
sourceVirtualMachineId: "{vm_id}",
});constructor
new Image(name: string, args: ImageArgs, opts?: pulumi.CustomResourceOptions)Create a Image resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageState, opts?: pulumi.CustomResourceOptions): ImageGet an existing Image resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ImageReturns true if the given object is an instance of Image. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property dataDisks
public dataDisks: pulumi.Output<ImageDataDisk[] | undefined>;One or more dataDisk elements as defined below.
property hyperVGeneration
public hyperVGeneration: pulumi.Output<string | undefined>;The HyperVGenerationType of the VirtualMachine created from the image as V1, V2. The default is V1.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property location
public location: pulumi.Output<string>;Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the image. Changing this forces a new resource to be created.
property osDisk
public osDisk: pulumi.Output<ImageOsDisk | undefined>;One or more osDisk elements as defined below.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the resource group in which to create the image. Changing this forces a new resource to be created.
property sourceVirtualMachineId
public sourceVirtualMachineId: pulumi.Output<string | undefined>;The Virtual Machine ID from which to create the image.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property zoneResilient
public zoneResilient: pulumi.Output<boolean | undefined>;Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.
Resource LinuxVirtualMachine
class LinuxVirtualMachine extends CustomResourceManages a Linux Virtual Machine.
Disclaimers
Note This provider will automatically remove the OS Disk by default - this behaviour can be configured using the
featuresconfiguration within the Provider configuration block.Note This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the
azure.compute.VirtualMachineresource instead.Note This resource does not support attaching existing OS Disks. You can instead capture an image of the OS Disk or continue to use the
azure.compute.VirtualMachineresource instead.In this release there’s a known issue where the
publicIpAddressandpublicIpAddressesfields may not be fully populated for Dynamic Public IP’s.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * from "fs";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
});
const exampleSubnet = new azure.network.Subnet("exampleSubnet", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const exampleNetworkInterface = new azure.network.NetworkInterface("exampleNetworkInterface", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
ip_configuration: [{
name: "internal",
subnetId: exampleSubnet.id,
privateIpAddressAllocation: "Dynamic",
}],
});
const exampleLinuxVirtualMachine = new azure.compute.LinuxVirtualMachine("exampleLinuxVirtualMachine", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
size: "Standard_F2",
adminUsername: "adminuser",
networkInterfaceIds: [exampleNetworkInterface.id],
admin_ssh_key: [{
username: "adminuser",
publicKey: fs.readFileSync("~/.ssh/id_rsa.pub"),
}],
os_disk: {
caching: "ReadWrite",
storageAccountType: "Standard_LRS",
},
source_image_reference: {
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
version: "latest",
},
});constructor
new LinuxVirtualMachine(name: string, args: LinuxVirtualMachineArgs, opts?: pulumi.CustomResourceOptions)Create a LinuxVirtualMachine resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: LinuxVirtualMachineState, opts?: pulumi.CustomResourceOptions): LinuxVirtualMachineGet an existing LinuxVirtualMachine resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is LinuxVirtualMachineReturns true if the given object is an instance of LinuxVirtualMachine. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property additionalCapabilities
public additionalCapabilities: pulumi.Output<LinuxVirtualMachineAdditionalCapabilities | undefined>;A additionalCapabilities block as defined below.
property adminPassword
public adminPassword: pulumi.Output<string | undefined>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminSshKeys
public adminSshKeys: pulumi.Output<LinuxVirtualMachineAdminSshKey[] | undefined>;One or more adminSshKey blocks as defined below.
property adminUsername
public adminUsername: pulumi.Output<string>;The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
property allowExtensionOperations
public allowExtensionOperations: pulumi.Output<boolean | undefined>;Should Extension Operations be allowed on this Virtual Machine? Changing this forces a new resource to be created.
property availabilitySetId
public availabilitySetId: pulumi.Output<string | undefined>;Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
public bootDiagnostics: pulumi.Output<LinuxVirtualMachineBootDiagnostics | undefined>;A bootDiagnostics block as defined below.
property computerName
public computerName: pulumi.Output<string>;Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerName, then you must specify computerName. Changing this forces a new resource to be created.
property customData
public customData: pulumi.Output<string | undefined>;The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
property dedicatedHostId
public dedicatedHostId: pulumi.Output<string | undefined>;The ID of a Dedicated Host where this machine should be run on. Changing this forces a new resource to be created.
property disablePasswordAuthentication
public disablePasswordAuthentication: pulumi.Output<boolean | undefined>;Should Password Authentication be disabled on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property evictionPolicy
public evictionPolicy: pulumi.Output<string | undefined>;Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. At this time the only supported value is Deallocate. Changing this forces a new resource to be created.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identity
public identity: pulumi.Output<LinuxVirtualMachineIdentity | undefined>;An identity block as defined below.
property location
public location: pulumi.Output<string>;The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
property maxBidPrice
public maxBidPrice: pulumi.Output<number | undefined>;The maximum price you’re willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the evictionPolicy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
property name
public name: pulumi.Output<string>;The name of the Linux Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
public networkInterfaceIds: pulumi.Output<string[]>;. A list of Network Interface ID’s which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
property osDisk
public osDisk: pulumi.Output<LinuxVirtualMachineOsDisk>;A osDisk block as defined below.
property plan
public plan: pulumi.Output<LinuxVirtualMachinePlan | undefined>;A plan block as defined below. Changing this forces a new resource to be created.
property priority
public priority: pulumi.Output<string | undefined>;Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
property privateIpAddress
public privateIpAddress: pulumi.Output<string>;The Primary Private IP Address assigned to this Virtual Machine.
property privateIpAddresses
public privateIpAddresses: pulumi.Output<string[]>;A list of Private IP Addresses assigned to this Virtual Machine.
property provisionVmAgent
public provisionVmAgent: pulumi.Output<boolean | undefined>;Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property proximityPlacementGroupId
public proximityPlacementGroupId: pulumi.Output<string | undefined>;The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
property publicIpAddress
public publicIpAddress: pulumi.Output<string>;The Primary Public IP Address assigned to this Virtual Machine.
property publicIpAddresses
public publicIpAddresses: pulumi.Output<string[]>;A list of the Public IP Addresses assigned to this Virtual Machine.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.
property secrets
public secrets: pulumi.Output<LinuxVirtualMachineSecret[] | undefined>;One or more secret blocks as defined below.
property size
public size: pulumi.Output<string>;The SKU which should be used for this Virtual Machine, such as Standard_F2.
property sourceImageId
public sourceImageId: pulumi.Output<string | undefined>;The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created.
property sourceImageReference
public sourceImageReference: pulumi.Output<LinuxVirtualMachineSourceImageReference | undefined>;A sourceImageReference block as defined below. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags which should be assigned to this Virtual Machine.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property virtualMachineId
public virtualMachineId: pulumi.Output<string>;A 128-bit identifier which uniquely identifies this Virtual Machine.
property virtualMachineScaleSetId
public virtualMachineScaleSetId: pulumi.Output<string | undefined>;Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created.
property zone
public zone: pulumi.Output<string>;The Zone in which this Virtual Machine should be created. Changing this forces a new resource to be created.
Resource LinuxVirtualMachineScaleSet
class LinuxVirtualMachineScaleSet extends CustomResourceManages a Linux Virtual Machine Scale Set.
Disclaimers
Note This provider will automatically update & reimage the nodes in the Scale Set (if Required) during an Update - this behaviour can be configured using the
featuresconfiguration within the Provider configuration block.Note: This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the
azure.compute.ScaleSetresource instead
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * from "fs";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
addressSpaces: ["10.0.0.0/16"],
});
const internal = new azure.network.Subnet("internal", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const exampleLinuxVirtualMachineScaleSet = new azure.compute.LinuxVirtualMachineScaleSet("exampleLinuxVirtualMachineScaleSet", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
sku: "Standard_F2",
instances: 1,
adminUsername: "adminuser",
admin_ssh_key: [{
username: "adminuser",
publicKey: fs.readFileSync("~/.ssh/id_rsa.pub"),
}],
source_image_reference: {
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
version: "latest",
},
os_disk: {
storageAccountType: "Standard_LRS",
caching: "ReadWrite",
},
network_interface: [{
name: "example",
primary: true,
ip_configuration: [{
name: "internal",
primary: true,
subnetId: internal.id,
}],
}],
});constructor
new LinuxVirtualMachineScaleSet(name: string, args: LinuxVirtualMachineScaleSetArgs, opts?: pulumi.CustomResourceOptions)Create a LinuxVirtualMachineScaleSet resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: LinuxVirtualMachineScaleSetState, opts?: pulumi.CustomResourceOptions): LinuxVirtualMachineScaleSetGet an existing LinuxVirtualMachineScaleSet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is LinuxVirtualMachineScaleSetReturns true if the given object is an instance of LinuxVirtualMachineScaleSet. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property additionalCapabilities
public additionalCapabilities: pulumi.Output<LinuxVirtualMachineScaleSetAdditionalCapabilities | undefined>;A additionalCapabilities block as defined below.
property adminPassword
public adminPassword: pulumi.Output<string | undefined>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminSshKeys
public adminSshKeys: pulumi.Output<LinuxVirtualMachineScaleSetAdminSshKey[] | undefined>;One or more adminSshKey blocks as defined below.
property adminUsername
public adminUsername: pulumi.Output<string>;The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
property automaticInstanceRepair
public automaticInstanceRepair: pulumi.Output<LinuxVirtualMachineScaleSetAutomaticInstanceRepair>;A automaticInstanceRepair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid healthProbeId or an Application Health Extension.
property automaticOsUpgradePolicy
public automaticOsUpgradePolicy: pulumi.Output<LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy | undefined>;A automaticOsUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic.
property bootDiagnostics
public bootDiagnostics: pulumi.Output<LinuxVirtualMachineScaleSetBootDiagnostics | undefined>;A bootDiagnostics block as defined below.
property computerNamePrefix
public computerNamePrefix: pulumi.Output<string>;The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerNamePrefix, then you must specify computerNamePrefix.
property customData
public customData: pulumi.Output<string | undefined>;The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
property dataDisks
public dataDisks: pulumi.Output<LinuxVirtualMachineScaleSetDataDisk[] | undefined>;One or more dataDisk blocks as defined below.
property disablePasswordAuthentication
public disablePasswordAuthentication: pulumi.Output<boolean | undefined>;Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.
property doNotRunExtensionsOnOverprovisionedMachines
public doNotRunExtensionsOnOverprovisionedMachines: pulumi.Output<boolean | undefined>;Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
property evictionPolicy
public evictionPolicy: pulumi.Output<string | undefined>;The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.
property healthProbeId
public healthProbeId: pulumi.Output<string | undefined>;The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identity
public identity: pulumi.Output<LinuxVirtualMachineScaleSetIdentity | undefined>;A identity block as defined below.
property instances
public instances: pulumi.Output<number>;The number of Virtual Machines in the Scale Set.
property location
public location: pulumi.Output<string>;The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property maxBidPrice
public maxBidPrice: pulumi.Output<number | undefined>;The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the evictionPolicy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
property name
public name: pulumi.Output<string>;The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
property networkInterfaces
public networkInterfaces: pulumi.Output<LinuxVirtualMachineScaleSetNetworkInterface[]>;One or more networkInterface blocks as defined below.
property osDisk
public osDisk: pulumi.Output<LinuxVirtualMachineScaleSetOsDisk>;An osDisk block as defined below.
property overprovision
public overprovision: pulumi.Output<boolean | undefined>;Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.
property plan
public plan: pulumi.Output<LinuxVirtualMachineScaleSetPlan | undefined>;property priority
public priority: pulumi.Output<string | undefined>;The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
property provisionVmAgent
public provisionVmAgent: pulumi.Output<boolean | undefined>;Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
property proximityPlacementGroupId
public proximityPlacementGroupId: pulumi.Output<string | undefined>;The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
property rollingUpgradePolicy
public rollingUpgradePolicy: pulumi.Output<LinuxVirtualMachineScaleSetRollingUpgradePolicy | undefined>;A rollingUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property scaleInPolicy
public scaleInPolicy: pulumi.Output<string | undefined>;The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
property secrets
public secrets: pulumi.Output<LinuxVirtualMachineScaleSetSecret[] | undefined>;One or more secret blocks as defined below.
property singlePlacementGroup
public singlePlacementGroup: pulumi.Output<boolean | undefined>;Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
property sku
public sku: pulumi.Output<string>;The Virtual Machine SKU for the Scale Set, such as Standard_F2.
property sourceImageId
public sourceImageId: pulumi.Output<string | undefined>;The ID of an Image which each Virtual Machine in this Scale Set should be based on.
property sourceImageReference
public sourceImageReference: pulumi.Output<LinuxVirtualMachineScaleSetSourceImageReference | undefined>;A sourceImageReference block as defined below.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags which should be assigned to this Virtual Machine Scale Set.
property terminateNotification
public terminateNotification: pulumi.Output<LinuxVirtualMachineScaleSetTerminateNotification>;A terminateNotification block as defined below.
property uniqueId
public uniqueId: pulumi.Output<string>;The Unique ID for this Linux Virtual Machine Scale Set.
property upgradeMode
public upgradeMode: pulumi.Output<string | undefined>;Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property zoneBalance
public zoneBalance: pulumi.Output<boolean | undefined>;Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
property zones
public zones: pulumi.Output<string[] | undefined>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
Resource ManagedDisk
class ManagedDisk extends CustomResourceManages a managed disk.
Example Usage
With Create Empty
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West US 2"});
const exampleManagedDisk = new azure.compute.ManagedDisk("exampleManagedDisk", {
location: "West US 2",
resourceGroupName: exampleResourceGroup.name,
storageAccountType: "Standard_LRS",
createOption: "Empty",
diskSizeGb: "1",
tags: {
environment: "staging",
},
});With Create Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {location: "West US 2"});
const source = new azure.compute.ManagedDisk("source", {
location: "West US 2",
resourceGroupName: example.name,
storageAccountType: "Standard_LRS",
createOption: "Empty",
diskSizeGb: "1",
tags: {
environment: "staging",
},
});
const copy = new azure.compute.ManagedDisk("copy", {
location: "West US 2",
resourceGroupName: example.name,
storageAccountType: "Standard_LRS",
createOption: "Copy",
sourceResourceId: source.id,
diskSizeGb: "1",
tags: {
environment: "staging",
},
});constructor
new ManagedDisk(name: string, args: ManagedDiskArgs, opts?: pulumi.CustomResourceOptions)Create a ManagedDisk resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ManagedDiskState, opts?: pulumi.CustomResourceOptions): ManagedDiskGet an existing ManagedDisk resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ManagedDiskReturns true if the given object is an instance of ManagedDisk. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property createOption
public createOption: pulumi.Output<string>;The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include:
property diskEncryptionSetId
public diskEncryptionSetId: pulumi.Output<string | undefined>;The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk.
property diskIopsReadWrite
public diskIopsReadWrite: pulumi.Output<number>;The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.
property diskMbpsReadWrite
public diskMbpsReadWrite: pulumi.Output<number>;The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second.
property diskSizeGb
public diskSizeGb: pulumi.Output<number>;Specifies the size of the managed disk to create in gigabytes. If createOption is Copy or FromImage, then the value must be equal to or greater than the source’s size. The size can only be increased.
property encryptionSettings
public encryptionSettings: pulumi.Output<ManagedDiskEncryptionSettings | undefined>;A encryptionSettings block as defined below.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageReferenceId
public imageReferenceId: pulumi.Output<string | undefined>;ID of an existing platform/marketplace disk image to copy when createOption is FromImage.
property location
public location: pulumi.Output<string>;Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the Managed Disk. Changing this forces a new resource to be created.
property osType
public osType: pulumi.Output<string | undefined>;Specify a value when the source of an Import or Copy operation targets a source that contains an operating system. Valid values are Linux or Windows.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the Resource Group where the Managed Disk should exist.
property sourceResourceId
public sourceResourceId: pulumi.Output<string | undefined>;The ID of an existing Managed Disk to copy createOption is Copy or the recovery point to restore when createOption is Restore
property sourceUri
public sourceUri: pulumi.Output<string>;URI to a valid VHD file to be used when createOption is Import.
property storageAccountId
public storageAccountId: pulumi.Output<string | undefined>;The ID of the Storage Account where the sourceUri is located. Required when createOption is set to Import. Changing this forces a new resource to be created.
property storageAccountType
public storageAccountType: pulumi.Output<string>;The type of storage to use for the managed disk. Possible values are Standard_LRS, Premium_LRS, StandardSSD_LRS or UltraSSD_LRS.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property zones
public zones: pulumi.Output<string | undefined>;A collection containing the availability zone to allocate the Managed Disk in.
Resource OrchestratedVirtualMachineScaleSet
class OrchestratedVirtualMachineScaleSet extends CustomResourceManages an Orchestrated Virtual Machine Scale Set.
Note: Orchestrated Virtual Machine Scale Sets are in Public Preview - more details can be found in the Azure Documentation.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleOrchestratedVirtualMachineScaleSet = new azure.compute.OrchestratedVirtualMachineScaleSet("exampleOrchestratedVirtualMachineScaleSet", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
platformFaultDomainCount: 5,
singlePlacementGroup: true,
zones: ["1"],
});constructor
new OrchestratedVirtualMachineScaleSet(name: string, args: OrchestratedVirtualMachineScaleSetArgs, opts?: pulumi.CustomResourceOptions)Create a OrchestratedVirtualMachineScaleSet resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OrchestratedVirtualMachineScaleSetState, opts?: pulumi.CustomResourceOptions): OrchestratedVirtualMachineScaleSetGet an existing OrchestratedVirtualMachineScaleSet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is OrchestratedVirtualMachineScaleSetReturns true if the given object is an instance of OrchestratedVirtualMachineScaleSet. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property location
public location: pulumi.Output<string>;The Azure location where the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;The name of the Orchestrated Virtual Machine Scale Set. Changing this forces a new resource to be created.
property platformFaultDomainCount
public platformFaultDomainCount: pulumi.Output<number>;Specifies the number of fault domains that are used by this Orchestrated Virtual Machine Scale Set. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the Resource Group in which the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property singlePlacementGroup
public singlePlacementGroup: pulumi.Output<boolean>;Should the Orchestrated Virtual Machine Scale Set use single placement group? Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags which should be assigned to this Orchestrated Virtual Machine Scale Set.
property uniqueId
public uniqueId: pulumi.Output<string>;The Unique ID for the Orchestrated Virtual Machine Scale Set.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property zones
public zones: pulumi.Output<string | undefined>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
Resource ScaleSet
class ScaleSet extends CustomResourceManages a virtual machine scale set.
##Â Disclaimers
Note: The
azure.compute.ScaleSetresource has been superseded by theazure.compute.LinuxVirtualMachineScaleSetandazure.compute.WindowsVirtualMachineScaleSetresources. The existingazure.compute.ScaleSetresource 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.LinuxVirtualMachineScaleSetandazure.compute.WindowsVirtualMachineScaleSetresources.
Example Usage
With Managed Disks (Recommended)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * from "fs";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West US 2"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
});
const exampleSubnet = new azure.network.Subnet("exampleSubnet", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const examplePublicIp = new azure.network.PublicIp("examplePublicIp", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
allocationMethod: "Static",
domainNameLabel: exampleResourceGroup.name,
tags: {
environment: "staging",
},
});
const exampleLoadBalancer = new azure.lb.LoadBalancer("exampleLoadBalancer", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
frontend_ip_configuration: [{
name: "PublicIPAddress",
publicIpAddressId: examplePublicIp.id,
}],
});
const bpepool = new azure.lb.BackendAddressPool("bpepool", {
resourceGroupName: exampleResourceGroup.name,
loadbalancerId: exampleLoadBalancer.id,
});
const lbnatpool = new azure.lb.NatPool("lbnatpool", {
resourceGroupName: exampleResourceGroup.name,
loadbalancerId: exampleLoadBalancer.id,
protocol: "Tcp",
frontendPortStart: 50000,
frontendPortEnd: 50119,
backendPort: 22,
frontendIpConfigurationName: "PublicIPAddress",
});
const exampleProbe = new azure.lb.Probe("exampleProbe", {
resourceGroupName: exampleResourceGroup.name,
loadbalancerId: exampleLoadBalancer.id,
protocol: "Http",
requestPath: "/health",
port: 8080,
});
const exampleScaleSet = new azure.compute.ScaleSet("exampleScaleSet", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
automaticOsUpgrade: true,
upgradePolicyMode: "Rolling",
rolling_upgrade_policy: {
maxBatchInstancePercent: 20,
maxUnhealthyInstancePercent: 20,
maxUnhealthyUpgradedInstancePercent: 5,
pauseTimeBetweenBatches: "PT0S",
},
healthProbeId: exampleProbe.id,
sku: {
name: "Standard_F2",
tier: "Standard",
capacity: 2,
},
storage_profile_image_reference: {
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
version: "latest",
},
storage_profile_os_disk: {
name: "",
caching: "ReadWrite",
createOption: "FromImage",
managedDiskType: "Standard_LRS",
},
storage_profile_data_disk: [{
lun: 0,
caching: "ReadWrite",
createOption: "Empty",
diskSizeGb: 10,
}],
os_profile: {
computerNamePrefix: "testvm",
adminUsername: "myadmin",
},
os_profile_linux_config: {
disablePasswordAuthentication: true,
ssh_keys: [{
path: "/home/myadmin/.ssh/authorized_keys",
keyData: fs.readFileSync("~/.ssh/demo_key.pub"),
}],
},
network_profile: [{
name: "mynetworkprofile",
primary: true,
ip_configuration: [{
name: "TestIPConfiguration",
primary: true,
subnetId: exampleSubnet.id,
loadBalancerBackendAddressPoolIds: [bpepool.id],
loadBalancerInboundNatRulesIds: [lbnatpool.id],
}],
}],
tags: {
environment: "staging",
},
});With Unmanaged Disks
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * from "fs";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West US"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: "West US",
resourceGroupName: exampleResourceGroup.name,
});
const exampleSubnet = new azure.network.Subnet("exampleSubnet", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const exampleAccount = new azure.storage.Account("exampleAccount", {
resourceGroupName: exampleResourceGroup.name,
location: "westus",
accountTier: "Standard",
accountReplicationType: "LRS",
tags: {
environment: "staging",
},
});
const exampleContainer = new azure.storage.Container("exampleContainer", {
storageAccountName: exampleAccount.name,
containerAccessType: "private",
});
const exampleScaleSet = new azure.compute.ScaleSet("exampleScaleSet", {
location: "West US",
resourceGroupName: exampleResourceGroup.name,
upgradePolicyMode: "Manual",
sku: {
name: "Standard_F2",
tier: "Standard",
capacity: 2,
},
os_profile: {
computerNamePrefix: "testvm",
adminUsername: "myadmin",
},
os_profile_linux_config: {
disablePasswordAuthentication: true,
ssh_keys: [{
path: "/home/myadmin/.ssh/authorized_keys",
keyData: fs.readFileSync("~/.ssh/demo_key.pub"),
}],
},
network_profile: [{
name: "TestNetworkProfile",
primary: true,
ip_configuration: [{
name: "TestIPConfiguration",
primary: true,
subnetId: exampleSubnet.id,
}],
}],
storage_profile_os_disk: {
name: "osDiskProfile",
caching: "ReadWrite",
createOption: "FromImage",
vhdContainers: [pulumi.interpolate`${exampleAccount.primaryBlobEndpoint}${exampleContainer.name}`],
},
storage_profile_image_reference: {
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
version: "latest",
},
});Example of storageProfileImageReference with id
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleImage = new azure.compute.Image("exampleImage", {});
// ...
const exampleScaleSet = new azure.compute.ScaleSet("exampleScaleSet", {storage_profile_image_reference: {
id: exampleImage.id,
}});
// ...constructor
new ScaleSet(name: string, args: ScaleSetArgs, opts?: pulumi.CustomResourceOptions)Create a ScaleSet resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ScaleSetState, opts?: pulumi.CustomResourceOptions): ScaleSetGet an existing ScaleSet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ScaleSetReturns true if the given object is an instance of ScaleSet. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property automaticOsUpgrade
public automaticOsUpgrade: pulumi.Output<boolean | undefined>;Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when upgradePolicyMode is set to Rolling. Defaults to false.
property bootDiagnostics
public bootDiagnostics: pulumi.Output<ScaleSetBootDiagnostics | undefined>;A boot diagnostics profile block as referenced below.
property evictionPolicy
public evictionPolicy: pulumi.Output<string | undefined>;Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete.
property extensions
public extensions: pulumi.Output<ScaleSetExtension[] | undefined>;Can be specified multiple times to add extension profiles to the scale set. Each extension block supports the fields documented below.
property healthProbeId
public healthProbeId: pulumi.Output<string | undefined>;Specifies the identifier for the load balancer health probe. Required when using Rolling as your upgradePolicyMode.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identity
public identity: pulumi.Output<ScaleSetIdentity>;property licenseType
public licenseType: pulumi.Output<string>;Specifies the Windows OS license type. If supplied, the only allowed values are Windows_Client and Windows_Server.
property location
public location: pulumi.Output<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the virtual machine scale set resource. Changing this forces a new resource to be created.
property networkProfiles
public networkProfiles: pulumi.Output<ScaleSetNetworkProfile[]>;A collection of network profile block as documented below.
property osProfile
public osProfile: pulumi.Output<ScaleSetOsProfile>;A Virtual Machine OS Profile block as documented below.
property osProfileLinuxConfig
public osProfileLinuxConfig: pulumi.Output<ScaleSetOsProfileLinuxConfig>;A Linux config block as documented below.
property osProfileSecrets
public osProfileSecrets: pulumi.Output<ScaleSetOsProfileSecret[] | undefined>;A collection of Secret blocks as documented below.
property osProfileWindowsConfig
public osProfileWindowsConfig: pulumi.Output<ScaleSetOsProfileWindowsConfig | undefined>;A Windows config block as documented below.
property overprovision
public overprovision: pulumi.Output<boolean | undefined>;Specifies whether the virtual machine scale set should be overprovisioned.
property plan
public plan: pulumi.Output<ScaleSetPlan | undefined>;A plan block as documented below.
property priority
public priority: pulumi.Output<string | undefined>;Specifies the priority for the Virtual Machines in the Scale Set. Defaults to Regular. Possible values are Low and Regular.
property proximityPlacementGroupId
public proximityPlacementGroupId: pulumi.Output<string | undefined>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.
property rollingUpgradePolicy
public rollingUpgradePolicy: pulumi.Output<ScaleSetRollingUpgradePolicy | undefined>;A rollingUpgradePolicy block as defined below. This is only applicable when the upgradePolicyMode is Rolling.
property singlePlacementGroup
public singlePlacementGroup: pulumi.Output<boolean | undefined>;Specifies whether the scale set is limited to a single placement group with a maximum size of 100 virtual machines. If set to false, managed disks must be used. Default is true. Changing this forces a new resource to be created. See documentation for more information.
property sku
public sku: pulumi.Output<ScaleSetSku>;A sku block as documented below.
property storageProfileDataDisks
public storageProfileDataDisks: pulumi.Output<ScaleSetStorageProfileDataDisk[] | undefined>;A storage profile data disk block as documented below
property storageProfileImageReference
public storageProfileImageReference: pulumi.Output<ScaleSetStorageProfileImageReference>;A storage profile image reference block as documented below.
property storageProfileOsDisk
public storageProfileOsDisk: pulumi.Output<ScaleSetStorageProfileOsDisk>;A storage profile os disk block as documented below
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property upgradePolicyMode
public upgradePolicyMode: pulumi.Output<string>;Specifies the mode of an upgrade to virtual machines in the scale set. Possible values, Rolling, Manual, or Automatic. When choosing Rolling, you will need to set a health probe.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property zones
public zones: pulumi.Output<string[] | undefined>;A collection of availability zones to spread the Virtual Machines over.
Resource SharedImage
class SharedImage extends CustomResourceManages a Shared Image within a Shared Image Gallery.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleSharedImageGallery = new azure.compute.SharedImageGallery("exampleSharedImageGallery", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
description: "Shared images and things.",
tags: {
Hello: "There",
World: "Example",
},
});
const exampleSharedImage = new azure.compute.SharedImage("exampleSharedImage", {
galleryName: exampleSharedImageGallery.name,
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
osType: "Linux",
identifier: {
publisher: "PublisherName",
offer: "OfferName",
sku: "ExampleSku",
},
});constructor
new SharedImage(name: string, args: SharedImageArgs, opts?: pulumi.CustomResourceOptions)Create a SharedImage resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SharedImageState, opts?: pulumi.CustomResourceOptions): SharedImageGet an existing SharedImage resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is SharedImageReturns true if the given object is an instance of SharedImage. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property description
public description: pulumi.Output<string | undefined>;A description of this Shared Image.
property eula
public eula: pulumi.Output<string | undefined>;The End User Licence Agreement for the Shared Image.
property galleryName
public galleryName: pulumi.Output<string>;Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.
property hyperVGeneration
public hyperVGeneration: pulumi.Output<string | undefined>;The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are V1 and V2. Defaults to V1. Changing this forces a new resource to be created.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identifier
public identifier: pulumi.Output<SharedImageIdentifier>;An identifier block as defined below.
property location
public location: pulumi.Output<string>;Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the Shared Image. Changing this forces a new resource to be created.
property osType
public osType: pulumi.Output<string>;The type of Operating System present in this Shared Image. Possible values are Linux and Windows.
property privacyStatementUri
public privacyStatementUri: pulumi.Output<string | undefined>;The URI containing the Privacy Statement associated with this Shared Image.
property releaseNoteUri
public releaseNoteUri: pulumi.Output<string | undefined>;The URI containing the Release Notes associated with this Shared Image.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the Shared Image.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource SharedImageGallery
class SharedImageGallery extends CustomResourceManages a Shared Image Gallery.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleSharedImageGallery = new azure.compute.SharedImageGallery("exampleSharedImageGallery", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
description: "Shared images and things.",
tags: {
Hello: "There",
World: "Example",
},
});constructor
new SharedImageGallery(name: string, args: SharedImageGalleryArgs, opts?: pulumi.CustomResourceOptions)Create a SharedImageGallery resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SharedImageGalleryState, opts?: pulumi.CustomResourceOptions): SharedImageGalleryGet an existing SharedImageGallery resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is SharedImageGalleryReturns true if the given object is an instance of SharedImageGallery. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property description
public description: pulumi.Output<string | undefined>;A description for this Shared Image Gallery.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property location
public location: pulumi.Output<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the Shared Image Gallery.
property uniqueName
public uniqueName: pulumi.Output<string>;The Unique Name for this Shared Image Gallery.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource SharedImageVersion
class SharedImageVersion extends CustomResourceManages a Version of a Shared Image within a Shared Image Gallery.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const existingImage = azure.compute.getImage({
name: "search-api",
resourceGroupName: "packerimages",
});
const existingSharedImage = azure.compute.getSharedImage({
name: "existing-image",
galleryName: "existing_gallery",
resourceGroupName: "existing-resources",
});
const example = new azure.compute.SharedImageVersion("example", {
galleryName: existingSharedImage.then(existingSharedImage => existingSharedImage.galleryName),
imageName: existingSharedImage.then(existingSharedImage => existingSharedImage.name),
resourceGroupName: existingSharedImage.then(existingSharedImage => existingSharedImage.resourceGroupName),
location: existingSharedImage.then(existingSharedImage => existingSharedImage.location),
managedImageId: existingImage.then(existingImage => existingImage.id),
target_region: [{
name: existingSharedImage.then(existingSharedImage => existingSharedImage.location),
regionalReplicaCount: "5",
storageAccountType: "Standard_LRS",
}],
});constructor
new SharedImageVersion(name: string, args: SharedImageVersionArgs, opts?: pulumi.CustomResourceOptions)Create a SharedImageVersion resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SharedImageVersionState, opts?: pulumi.CustomResourceOptions): SharedImageVersionGet an existing SharedImageVersion resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is SharedImageVersionReturns true if the given object is an instance of SharedImageVersion. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property excludeFromLatest
public excludeFromLatest: pulumi.Output<boolean | undefined>;Should this Image Version be excluded from the latest filter? If set to true this Image Version won’t be returned for the latest version. Defaults to false.
property galleryName
public galleryName: pulumi.Output<string>;The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageName
public imageName: pulumi.Output<string>;The name of the Shared Image within the Shared Image Gallery in which this Version should be created. Changing this forces a new resource to be created.
property location
public location: pulumi.Output<string>;The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property managedImageId
public managedImageId: pulumi.Output<string>;The ID of the Managed Image which should be used for this Shared Image Version. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A collection of tags which should be applied to this resource.
property targetRegions
public targetRegions: pulumi.Output<SharedImageVersionTargetRegion[]>;One or more targetRegion blocks as documented below.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Snapshot
class Snapshot extends CustomResourceManages a Disk Snapshot.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleManagedDisk = new azure.compute.ManagedDisk("exampleManagedDisk", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
storageAccountType: "Standard_LRS",
createOption: "Empty",
diskSizeGb: "10",
});
const exampleSnapshot = new azure.compute.Snapshot("exampleSnapshot", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
createOption: "Copy",
sourceUri: exampleManagedDisk.id,
});constructor
new Snapshot(name: string, args: SnapshotArgs, opts?: pulumi.CustomResourceOptions)Create a Snapshot resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SnapshotState, opts?: pulumi.CustomResourceOptions): SnapshotGet an existing Snapshot resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is SnapshotReturns true if the given object is an instance of Snapshot. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property createOption
public createOption: pulumi.Output<string>;Indicates how the snapshot is to be created. Possible values are Copy or Import. Changing this forces a new resource to be created.
property diskSizeGb
public diskSizeGb: pulumi.Output<number>;The size of the Snapshotted Disk in GB.
property encryptionSettings
public encryptionSettings: pulumi.Output<SnapshotEncryptionSettings | undefined>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property location
public location: pulumi.Output<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.
property sourceResourceId
public sourceResourceId: pulumi.Output<string | undefined>;Specifies a reference to an existing snapshot, when createOption is Copy. Changing this forces a new resource to be created.
property sourceUri
public sourceUri: pulumi.Output<string | undefined>;Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
property storageAccountId
public storageAccountId: pulumi.Output<string | undefined>;Specifies the ID of an storage account. Used with sourceUri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource VirtualMachine
class VirtualMachine extends CustomResourceManages a Virtual Machine.
Disclaimers
Note: The
azure.compute.VirtualMachineresource has been superseded by theazure.compute.LinuxVirtualMachineandazure.compute.WindowsVirtualMachineresources. The existingazure.compute.VirtualMachineresource will continue to be available throughout the 2.x releases however is in a feature-frozen state to maintain compatibility - new functionality will instead be added to theazure.compute.LinuxVirtualMachineandazure.compute.WindowsVirtualMachineresources.Note: Data Disks can be attached either directly on the
azure.compute.VirtualMachineresource, or using theazure.compute.DataDiskAttachmentresource - but the two cannot be used together. If both are used against the same Virtual Machine, spurious changes will occur.
Example Usage
From An Azure Platform Image)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const config = new pulumi.Config();
const prefix = config.get("prefix") || "tfvmex";
const mainResourceGroup = new azure.core.ResourceGroup("mainResourceGroup", {location: "West US 2"});
const mainVirtualNetwork = new azure.network.VirtualNetwork("mainVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
});
const internal = new azure.network.Subnet("internal", {
resourceGroupName: mainResourceGroup.name,
virtualNetworkName: mainVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const mainNetworkInterface = new azure.network.NetworkInterface("mainNetworkInterface", {
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
ip_configuration: [{
name: "testconfiguration1",
subnetId: internal.id,
privateIpAddressAllocation: "Dynamic",
}],
});
const mainVirtualMachine = new azure.compute.VirtualMachine("mainVirtualMachine", {
location: mainResourceGroup.location,
resourceGroupName: mainResourceGroup.name,
networkInterfaceIds: [mainNetworkInterface.id],
vmSize: "Standard_DS1_v2",
storage_image_reference: {
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
version: "latest",
},
storage_os_disk: {
name: "myosdisk1",
caching: "ReadWrite",
createOption: "FromImage",
managedDiskType: "Standard_LRS",
},
os_profile: {
computerName: "hostname",
adminUsername: "testadmin",
adminPassword: "Password1234!",
},
os_profile_linux_config: {
disablePasswordAuthentication: false,
},
tags: {
environment: "staging",
},
});constructor
new VirtualMachine(name: string, args: VirtualMachineArgs, opts?: pulumi.CustomResourceOptions)Create a VirtualMachine resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VirtualMachineState, opts?: pulumi.CustomResourceOptions): VirtualMachineGet an existing VirtualMachine resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is VirtualMachineReturns true if the given object is an instance of VirtualMachine. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property additionalCapabilities
public additionalCapabilities: pulumi.Output<VirtualMachineAdditionalCapabilities | undefined>;A additionalCapabilities block.
property availabilitySetId
public availabilitySetId: pulumi.Output<string>;The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
public bootDiagnostics: pulumi.Output<VirtualMachineBootDiagnostics | undefined>;A bootDiagnostics block.
property deleteDataDisksOnTermination
public deleteDataDisksOnTermination: pulumi.Output<boolean | undefined>;Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to false.
property deleteOsDiskOnTermination
public deleteOsDiskOnTermination: pulumi.Output<boolean | undefined>;Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to false.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identity
public identity: pulumi.Output<VirtualMachineIdentity>;A identity block.
property licenseType
public licenseType: pulumi.Output<string>;Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are Windows_Client and Windows_Server.
property location
public location: pulumi.Output<string>;Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
property name
public name: pulumi.Output<string>;Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
public networkInterfaceIds: pulumi.Output<string[]>;A list of Network Interface ID’s which should be associated with the Virtual Machine.
property osProfile
public osProfile: pulumi.Output<VirtualMachineOsProfile | undefined>;An osProfile block. Required when createOption in the storageOsDisk block is set to FromImage.
property osProfileLinuxConfig
public osProfileLinuxConfig: pulumi.Output<VirtualMachineOsProfileLinuxConfig | undefined>;A osProfileLinuxConfig block.
property osProfileSecrets
public osProfileSecrets: pulumi.Output<VirtualMachineOsProfileSecret[] | undefined>;One or more osProfileSecrets blocks.
property osProfileWindowsConfig
public osProfileWindowsConfig: pulumi.Output<VirtualMachineOsProfileWindowsConfig | undefined>;A osProfileWindowsConfig block.
property plan
public plan: pulumi.Output<VirtualMachinePlan | undefined>;A plan block.
property primaryNetworkInterfaceId
public primaryNetworkInterfaceId: pulumi.Output<string | undefined>;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.
property proximityPlacementGroupId
public proximityPlacementGroupId: pulumi.Output<string | undefined>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property storageDataDisks
public storageDataDisks: pulumi.Output<VirtualMachineStorageDataDisk[]>;One or more storageDataDisk blocks.
property storageImageReference
public storageImageReference: pulumi.Output<VirtualMachineStorageImageReference>;A storageImageReference block.
property storageOsDisk
public storageOsDisk: pulumi.Output<VirtualMachineStorageOsDisk>;A storageOsDisk block.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags to assign to the Virtual Machine.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vmSize
public vmSize: pulumi.Output<string>;Specifies the size of the Virtual Machine.
property zones
public zones: pulumi.Output<string | undefined>;A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
Resource VirtualMachineScaleSetExtension
class VirtualMachineScaleSetExtension extends CustomResourceManages an Extension for a Virtual Machine Scale Set.
NOTE: This resource is not intended to be used with the
azure.compute.ScaleSetresource - instead it’s intended for this to be used with theazure.compute.LinuxVirtualMachineScaleSetandazure.compute.WindowsVirtualMachineScaleSetresources.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleLinuxVirtualMachineScaleSet = new azure.compute.LinuxVirtualMachineScaleSet("exampleLinuxVirtualMachineScaleSet", {});
//...
const exampleVirtualMachineScaleSetExtension = new azure.compute.VirtualMachineScaleSetExtension("exampleVirtualMachineScaleSetExtension", {
virtualMachineScaleSetId: exampleLinuxVirtualMachineScaleSet.id,
publisher: "Microsoft.Azure.Extensions",
type: "CustomScript",
typeHandlerVersion: "2.0",
settings: JSON.stringify({
commandToExecute: `echo $HOSTNAME`,
}),
});constructor
new VirtualMachineScaleSetExtension(name: string, args: VirtualMachineScaleSetExtensionArgs, opts?: pulumi.CustomResourceOptions)Create a VirtualMachineScaleSetExtension resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VirtualMachineScaleSetExtensionState, opts?: pulumi.CustomResourceOptions): VirtualMachineScaleSetExtensionGet an existing VirtualMachineScaleSetExtension resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is VirtualMachineScaleSetExtensionReturns true if the given object is an instance of VirtualMachineScaleSetExtension. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property autoUpgradeMinorVersion
public autoUpgradeMinorVersion: pulumi.Output<boolean | undefined>;Should the latest version of the Extension be used at Deployment Time, if one is available? This won’t auto-update the extension on existing installation. Defaults to true.
property forceUpdateTag
public forceUpdateTag: pulumi.Output<string | undefined>;A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn’t changed.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
property protectedSettings
public protectedSettings: pulumi.Output<string | undefined>;A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
property provisionAfterExtensions
public provisionAfterExtensions: pulumi.Output<string[] | undefined>;An ordered list of Extension names which this should be provisioned after.
property publisher
public publisher: pulumi.Output<string>;Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
property settings
public settings: pulumi.Output<string | undefined>;A JSON String which specifies Settings for the Extension.
property type
public type: pulumi.Output<string>;Specifies the Type of the Extension. Changing this forces a new resource to be created.
property typeHandlerVersion
public typeHandlerVersion: pulumi.Output<string>;Specifies the version of the extension to use, available versions can be found using the Azure CLI.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property virtualMachineScaleSetId
public virtualMachineScaleSetId: pulumi.Output<string>;The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
Resource WindowsVirtualMachine
class WindowsVirtualMachine extends CustomResourceManages a Windows Virtual Machine.
Disclaimers
Note This provider will automatically remove the OS Disk by default - this behaviour can be configured using the
featuresconfiguration within the Provider configuration block.Note This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the
azure.compute.VirtualMachineresource instead.Note This resource does not support attaching existing OS Disks. You can instead capture an image of the OS Disk or continue to use the
azure.compute.VirtualMachineresource instead.In this release there’s a known issue where the
publicIpAddressandpublicIpAddressesfields may not be fully populated for Dynamic Public IP’s.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
});
const exampleSubnet = new azure.network.Subnet("exampleSubnet", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const exampleNetworkInterface = new azure.network.NetworkInterface("exampleNetworkInterface", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
ip_configuration: [{
name: "internal",
subnetId: exampleSubnet.id,
privateIpAddressAllocation: "Dynamic",
}],
});
const exampleWindowsVirtualMachine = new azure.compute.WindowsVirtualMachine("exampleWindowsVirtualMachine", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
size: "Standard_F2",
adminUsername: "adminuser",
adminPassword: `P@$$w0rd1234!`,
networkInterfaceIds: [exampleNetworkInterface.id],
os_disk: {
caching: "ReadWrite",
storageAccountType: "Standard_LRS",
},
source_image_reference: {
publisher: "MicrosoftWindowsServer",
offer: "WindowsServer",
sku: "2016-Datacenter",
version: "latest",
},
});constructor
new WindowsVirtualMachine(name: string, args: WindowsVirtualMachineArgs, opts?: pulumi.CustomResourceOptions)Create a WindowsVirtualMachine resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: WindowsVirtualMachineState, opts?: pulumi.CustomResourceOptions): WindowsVirtualMachineGet an existing WindowsVirtualMachine resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is WindowsVirtualMachineReturns true if the given object is an instance of WindowsVirtualMachine. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property additionalCapabilities
public additionalCapabilities: pulumi.Output<WindowsVirtualMachineAdditionalCapabilities | undefined>;A additionalCapabilities block as defined below.
property additionalUnattendContents
public additionalUnattendContents: pulumi.Output<WindowsVirtualMachineAdditionalUnattendContent[] | undefined>;One or more additionalUnattendContent blocks as defined below. Changing this forces a new resource to be created.
property adminPassword
public adminPassword: pulumi.Output<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminUsername
public adminUsername: pulumi.Output<string>;The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
property allowExtensionOperations
public allowExtensionOperations: pulumi.Output<boolean | undefined>;Should Extension Operations be allowed on this Virtual Machine? Changing this forces a new resource to be created.
property availabilitySetId
public availabilitySetId: pulumi.Output<string | undefined>;Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
public bootDiagnostics: pulumi.Output<WindowsVirtualMachineBootDiagnostics | undefined>;A bootDiagnostics block as defined below.
property computerName
public computerName: pulumi.Output<string>;Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerName, then you must specify computerName. Changing this forces a new resource to be created.
property customData
public customData: pulumi.Output<string | undefined>;The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
property dedicatedHostId
public dedicatedHostId: pulumi.Output<string | undefined>;The ID of a Dedicated Host where this machine should be run on. Changing this forces a new resource to be created.
property enableAutomaticUpdates
public enableAutomaticUpdates: pulumi.Output<boolean | undefined>;Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created.
property evictionPolicy
public evictionPolicy: pulumi.Output<string | undefined>;Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. At this time the only supported value is Deallocate. Changing this forces a new resource to be created.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identity
public identity: pulumi.Output<WindowsVirtualMachineIdentity | undefined>;An identity block as defined below.
property licenseType
public licenseType: pulumi.Output<string | undefined>;Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine. Possible values are None, Windows_Client and Windows_Server. Changing this forces a new resource to be created.
property location
public location: pulumi.Output<string>;The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
property maxBidPrice
public maxBidPrice: pulumi.Output<number | undefined>;The maximum price you’re willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the evictionPolicy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
property name
public name: pulumi.Output<string>;The name of the Windows Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
public networkInterfaceIds: pulumi.Output<string[]>;. A list of Network Interface ID’s which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
property osDisk
public osDisk: pulumi.Output<WindowsVirtualMachineOsDisk>;A osDisk block as defined below.
property plan
public plan: pulumi.Output<WindowsVirtualMachinePlan | undefined>;A plan block as defined below. Changing this forces a new resource to be created.
property priority
public priority: pulumi.Output<string | undefined>;Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
property privateIpAddress
public privateIpAddress: pulumi.Output<string>;The Primary Private IP Address assigned to this Virtual Machine.
property privateIpAddresses
public privateIpAddresses: pulumi.Output<string[]>;A list of Private IP Addresses assigned to this Virtual Machine.
property provisionVmAgent
public provisionVmAgent: pulumi.Output<boolean | undefined>;Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property proximityPlacementGroupId
public proximityPlacementGroupId: pulumi.Output<string | undefined>;The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
property publicIpAddress
public publicIpAddress: pulumi.Output<string>;The Primary Public IP Address assigned to this Virtual Machine.
property publicIpAddresses
public publicIpAddresses: pulumi.Output<string[]>;A list of the Public IP Addresses assigned to this Virtual Machine.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created.
property secrets
public secrets: pulumi.Output<WindowsVirtualMachineSecret[] | undefined>;One or more secret blocks as defined below.
property size
public size: pulumi.Output<string>;The SKU which should be used for this Virtual Machine, such as Standard_F2.
property sourceImageId
public sourceImageId: pulumi.Output<string | undefined>;The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created.
property sourceImageReference
public sourceImageReference: pulumi.Output<WindowsVirtualMachineSourceImageReference | undefined>;A sourceImageReference block as defined below. Changing this forces a new resource to be created.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags which should be assigned to this Virtual Machine.
property timezone
public timezone: pulumi.Output<string | undefined>;Specifies the Time Zone which should be used by the Virtual Machine, the possible values are defined here.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property virtualMachineId
public virtualMachineId: pulumi.Output<string>;A 128-bit identifier which uniquely identifies this Virtual Machine.
property virtualMachineScaleSetId
public virtualMachineScaleSetId: pulumi.Output<string | undefined>;Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created.
property winrmListeners
public winrmListeners: pulumi.Output<WindowsVirtualMachineWinrmListener[] | undefined>;One or more winrmListener blocks as defined below.
property zone
public zone: pulumi.Output<string>;The Zone in which this Virtual Machine should be created. Changing this forces a new resource to be created.
Resource WindowsVirtualMachineScaleSet
class WindowsVirtualMachineScaleSet extends CustomResourceManages a Windows Virtual Machine Scale Set.
Disclaimers
Note This provider will automatically update & reimage the nodes in the Scale Set (if Required) during an Update - this behaviour can be configured using the
featuresconfiguration within the Provider configuration block.Note: This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the
azure.compute.ScaleSetresource instead
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
addressSpaces: ["10.0.0.0/16"],
});
const internal = new azure.network.Subnet("internal", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefix: "10.0.2.0/24",
});
const exampleWindowsVirtualMachineScaleSet = new azure.compute.WindowsVirtualMachineScaleSet("exampleWindowsVirtualMachineScaleSet", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
sku: "Standard_F2",
instances: 1,
adminPassword: "P@55w0rd1234!",
adminUsername: "adminuser",
source_image_reference: {
publisher: "MicrosoftWindowsServer",
offer: "WindowsServer",
sku: "2016-Datacenter-Server-Core",
version: "latest",
},
os_disk: {
storageAccountType: "Standard_LRS",
caching: "ReadWrite",
},
network_interface: [{
name: "example",
primary: true,
ip_configuration: [{
name: "internal",
primary: true,
subnetId: internal.id,
}],
}],
});constructor
new WindowsVirtualMachineScaleSet(name: string, args: WindowsVirtualMachineScaleSetArgs, opts?: pulumi.CustomResourceOptions)Create a WindowsVirtualMachineScaleSet resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: WindowsVirtualMachineScaleSetState, opts?: pulumi.CustomResourceOptions): WindowsVirtualMachineScaleSetGet an existing WindowsVirtualMachineScaleSet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is WindowsVirtualMachineScaleSetReturns true if the given object is an instance of WindowsVirtualMachineScaleSet. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property additionalCapabilities
public additionalCapabilities: pulumi.Output<WindowsVirtualMachineScaleSetAdditionalCapabilities | undefined>;A additionalCapabilities block as defined below.
property additionalUnattendContents
public additionalUnattendContents: pulumi.Output<WindowsVirtualMachineScaleSetAdditionalUnattendContent[] | undefined>;One or more additionalUnattendContent blocks as defined below.
property adminPassword
public adminPassword: pulumi.Output<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminUsername
public adminUsername: pulumi.Output<string>;The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
property automaticInstanceRepair
public automaticInstanceRepair: pulumi.Output<WindowsVirtualMachineScaleSetAutomaticInstanceRepair>;A automaticInstanceRepair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid healthProbeId or an Application Health Extension.
property automaticOsUpgradePolicy
public automaticOsUpgradePolicy: pulumi.Output<WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicy | undefined>;A automaticOsUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic.
property bootDiagnostics
public bootDiagnostics: pulumi.Output<WindowsVirtualMachineScaleSetBootDiagnostics | undefined>;A bootDiagnostics block as defined below.
property computerNamePrefix
public computerNamePrefix: pulumi.Output<string>;The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerNamePrefix, then you must specify computerNamePrefix.
property customData
public customData: pulumi.Output<string | undefined>;The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
property dataDisks
public dataDisks: pulumi.Output<WindowsVirtualMachineScaleSetDataDisk[] | undefined>;One or more dataDisk blocks as defined below.
property doNotRunExtensionsOnOverprovisionedMachines
public doNotRunExtensionsOnOverprovisionedMachines: pulumi.Output<boolean | undefined>;Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
property enableAutomaticUpdates
public enableAutomaticUpdates: pulumi.Output<boolean | undefined>;Are automatic updates enabled for this Virtual Machine? Defaults to true.
property evictionPolicy
public evictionPolicy: pulumi.Output<string | undefined>;The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.
property healthProbeId
public healthProbeId: pulumi.Output<string | undefined>;The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property identity
public identity: pulumi.Output<WindowsVirtualMachineScaleSetIdentity | undefined>;A identity block as defined below.
property instances
public instances: pulumi.Output<number>;The number of Virtual Machines in the Scale Set.
property licenseType
public licenseType: pulumi.Output<string | undefined>;Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server. Changing this forces a new resource to be created.
property location
public location: pulumi.Output<string>;The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property maxBidPrice
public maxBidPrice: pulumi.Output<number | undefined>;The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the evictionPolicy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
property name
public name: pulumi.Output<string>;The name of the Windows Virtual Machine Scale Set. Changing this forces a new resource to be created.
property networkInterfaces
public networkInterfaces: pulumi.Output<WindowsVirtualMachineScaleSetNetworkInterface[]>;One or more networkInterface blocks as defined below.
property osDisk
public osDisk: pulumi.Output<WindowsVirtualMachineScaleSetOsDisk>;An osDisk block as defined below.
property overprovision
public overprovision: pulumi.Output<boolean | undefined>;Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.
property plan
public plan: pulumi.Output<WindowsVirtualMachineScaleSetPlan | undefined>;property priority
public priority: pulumi.Output<string | undefined>;The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
property provisionVmAgent
public provisionVmAgent: pulumi.Output<boolean | undefined>;Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
property proximityPlacementGroupId
public proximityPlacementGroupId: pulumi.Output<string | undefined>;The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
property resourceGroupName
public resourceGroupName: pulumi.Output<string>;The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
property rollingUpgradePolicy
public rollingUpgradePolicy: pulumi.Output<WindowsVirtualMachineScaleSetRollingUpgradePolicy | undefined>;A rollingUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property scaleInPolicy
public scaleInPolicy: pulumi.Output<string | undefined>;The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
property secrets
public secrets: pulumi.Output<WindowsVirtualMachineScaleSetSecret[] | undefined>;One or more secret blocks as defined below.
property singlePlacementGroup
public singlePlacementGroup: pulumi.Output<boolean | undefined>;Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
property sku
public sku: pulumi.Output<string>;The Virtual Machine SKU for the Scale Set, such as Standard_F2.
property sourceImageId
public sourceImageId: pulumi.Output<string | undefined>;The ID of an Image which each Virtual Machine in this Scale Set should be based on.
property sourceImageReference
public sourceImageReference: pulumi.Output<WindowsVirtualMachineScaleSetSourceImageReference | undefined>;A sourceImageReference block as defined below.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;A mapping of tags which should be assigned to this Virtual Machine Scale Set.
property terminateNotification
public terminateNotification: pulumi.Output<WindowsVirtualMachineScaleSetTerminateNotification>;A terminateNotification block as defined below.
property timezone
public timezone: pulumi.Output<string | undefined>;Specifies the time zone of the virtual machine, the possible values are defined here.
property uniqueId
public uniqueId: pulumi.Output<string>;The Unique ID for this Windows Virtual Machine Scale Set.
property upgradeMode
public upgradeMode: pulumi.Output<string | undefined>;Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property winrmListeners
public winrmListeners: pulumi.Output<WindowsVirtualMachineScaleSetWinrmListener[] | undefined>;One or more winrmListener blocks as defined below.
property zoneBalance
public zoneBalance: pulumi.Output<boolean | undefined>;Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
property zones
public zones: pulumi.Output<string[] | undefined>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
Functions
Function getAvailabilitySet
getAvailabilitySet(args: GetAvailabilitySetArgs, opts?: pulumi.InvokeOptions): Promise<GetAvailabilitySetResult>Use this data source to access information about an existing Availability Set.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.compute.getAvailabilitySet({
name: "tf-appsecuritygroup",
resourceGroupName: "my-resource-group",
});
export const availabilitySetId = example.then(example => example.id);Function getDedicatedHost
getDedicatedHost(args: GetDedicatedHostArgs, opts?: pulumi.InvokeOptions): Promise<GetDedicatedHostResult>Use this data source to access information about an existing Dedicated Host.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.compute.getDedicatedHost({
name: "example-host",
dedicatedHostGroupName: "example-host-group",
resourceGroupName: "example-resources",
});
export const dedicatedHostId = example.then(example => example.id);Function getDedicatedHostGroup
getDedicatedHostGroup(args: GetDedicatedHostGroupArgs, opts?: pulumi.InvokeOptions): Promise<GetDedicatedHostGroupResult>Use this data source to access information about an existing Dedicated Host Group.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.compute.getDedicatedHostGroup({
name: "example-dedicated-host-group",
resourceGroupName: "example-rg",
});
export const id = example.then(example => example.id);Function getDiskEncryptionSet
getDiskEncryptionSet(args: GetDiskEncryptionSetArgs, opts?: pulumi.InvokeOptions): Promise<GetDiskEncryptionSetResult>Use this data source to access information about an existing Disk Encryption Set.
Function getImage
getImage(args: GetImageArgs, opts?: pulumi.InvokeOptions): Promise<GetImageResult>Use this data source to access information about an existing Image.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const search = azure.compute.getImage({
name: "search-api",
resourceGroupName: "packerimages",
});
export const imageId = search.then(search => search.id);Function getManagedDisk
getManagedDisk(args: GetManagedDiskArgs, opts?: pulumi.InvokeOptions): Promise<GetManagedDiskResult>Use this data source to access information about an existing Managed Disk.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const existing = azure.compute.getManagedDisk({
name: "example-datadisk",
resourceGroupName: "example-resources",
});
export const id = existing.then(existing => existing.id);Function getPlatformImage
getPlatformImage(args: GetPlatformImageArgs, opts?: pulumi.InvokeOptions): Promise<GetPlatformImageResult>Use this data source to access information about a Platform Image.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.compute.getPlatformImage({
location: "West Europe",
publisher: "Canonical",
offer: "UbuntuServer",
sku: "16.04-LTS",
});
export const id = example.then(example => example.id);Function getSharedImage
getSharedImage(args: GetSharedImageArgs, opts?: pulumi.InvokeOptions): Promise<GetSharedImageResult>Use this data source to access information about an existing Shared Image within a Shared Image Gallery.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = pulumi.output(azure.compute.getSharedImage({
galleryName: "my-image-gallery",
name: "my-image",
resourceGroupName: "example-resources",
}, { async: true }));Function getSharedImageGallery
getSharedImageGallery(args: GetSharedImageGalleryArgs, opts?: pulumi.InvokeOptions): Promise<GetSharedImageGalleryResult>Use this data source to access information about an existing Shared Image Gallery.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = pulumi.output(azure.compute.getSharedImageGallery({
name: "my-image-gallery",
resourceGroupName: "example-resources",
}, { async: true }));Function getSharedImageVersion
getSharedImageVersion(args: GetSharedImageVersionArgs, opts?: pulumi.InvokeOptions): Promise<GetSharedImageVersionResult>Use this data source to access information about an existing Version of a Shared Image within a Shared Image Gallery.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = pulumi.output(azure.compute.getSharedImageVersion({
galleryName: "my-image-gallery",
imageName: "my-image",
name: "1.0.0",
resourceGroupName: "example-resources",
}, { async: true }));Function getSharedImageVersions
getSharedImageVersions(args: GetSharedImageVersionsArgs, opts?: pulumi.InvokeOptions): Promise<GetSharedImageVersionsResult>Use this data source to access information about existing Versions of a Shared Image within a Shared Image Gallery.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = pulumi.output(azure.compute.getSharedImageVersions({
galleryName: "my-image-gallery",
imageName: "my-image",
resourceGroupName: "example-resources",
}, { async: true }));Function getSnapshot
getSnapshot(args: GetSnapshotArgs, opts?: pulumi.InvokeOptions): Promise<GetSnapshotResult>Use this data source to access information about an existing Snapshot.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = pulumi.output(azure.compute.getSnapshot({
name: "my-snapshot",
resourceGroupName: "my-resource-group",
}, { async: true }));Function getVirtualMachine
getVirtualMachine(args: GetVirtualMachineArgs, opts?: pulumi.InvokeOptions): Promise<GetVirtualMachineResult>Use this data source to access information about an existing Virtual Machine.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.compute.getVirtualMachine({
name: "production",
resourceGroupName: "networking",
});
export const virtualMachineId = example.then(example => example.id);Function getVirtualMachineScaleSet
getVirtualMachineScaleSet(args: GetVirtualMachineScaleSetArgs, opts?: pulumi.InvokeOptions): Promise<GetVirtualMachineScaleSetResult>Use this data source to access information about an existing Virtual Machine Scale Set.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.compute.getVirtualMachineScaleSet({
name: "existing",
resourceGroupName: "existing",
});
export const id = example.then(example => example.id);Others
interface AvailabilitySetArgs
interface AvailabilitySetArgsThe set of arguments for constructing a AvailabilitySet resource.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property managed
managed?: pulumi.Input<boolean>;Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true.
property name
name?: pulumi.Input<string>;Specifies the name of the availability set. Changing this forces a new resource to be created.
property platformFaultDomainCount
platformFaultDomainCount?: pulumi.Input<number>;Specifies the number of fault domains that are used. Defaults to 3.
property platformUpdateDomainCount
platformUpdateDomainCount?: pulumi.Input<number>;Specifies the number of update domains that are used. Defaults to 5.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
interface AvailabilitySetState
interface AvailabilitySetStateInput properties used for looking up and filtering AvailabilitySet resources.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property managed
managed?: pulumi.Input<boolean>;Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true.
property name
name?: pulumi.Input<string>;Specifies the name of the availability set. Changing this forces a new resource to be created.
property platformFaultDomainCount
platformFaultDomainCount?: pulumi.Input<number>;Specifies the number of fault domains that are used. Defaults to 3.
property platformUpdateDomainCount
platformUpdateDomainCount?: pulumi.Input<number>;Specifies the number of update domains that are used. Defaults to 5.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
interface BastionHostArgs
interface BastionHostArgsThe set of arguments for constructing a BastionHost resource.
property ipConfiguration
ipConfiguration?: pulumi.Input<BastionHostIpConfiguration>;A ipConfiguration block as defined below.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Bastion Host. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the resource group in which to create the Bastion Host.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
interface BastionHostState
interface BastionHostStateInput properties used for looking up and filtering BastionHost resources.
property dnsName
dnsName?: pulumi.Input<string>;The FQDN for the Bastion Host.
property ipConfiguration
ipConfiguration?: pulumi.Input<BastionHostIpConfiguration>;A ipConfiguration block as defined below.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Bastion Host. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the resource group in which to create the Bastion Host.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
interface DataDiskAttachmentArgs
interface DataDiskAttachmentArgsThe set of arguments for constructing a DataDiskAttachment resource.
property caching
caching: pulumi.Input<string>;Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.
property createOption
createOption?: pulumi.Input<string>;The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.
property lun
lun: pulumi.Input<number>;The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
property managedDiskId
managedDiskId: pulumi.Input<string>;The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
property virtualMachineId
virtualMachineId: pulumi.Input<string>;The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
property writeAcceleratorEnabled
writeAcceleratorEnabled?: pulumi.Input<boolean>;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 to false.
interface DataDiskAttachmentState
interface DataDiskAttachmentStateInput properties used for looking up and filtering DataDiskAttachment resources.
property caching
caching?: pulumi.Input<string>;Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.
property createOption
createOption?: pulumi.Input<string>;The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.
property lun
lun?: pulumi.Input<number>;The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
property managedDiskId
managedDiskId?: pulumi.Input<string>;The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
property virtualMachineId
virtualMachineId?: pulumi.Input<string>;The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
property writeAcceleratorEnabled
writeAcceleratorEnabled?: pulumi.Input<boolean>;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 to false.
interface DedicatedHostArgs
interface DedicatedHostArgsThe set of arguments for constructing a DedicatedHost resource.
property autoReplaceOnFailure
autoReplaceOnFailure?: pulumi.Input<boolean>;Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true.
property dedicatedHostGroupId
dedicatedHostGroupId: pulumi.Input<string>;Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.
property licenseType
licenseType?: pulumi.Input<string>;Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. Defaults to None.
property location
location?: pulumi.Input<string>;Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of this Dedicated Host. Changing this forces a new resource to be created.
property platformFaultDomain
platformFaultDomain: pulumi.Input<number>;Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
property skuName
skuName: pulumi.Input<string>;Specify the sku name of the Dedicated Host. Possible values are DSv3-Type1, DSv3-Type2, ESv3-Type1, ESv3-Type2,FSv2-Type2. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
interface DedicatedHostGroupArgs
interface DedicatedHostGroupArgsThe set of arguments for constructing a DedicatedHostGroup resource.
property location
location?: pulumi.Input<string>;The Azure location where the Dedicated Host Group exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Dedicated Host Group. Changing this forces a new resource to be created.
property platformFaultDomainCount
platformFaultDomainCount: pulumi.Input<number>;The number of fault domains that the Dedicated Host Group spans. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;Specifies the name of the resource group the Dedicated Host Group is located in. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property zones
zones?: pulumi.Input<string>;A list of Availability Zones in which the Dedicated Host Group should be located. Changing this forces a new resource to be created.
interface DedicatedHostGroupState
interface DedicatedHostGroupStateInput properties used for looking up and filtering DedicatedHostGroup resources.
property location
location?: pulumi.Input<string>;The Azure location where the Dedicated Host Group exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Dedicated Host Group. Changing this forces a new resource to be created.
property platformFaultDomainCount
platformFaultDomainCount?: pulumi.Input<number>;The number of fault domains that the Dedicated Host Group spans. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;Specifies the name of the resource group the Dedicated Host Group is located in. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property zones
zones?: pulumi.Input<string>;A list of Availability Zones in which the Dedicated Host Group should be located. Changing this forces a new resource to be created.
interface DedicatedHostState
interface DedicatedHostStateInput properties used for looking up and filtering DedicatedHost resources.
property autoReplaceOnFailure
autoReplaceOnFailure?: pulumi.Input<boolean>;Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true.
property dedicatedHostGroupId
dedicatedHostGroupId?: pulumi.Input<string>;Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.
property licenseType
licenseType?: pulumi.Input<string>;Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. Defaults to None.
property location
location?: pulumi.Input<string>;Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of this Dedicated Host. Changing this forces a new resource to be created.
property platformFaultDomain
platformFaultDomain?: pulumi.Input<number>;Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
property skuName
skuName?: pulumi.Input<string>;Specify the sku name of the Dedicated Host. Possible values are DSv3-Type1, DSv3-Type2, ESv3-Type1, ESv3-Type2,FSv2-Type2. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
interface DiskEncryptionSetArgs
interface DiskEncryptionSetArgsThe set of arguments for constructing a DiskEncryptionSet resource.
property identity
identity: pulumi.Input<DiskEncryptionSetIdentity>;A identity block defined below.
property keyVaultKeyId
keyVaultKeyId: pulumi.Input<string>;Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
property location
location?: pulumi.Input<string>;Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;The name of the Disk Encryption Set. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;Specifies the name of the Resource Group where the Disk Encryption Set should exist. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the Disk Encryption Set.
interface DiskEncryptionSetState
interface DiskEncryptionSetStateInput properties used for looking up and filtering DiskEncryptionSet resources.
property identity
identity?: pulumi.Input<DiskEncryptionSetIdentity>;A identity block defined below.
property keyVaultKeyId
keyVaultKeyId?: pulumi.Input<string>;Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
property location
location?: pulumi.Input<string>;Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;The name of the Disk Encryption Set. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;Specifies the name of the Resource Group where the Disk Encryption Set should exist. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the Disk Encryption Set.
interface ExtensionArgs
interface ExtensionArgsThe set of arguments for constructing a Extension resource.
property autoUpgradeMinorVersion
autoUpgradeMinorVersion?: pulumi.Input<boolean>;Specifies if the platform deploys
the latest minor version update to the typeHandlerVersion specified.
property name
name?: pulumi.Input<string>;The name of the virtual machine extension peering. Changing this forces a new resource to be created.
property protectedSettings
protectedSettings?: pulumi.Input<string>;The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.
property publisher
publisher: pulumi.Input<string>;The publisher of the extension, available publishers can be found by using the Azure CLI.
property settings
settings?: pulumi.Input<string>;The settings passed to the extension, these are specified as a JSON object in a string.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property type
type: pulumi.Input<string>;The type of extension, available types for a publisher can be found using the Azure CLI.
property typeHandlerVersion
typeHandlerVersion: pulumi.Input<string>;Specifies the version of the extension to use, available versions can be found using the Azure CLI.
property virtualMachineId
virtualMachineId: pulumi.Input<string>;The ID of the Virtual Machine. Changing this forces a new resource to be created
interface ExtensionState
interface ExtensionStateInput properties used for looking up and filtering Extension resources.
property autoUpgradeMinorVersion
autoUpgradeMinorVersion?: pulumi.Input<boolean>;Specifies if the platform deploys
the latest minor version update to the typeHandlerVersion specified.
property name
name?: pulumi.Input<string>;The name of the virtual machine extension peering. Changing this forces a new resource to be created.
property protectedSettings
protectedSettings?: pulumi.Input<string>;The protectedSettings passed to the extension, like settings, these are specified as a JSON object in a string.
property publisher
publisher?: pulumi.Input<string>;The publisher of the extension, available publishers can be found by using the Azure CLI.
property settings
settings?: pulumi.Input<string>;The settings passed to the extension, these are specified as a JSON object in a string.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property type
type?: pulumi.Input<string>;The type of extension, available types for a publisher can be found using the Azure CLI.
property typeHandlerVersion
typeHandlerVersion?: pulumi.Input<string>;Specifies the version of the extension to use, available versions can be found using the Azure CLI.
property virtualMachineId
virtualMachineId?: pulumi.Input<string>;The ID of the Virtual Machine. Changing this forces a new resource to be created
interface GetAvailabilitySetArgs
interface GetAvailabilitySetArgsA collection of arguments for invoking getAvailabilitySet.
property name
name: string;The name of the Availability Set.
property resourceGroupName
resourceGroupName: string;The name of the resource group in which the Availability Set exists.
interface GetAvailabilitySetResult
interface GetAvailabilitySetResultA collection of values returned by getAvailabilitySet.
property id
id: string;The provider-assigned unique ID for this managed resource.
property location
location: string;The supported Azure location where the Availability Set exists.
property managed
managed: boolean;Whether the availability set is managed or not.
property name
name: string;property platformFaultDomainCount
platformFaultDomainCount: string;The number of fault domains that are used.
property platformUpdateDomainCount
platformUpdateDomainCount: string;The number of update domains that are used.
property resourceGroupName
resourceGroupName: string;property tags
tags: {[key: string]: string};A mapping of tags assigned to the resource.
interface GetDedicatedHostArgs
interface GetDedicatedHostArgsA collection of arguments for invoking getDedicatedHost.
property dedicatedHostGroupName
dedicatedHostGroupName: string;Specifies the name of the Dedicated Host Group the Dedicated Host is located in.
property name
name: string;Specifies the name of the Dedicated Host.
property resourceGroupName
resourceGroupName: string;Specifies the name of the resource group the Dedicated Host is located in.
interface GetDedicatedHostGroupArgs
interface GetDedicatedHostGroupArgsA collection of arguments for invoking getDedicatedHostGroup.
property name
name: string;Specifies the name of the Dedicated Host Group.
property resourceGroupName
resourceGroupName: string;Specifies the name of the resource group the Dedicated Host Group is located in.
interface GetDedicatedHostGroupResult
interface GetDedicatedHostGroupResultA collection of values returned by getDedicatedHostGroup.
property id
id: string;The provider-assigned unique ID for this managed resource.
property location
location: string;The Azure location where the Dedicated Host Group exists.
property name
name: string;property platformFaultDomainCount
platformFaultDomainCount: number;The number of fault domains that the Dedicated Host Group spans.
property resourceGroupName
resourceGroupName: string;property tags
tags: {[key: string]: string};A mapping of tags assigned to the resource.
property zones
zones: string[];The Availability Zones in which this Dedicated Host Group is located.
interface GetDedicatedHostResult
interface GetDedicatedHostResultA collection of values returned by getDedicatedHost.
property dedicatedHostGroupName
dedicatedHostGroupName: string;property id
id: string;The provider-assigned unique ID for this managed resource.
property location
location: string;The location where the Dedicated Host exists.
property name
name: string;property resourceGroupName
resourceGroupName: string;property tags
tags: {[key: string]: string};A mapping of tags assigned to the Dedicated Host.
interface GetDiskEncryptionSetArgs
interface GetDiskEncryptionSetArgsA collection of arguments for invoking getDiskEncryptionSet.
property name
name: string;The name of the Disk Encryption Set exists.
property resourceGroupName
resourceGroupName: string;The name of the Resource Group where the Disk Encryption Set exists.
interface GetDiskEncryptionSetResult
interface GetDiskEncryptionSetResultA collection of values returned by getDiskEncryptionSet.
property id
id: string;The provider-assigned unique ID for this managed resource.
property location
location: string;The location where the Disk Encryption Set exists.
property name
name: string;property resourceGroupName
resourceGroupName: string;property tags
tags: {[key: string]: string};A mapping of tags assigned to the Disk Encryption Set.
interface GetImageArgs
interface GetImageArgsA collection of arguments for invoking getImage.
property name
name?: undefined | string;The name of the Image.
property nameRegex
nameRegex?: undefined | string;Regex pattern of the image to match.
property resourceGroupName
resourceGroupName: string;The Name of the Resource Group where this Image exists.
property sortDescending
sortDescending?: undefined | false | true;By default when matching by regex, images are sorted by name in ascending order and the first match is chosen, to sort descending, set this flag.
interface GetImageResult
interface GetImageResultA collection of values returned by getImage.
property dataDisks
dataDisks: GetImageDataDisk[];a collection of dataDisk blocks as defined below.
property id
id: string;The provider-assigned unique ID for this managed resource.
property location
location: string;the Azure Location where this Image exists.
property name
name?: undefined | string;the name of the Image.
property nameRegex
nameRegex?: undefined | string;property osDisks
osDisks: GetImageOsDisk[];a osDisk block as defined below.
property resourceGroupName
resourceGroupName: string;property sortDescending
sortDescending?: undefined | false | true;property tags
tags: {[key: string]: string};a mapping of tags to assigned to the resource.
property zoneResilient
zoneResilient: boolean;is zone resiliency enabled?
interface GetManagedDiskArgs
interface GetManagedDiskArgsA collection of arguments for invoking getManagedDisk.
property name
name: string;Specifies the name of the Managed Disk.
property resourceGroupName
resourceGroupName: string;Specifies the name of the Resource Group where this Managed Disk exists.
property tags
tags?: undefined | {[key: string]: string};A mapping of tags assigned to the resource.
property zones
zones?: string[];A list of Availability Zones where the Managed Disk exists.
interface GetManagedDiskResult
interface GetManagedDiskResultA collection of values returned by getManagedDisk.
property createOption
createOption: string;property diskEncryptionSetId
diskEncryptionSetId: string;The ID of the Disk Encryption Set used to encrypt this Managed Disk.
property diskIopsReadWrite
diskIopsReadWrite: number;The number of IOPS allowed for this disk, where one operation can transfer between 4k and 256k bytes.
property diskMbpsReadWrite
diskMbpsReadWrite: number;The bandwidth allowed for this disk.
property diskSizeGb
diskSizeGb: number;The size of the Managed Disk in gigabytes.
property id
id: string;The provider-assigned unique ID for this managed resource.
property name
name: string;property osType
osType: string;The operating system used for this Managed Disk.
property resourceGroupName
resourceGroupName: string;property sourceResourceId
sourceResourceId: string;The ID of an existing Managed Disk which this Disk was created from.
property sourceUri
sourceUri: string;The Source URI for this Managed Disk.
property storageAccountId
storageAccountId: string;The ID of the Storage Account where the sourceUri is located.
property storageAccountType
storageAccountType: string;The storage account type for the Managed Disk.
property tags
tags?: undefined | {[key: string]: string};A mapping of tags assigned to the resource.
property zones
zones: string[];A list of Availability Zones where the Managed Disk exists.
interface GetPlatformImageArgs
interface GetPlatformImageArgsA collection of arguments for invoking getPlatformImage.
property location
location: string;Specifies the Location to pull information about this Platform Image from.
property offer
offer: string;Specifies the Offer associated with the Platform Image.
property publisher
publisher: string;Specifies the Publisher associated with the Platform Image.
property sku
sku: string;Specifies the SKU of the Platform Image.
property version
version?: undefined | string;The version of the Platform Image.
interface GetPlatformImageResult
interface GetPlatformImageResultA collection of values returned by getPlatformImage.
property id
id: string;The provider-assigned unique ID for this managed resource.
property location
location: string;property offer
offer: string;property publisher
publisher: string;property sku
sku: string;property version
version: string;interface GetSharedImageArgs
interface GetSharedImageArgsA collection of arguments for invoking getSharedImage.
property galleryName
galleryName: string;The name of the Shared Image Gallery in which the Shared Image exists.
property name
name: string;The name of the Shared Image.
property resourceGroupName
resourceGroupName: string;The name of the Resource Group in which the Shared Image Gallery exists.
interface GetSharedImageGalleryArgs
interface GetSharedImageGalleryArgsA collection of arguments for invoking getSharedImageGallery.
property name
name: string;The name of the Shared Image Gallery.
property resourceGroupName
resourceGroupName: string;The name of the Resource Group in which the Shared Image Gallery exists.
interface GetSharedImageGalleryResult
interface GetSharedImageGalleryResultA collection of values returned by getSharedImageGallery.
property description
description: string;A description for the Shared Image Gallery.
property id
id: string;The provider-assigned unique ID for this managed resource.
property location
location: string;property name
name: string;property resourceGroupName
resourceGroupName: string;property tags
tags: {[key: string]: string};A mapping of tags which are assigned to the Shared Image Gallery.
property uniqueName
uniqueName: string;The unique name assigned to the Shared Image Gallery.
interface GetSharedImageResult
interface GetSharedImageResultA collection of values returned by getSharedImage.
property description
description: string;The description of this Shared Image.
property eula
eula: string;The End User Licence Agreement for the Shared Image.
property galleryName
galleryName: string;property hyperVGeneration
hyperVGeneration: string;The generation of HyperV that the Virtual Machine used to create the Shared Image is based on.
property id
id: string;The provider-assigned unique ID for this managed resource.
property identifiers
identifiers: GetSharedImageIdentifier[];An identifier block as defined below.
property location
location: string;The supported Azure location where the Shared Image Gallery exists.
property name
name: string;property osType
osType: string;The type of Operating System present in this Shared Image.
property privacyStatementUri
privacyStatementUri: string;The URI containing the Privacy Statement for this Shared Image.
property releaseNoteUri
releaseNoteUri: string;The URI containing the Release Notes for this Shared Image.
property resourceGroupName
resourceGroupName: string;property tags
tags: {[key: string]: string};A mapping of tags assigned to the Shared Image.
interface GetSharedImageVersionArgs
interface GetSharedImageVersionArgsA collection of arguments for invoking getSharedImageVersion.
property galleryName
galleryName: string;The name of the Shared Image in which the Shared Image exists.
property imageName
imageName: string;The name of the Shared Image in which this Version exists.
property name
name: string;The name of the Image Version.
property resourceGroupName
resourceGroupName: string;The name of the Resource Group in which the Shared Image Gallery exists.
interface GetSharedImageVersionResult
interface GetSharedImageVersionResultA collection of values returned by getSharedImageVersion.
property excludeFromLatest
excludeFromLatest: boolean;Is this Image Version excluded from the latest filter?
property galleryName
galleryName: string;property id
id: string;The provider-assigned unique ID for this managed resource.
property imageName
imageName: string;property location
location: string;The supported Azure location where the Shared Image Gallery exists.
property managedImageId
managedImageId: string;The ID of the Managed Image which was the source of this Shared Image Version.
property name
name: string;The Azure Region in which this Image Version exists.
property resourceGroupName
resourceGroupName: string;property tags
tags: {[key: string]: string};A mapping of tags assigned to the Shared Image.
property targetRegions
targetRegions: GetSharedImageVersionTargetRegion[];One or more targetRegion blocks as documented below.
interface GetSharedImageVersionsArgs
interface GetSharedImageVersionsArgsA collection of arguments for invoking getSharedImageVersions.
property galleryName
galleryName: string;The name of the Shared Image in which the Shared Image exists.
property imageName
imageName: string;The name of the Shared Image in which this Version exists.
property resourceGroupName
resourceGroupName: string;The name of the Resource Group in which the Shared Image Gallery exists.
property tagsFilter
tagsFilter?: undefined | {[key: string]: string};A mapping of tags to filter the list of images against.
interface GetSharedImageVersionsResult
interface GetSharedImageVersionsResultA collection of values returned by getSharedImageVersions.
property galleryName
galleryName: string;property id
id: string;The provider-assigned unique ID for this managed resource.
property imageName
imageName: string;property images
images: GetSharedImageVersionsImage[];An images block as defined below:
property resourceGroupName
resourceGroupName: string;property tagsFilter
tagsFilter?: undefined | {[key: string]: string};interface GetSnapshotArgs
interface GetSnapshotArgsA collection of arguments for invoking getSnapshot.
property name
name: string;Specifies the name of the Snapshot.
property resourceGroupName
resourceGroupName: string;Specifies the name of the resource group the Snapshot is located in.
interface GetSnapshotResult
interface GetSnapshotResultA collection of values returned by getSnapshot.
property creationOption
creationOption: string;property diskSizeGb
diskSizeGb: number;The size of the Snapshotted Disk in GB.
property encryptionSettings
encryptionSettings: GetSnapshotEncryptionSetting[];property id
id: string;The provider-assigned unique ID for this managed resource.
property name
name: string;property osType
osType: string;property resourceGroupName
resourceGroupName: string;property sourceResourceId
sourceResourceId: string;The reference to an existing snapshot.
property sourceUri
sourceUri: string;The URI to a Managed or Unmanaged Disk.
property storageAccountId
storageAccountId: string;The ID of an storage account.
property timeCreated
timeCreated: string;interface GetVirtualMachineArgs
interface GetVirtualMachineArgsA collection of arguments for invoking getVirtualMachine.
property name
name: string;Specifies the name of the Virtual Machine.
property resourceGroupName
resourceGroupName: string;Specifies the name of the resource group the Virtual Machine is located in.
interface GetVirtualMachineResult
interface GetVirtualMachineResultA collection of values returned by getVirtualMachine.
property id
id: string;The provider-assigned unique ID for this managed resource.
property identities
identities: GetVirtualMachineIdentity[];A identity block as defined below.
property location
location: string;property name
name: string;property resourceGroupName
resourceGroupName: string;interface GetVirtualMachineScaleSetArgs
interface GetVirtualMachineScaleSetArgsA collection of arguments for invoking getVirtualMachineScaleSet.
property name
name: string;The name of this Virtual Machine Scale Set.
property resourceGroupName
resourceGroupName: string;The name of the Resource Group where the Virtual Machine Scale Set exists.
interface GetVirtualMachineScaleSetResult
interface GetVirtualMachineScaleSetResultA collection of values returned by getVirtualMachineScaleSet.
property id
id: string;The provider-assigned unique ID for this managed resource.
property identities
identities: GetVirtualMachineScaleSetIdentity[];A identity block as defined below.
property location
location: string;property name
name: string;property resourceGroupName
resourceGroupName: string;interface ImageArgs
interface ImageArgsThe set of arguments for constructing a Image resource.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<ImageDataDisk>[]>;One or more dataDisk elements as defined below.
property hyperVGeneration
hyperVGeneration?: pulumi.Input<string>;The HyperVGenerationType of the VirtualMachine created from the image as V1, V2. The default is V1.
property location
location?: pulumi.Input<string>;Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the image. Changing this forces a new resource to be created.
property osDisk
osDisk?: pulumi.Input<ImageOsDisk>;One or more osDisk elements as defined below.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the resource group in which to create the image. Changing this forces a new resource to be created.
property sourceVirtualMachineId
sourceVirtualMachineId?: pulumi.Input<string>;The Virtual Machine ID from which to create the image.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property zoneResilient
zoneResilient?: pulumi.Input<boolean>;Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.
interface ImageState
interface ImageStateInput properties used for looking up and filtering Image resources.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<ImageDataDisk>[]>;One or more dataDisk elements as defined below.
property hyperVGeneration
hyperVGeneration?: pulumi.Input<string>;The HyperVGenerationType of the VirtualMachine created from the image as V1, V2. The default is V1.
property location
location?: pulumi.Input<string>;Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the image. Changing this forces a new resource to be created.
property osDisk
osDisk?: pulumi.Input<ImageOsDisk>;One or more osDisk elements as defined below.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the resource group in which to create the image. Changing this forces a new resource to be created.
property sourceVirtualMachineId
sourceVirtualMachineId?: pulumi.Input<string>;The Virtual Machine ID from which to create the image.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property zoneResilient
zoneResilient?: pulumi.Input<boolean>;Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.
interface LinuxVirtualMachineArgs
interface LinuxVirtualMachineArgsThe set of arguments for constructing a LinuxVirtualMachine resource.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<LinuxVirtualMachineAdditionalCapabilities>;A additionalCapabilities block as defined below.
property adminPassword
adminPassword?: pulumi.Input<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminSshKeys
adminSshKeys?: pulumi.Input<pulumi.Input<LinuxVirtualMachineAdminSshKey>[]>;One or more adminSshKey blocks as defined below.
property adminUsername
adminUsername: pulumi.Input<string>;The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
property allowExtensionOperations
allowExtensionOperations?: pulumi.Input<boolean>;Should Extension Operations be allowed on this Virtual Machine? Changing this forces a new resource to be created.
property availabilitySetId
availabilitySetId?: pulumi.Input<string>;Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<LinuxVirtualMachineBootDiagnostics>;A bootDiagnostics block as defined below.
property computerName
computerName?: pulumi.Input<string>;Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerName, then you must specify computerName. Changing this forces a new resource to be created.
property customData
customData?: pulumi.Input<string>;The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
property dedicatedHostId
dedicatedHostId?: pulumi.Input<string>;The ID of a Dedicated Host where this machine should be run on. Changing this forces a new resource to be created.
property disablePasswordAuthentication
disablePasswordAuthentication?: pulumi.Input<boolean>;Should Password Authentication be disabled on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. At this time the only supported value is Deallocate. Changing this forces a new resource to be created.
property identity
identity?: pulumi.Input<LinuxVirtualMachineIdentity>;An identity block as defined below.
property location
location?: pulumi.Input<string>;The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
property maxBidPrice
maxBidPrice?: pulumi.Input<number>;The maximum price you’re willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the evictionPolicy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
property name
name?: pulumi.Input<string>;The name of the Linux Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
networkInterfaceIds: pulumi.Input<pulumi.Input<string>[]>;. A list of Network Interface ID’s which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
property osDisk
osDisk: pulumi.Input<LinuxVirtualMachineOsDisk>;A osDisk block as defined below.
property plan
plan?: pulumi.Input<LinuxVirtualMachinePlan>;A plan block as defined below. Changing this forces a new resource to be created.
property priority
priority?: pulumi.Input<string>;Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
property provisionVmAgent
provisionVmAgent?: pulumi.Input<boolean>;Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.
property secrets
secrets?: pulumi.Input<pulumi.Input<LinuxVirtualMachineSecret>[]>;One or more secret blocks as defined below.
property size
size: pulumi.Input<string>;The SKU which should be used for this Virtual Machine, such as Standard_F2.
property sourceImageId
sourceImageId?: pulumi.Input<string>;The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created.
property sourceImageReference
sourceImageReference?: pulumi.Input<LinuxVirtualMachineSourceImageReference>;A sourceImageReference block as defined below. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Virtual Machine.
property virtualMachineScaleSetId
virtualMachineScaleSetId?: pulumi.Input<string>;Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created.
property zone
zone?: pulumi.Input<string>;The Zone in which this Virtual Machine should be created. Changing this forces a new resource to be created.
interface LinuxVirtualMachineScaleSetArgs
interface LinuxVirtualMachineScaleSetArgsThe set of arguments for constructing a LinuxVirtualMachineScaleSet resource.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<LinuxVirtualMachineScaleSetAdditionalCapabilities>;A additionalCapabilities block as defined below.
property adminPassword
adminPassword?: pulumi.Input<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminSshKeys
adminSshKeys?: pulumi.Input<pulumi.Input<LinuxVirtualMachineScaleSetAdminSshKey>[]>;One or more adminSshKey blocks as defined below.
property adminUsername
adminUsername: pulumi.Input<string>;The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
property automaticInstanceRepair
automaticInstanceRepair?: pulumi.Input<LinuxVirtualMachineScaleSetAutomaticInstanceRepair>;A automaticInstanceRepair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid healthProbeId or an Application Health Extension.
property automaticOsUpgradePolicy
automaticOsUpgradePolicy?: pulumi.Input<LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy>;A automaticOsUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<LinuxVirtualMachineScaleSetBootDiagnostics>;A bootDiagnostics block as defined below.
property computerNamePrefix
computerNamePrefix?: pulumi.Input<string>;The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerNamePrefix, then you must specify computerNamePrefix.
property customData
customData?: pulumi.Input<string>;The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<LinuxVirtualMachineScaleSetDataDisk>[]>;One or more dataDisk blocks as defined below.
property disablePasswordAuthentication
disablePasswordAuthentication?: pulumi.Input<boolean>;Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.
property doNotRunExtensionsOnOverprovisionedMachines
doNotRunExtensionsOnOverprovisionedMachines?: pulumi.Input<boolean>;Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.
property healthProbeId
healthProbeId?: pulumi.Input<string>;The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property identity
identity?: pulumi.Input<LinuxVirtualMachineScaleSetIdentity>;A identity block as defined below.
property instances
instances: pulumi.Input<number>;The number of Virtual Machines in the Scale Set.
property location
location?: pulumi.Input<string>;The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property maxBidPrice
maxBidPrice?: pulumi.Input<number>;The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the evictionPolicy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
property name
name?: pulumi.Input<string>;The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
property networkInterfaces
networkInterfaces: pulumi.Input<pulumi.Input<LinuxVirtualMachineScaleSetNetworkInterface>[]>;One or more networkInterface blocks as defined below.
property osDisk
osDisk: pulumi.Input<LinuxVirtualMachineScaleSetOsDisk>;An osDisk block as defined below.
property overprovision
overprovision?: pulumi.Input<boolean>;Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.
property plan
plan?: pulumi.Input<LinuxVirtualMachineScaleSetPlan>;property priority
priority?: pulumi.Input<string>;The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
property provisionVmAgent
provisionVmAgent?: pulumi.Input<boolean>;Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
property rollingUpgradePolicy
rollingUpgradePolicy?: pulumi.Input<LinuxVirtualMachineScaleSetRollingUpgradePolicy>;A rollingUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property scaleInPolicy
scaleInPolicy?: pulumi.Input<string>;The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
property secrets
secrets?: pulumi.Input<pulumi.Input<LinuxVirtualMachineScaleSetSecret>[]>;One or more secret blocks as defined below.
property singlePlacementGroup
singlePlacementGroup?: pulumi.Input<boolean>;Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
property sku
sku: pulumi.Input<string>;The Virtual Machine SKU for the Scale Set, such as Standard_F2.
property sourceImageId
sourceImageId?: pulumi.Input<string>;The ID of an Image which each Virtual Machine in this Scale Set should be based on.
property sourceImageReference
sourceImageReference?: pulumi.Input<LinuxVirtualMachineScaleSetSourceImageReference>;A sourceImageReference block as defined below.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Virtual Machine Scale Set.
property terminateNotification
terminateNotification?: pulumi.Input<LinuxVirtualMachineScaleSetTerminateNotification>;A terminateNotification block as defined below.
property upgradeMode
upgradeMode?: pulumi.Input<string>;Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.
property zoneBalance
zoneBalance?: pulumi.Input<boolean>;Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
property zones
zones?: pulumi.Input<pulumi.Input<string>[]>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
interface LinuxVirtualMachineScaleSetState
interface LinuxVirtualMachineScaleSetStateInput properties used for looking up and filtering LinuxVirtualMachineScaleSet resources.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<LinuxVirtualMachineScaleSetAdditionalCapabilities>;A additionalCapabilities block as defined below.
property adminPassword
adminPassword?: pulumi.Input<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminSshKeys
adminSshKeys?: pulumi.Input<pulumi.Input<LinuxVirtualMachineScaleSetAdminSshKey>[]>;One or more adminSshKey blocks as defined below.
property adminUsername
adminUsername?: pulumi.Input<string>;The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
property automaticInstanceRepair
automaticInstanceRepair?: pulumi.Input<LinuxVirtualMachineScaleSetAutomaticInstanceRepair>;A automaticInstanceRepair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid healthProbeId or an Application Health Extension.
property automaticOsUpgradePolicy
automaticOsUpgradePolicy?: pulumi.Input<LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy>;A automaticOsUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<LinuxVirtualMachineScaleSetBootDiagnostics>;A bootDiagnostics block as defined below.
property computerNamePrefix
computerNamePrefix?: pulumi.Input<string>;The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerNamePrefix, then you must specify computerNamePrefix.
property customData
customData?: pulumi.Input<string>;The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<LinuxVirtualMachineScaleSetDataDisk>[]>;One or more dataDisk blocks as defined below.
property disablePasswordAuthentication
disablePasswordAuthentication?: pulumi.Input<boolean>;Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.
property doNotRunExtensionsOnOverprovisionedMachines
doNotRunExtensionsOnOverprovisionedMachines?: pulumi.Input<boolean>;Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.
property healthProbeId
healthProbeId?: pulumi.Input<string>;The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property identity
identity?: pulumi.Input<LinuxVirtualMachineScaleSetIdentity>;A identity block as defined below.
property instances
instances?: pulumi.Input<number>;The number of Virtual Machines in the Scale Set.
property location
location?: pulumi.Input<string>;The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property maxBidPrice
maxBidPrice?: pulumi.Input<number>;The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the evictionPolicy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
property name
name?: pulumi.Input<string>;The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
property networkInterfaces
networkInterfaces?: pulumi.Input<pulumi.Input<LinuxVirtualMachineScaleSetNetworkInterface>[]>;One or more networkInterface blocks as defined below.
property osDisk
osDisk?: pulumi.Input<LinuxVirtualMachineScaleSetOsDisk>;An osDisk block as defined below.
property overprovision
overprovision?: pulumi.Input<boolean>;Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.
property plan
plan?: pulumi.Input<LinuxVirtualMachineScaleSetPlan>;property priority
priority?: pulumi.Input<string>;The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
property provisionVmAgent
provisionVmAgent?: pulumi.Input<boolean>;Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
property rollingUpgradePolicy
rollingUpgradePolicy?: pulumi.Input<LinuxVirtualMachineScaleSetRollingUpgradePolicy>;A rollingUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property scaleInPolicy
scaleInPolicy?: pulumi.Input<string>;The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
property secrets
secrets?: pulumi.Input<pulumi.Input<LinuxVirtualMachineScaleSetSecret>[]>;One or more secret blocks as defined below.
property singlePlacementGroup
singlePlacementGroup?: pulumi.Input<boolean>;Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
property sku
sku?: pulumi.Input<string>;The Virtual Machine SKU for the Scale Set, such as Standard_F2.
property sourceImageId
sourceImageId?: pulumi.Input<string>;The ID of an Image which each Virtual Machine in this Scale Set should be based on.
property sourceImageReference
sourceImageReference?: pulumi.Input<LinuxVirtualMachineScaleSetSourceImageReference>;A sourceImageReference block as defined below.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Virtual Machine Scale Set.
property terminateNotification
terminateNotification?: pulumi.Input<LinuxVirtualMachineScaleSetTerminateNotification>;A terminateNotification block as defined below.
property uniqueId
uniqueId?: pulumi.Input<string>;The Unique ID for this Linux Virtual Machine Scale Set.
property upgradeMode
upgradeMode?: pulumi.Input<string>;Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.
property zoneBalance
zoneBalance?: pulumi.Input<boolean>;Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
property zones
zones?: pulumi.Input<pulumi.Input<string>[]>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
interface LinuxVirtualMachineState
interface LinuxVirtualMachineStateInput properties used for looking up and filtering LinuxVirtualMachine resources.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<LinuxVirtualMachineAdditionalCapabilities>;A additionalCapabilities block as defined below.
property adminPassword
adminPassword?: pulumi.Input<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminSshKeys
adminSshKeys?: pulumi.Input<pulumi.Input<LinuxVirtualMachineAdminSshKey>[]>;One or more adminSshKey blocks as defined below.
property adminUsername
adminUsername?: pulumi.Input<string>;The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
property allowExtensionOperations
allowExtensionOperations?: pulumi.Input<boolean>;Should Extension Operations be allowed on this Virtual Machine? Changing this forces a new resource to be created.
property availabilitySetId
availabilitySetId?: pulumi.Input<string>;Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<LinuxVirtualMachineBootDiagnostics>;A bootDiagnostics block as defined below.
property computerName
computerName?: pulumi.Input<string>;Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerName, then you must specify computerName. Changing this forces a new resource to be created.
property customData
customData?: pulumi.Input<string>;The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
property dedicatedHostId
dedicatedHostId?: pulumi.Input<string>;The ID of a Dedicated Host where this machine should be run on. Changing this forces a new resource to be created.
property disablePasswordAuthentication
disablePasswordAuthentication?: pulumi.Input<boolean>;Should Password Authentication be disabled on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. At this time the only supported value is Deallocate. Changing this forces a new resource to be created.
property identity
identity?: pulumi.Input<LinuxVirtualMachineIdentity>;An identity block as defined below.
property location
location?: pulumi.Input<string>;The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
property maxBidPrice
maxBidPrice?: pulumi.Input<number>;The maximum price you’re willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the evictionPolicy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
property name
name?: pulumi.Input<string>;The name of the Linux Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
networkInterfaceIds?: pulumi.Input<pulumi.Input<string>[]>;. A list of Network Interface ID’s which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
property osDisk
osDisk?: pulumi.Input<LinuxVirtualMachineOsDisk>;A osDisk block as defined below.
property plan
plan?: pulumi.Input<LinuxVirtualMachinePlan>;A plan block as defined below. Changing this forces a new resource to be created.
property priority
priority?: pulumi.Input<string>;Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
property privateIpAddress
privateIpAddress?: pulumi.Input<string>;The Primary Private IP Address assigned to this Virtual Machine.
property privateIpAddresses
privateIpAddresses?: pulumi.Input<pulumi.Input<string>[]>;A list of Private IP Addresses assigned to this Virtual Machine.
property provisionVmAgent
provisionVmAgent?: pulumi.Input<boolean>;Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
property publicIpAddress
publicIpAddress?: pulumi.Input<string>;The Primary Public IP Address assigned to this Virtual Machine.
property publicIpAddresses
publicIpAddresses?: pulumi.Input<pulumi.Input<string>[]>;A list of the Public IP Addresses assigned to this Virtual Machine.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.
property secrets
secrets?: pulumi.Input<pulumi.Input<LinuxVirtualMachineSecret>[]>;One or more secret blocks as defined below.
property size
size?: pulumi.Input<string>;The SKU which should be used for this Virtual Machine, such as Standard_F2.
property sourceImageId
sourceImageId?: pulumi.Input<string>;The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created.
property sourceImageReference
sourceImageReference?: pulumi.Input<LinuxVirtualMachineSourceImageReference>;A sourceImageReference block as defined below. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Virtual Machine.
property virtualMachineId
virtualMachineId?: pulumi.Input<string>;A 128-bit identifier which uniquely identifies this Virtual Machine.
property virtualMachineScaleSetId
virtualMachineScaleSetId?: pulumi.Input<string>;Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created.
property zone
zone?: pulumi.Input<string>;The Zone in which this Virtual Machine should be created. Changing this forces a new resource to be created.
interface ManagedDiskArgs
interface ManagedDiskArgsThe set of arguments for constructing a ManagedDisk resource.
property createOption
createOption: pulumi.Input<string>;The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include:
property diskEncryptionSetId
diskEncryptionSetId?: pulumi.Input<string>;The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk.
property diskIopsReadWrite
diskIopsReadWrite?: pulumi.Input<number>;The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.
property diskMbpsReadWrite
diskMbpsReadWrite?: pulumi.Input<number>;The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second.
property diskSizeGb
diskSizeGb?: pulumi.Input<number>;Specifies the size of the managed disk to create in gigabytes. If createOption is Copy or FromImage, then the value must be equal to or greater than the source’s size. The size can only be increased.
property encryptionSettings
encryptionSettings?: pulumi.Input<ManagedDiskEncryptionSettings>;A encryptionSettings block as defined below.
property imageReferenceId
imageReferenceId?: pulumi.Input<string>;ID of an existing platform/marketplace disk image to copy when createOption is FromImage.
property location
location?: pulumi.Input<string>;Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Managed Disk. Changing this forces a new resource to be created.
property osType
osType?: pulumi.Input<string>;Specify a value when the source of an Import or Copy operation targets a source that contains an operating system. Valid values are Linux or Windows.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the Resource Group where the Managed Disk should exist.
property sourceResourceId
sourceResourceId?: pulumi.Input<string>;The ID of an existing Managed Disk to copy createOption is Copy or the recovery point to restore when createOption is Restore
property sourceUri
sourceUri?: pulumi.Input<string>;URI to a valid VHD file to be used when createOption is Import.
property storageAccountId
storageAccountId?: pulumi.Input<string>;The ID of the Storage Account where the sourceUri is located. Required when createOption is set to Import. Changing this forces a new resource to be created.
property storageAccountType
storageAccountType: pulumi.Input<string>;The type of storage to use for the managed disk. Possible values are Standard_LRS, Premium_LRS, StandardSSD_LRS or UltraSSD_LRS.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property zones
zones?: pulumi.Input<string>;A collection containing the availability zone to allocate the Managed Disk in.
interface ManagedDiskState
interface ManagedDiskStateInput properties used for looking up and filtering ManagedDisk resources.
property createOption
createOption?: pulumi.Input<string>;The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include:
property diskEncryptionSetId
diskEncryptionSetId?: pulumi.Input<string>;The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk.
property diskIopsReadWrite
diskIopsReadWrite?: pulumi.Input<number>;The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.
property diskMbpsReadWrite
diskMbpsReadWrite?: pulumi.Input<number>;The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second.
property diskSizeGb
diskSizeGb?: pulumi.Input<number>;Specifies the size of the managed disk to create in gigabytes. If createOption is Copy or FromImage, then the value must be equal to or greater than the source’s size. The size can only be increased.
property encryptionSettings
encryptionSettings?: pulumi.Input<ManagedDiskEncryptionSettings>;A encryptionSettings block as defined below.
property imageReferenceId
imageReferenceId?: pulumi.Input<string>;ID of an existing platform/marketplace disk image to copy when createOption is FromImage.
property location
location?: pulumi.Input<string>;Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Managed Disk. Changing this forces a new resource to be created.
property osType
osType?: pulumi.Input<string>;Specify a value when the source of an Import or Copy operation targets a source that contains an operating system. Valid values are Linux or Windows.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the Resource Group where the Managed Disk should exist.
property sourceResourceId
sourceResourceId?: pulumi.Input<string>;The ID of an existing Managed Disk to copy createOption is Copy or the recovery point to restore when createOption is Restore
property sourceUri
sourceUri?: pulumi.Input<string>;URI to a valid VHD file to be used when createOption is Import.
property storageAccountId
storageAccountId?: pulumi.Input<string>;The ID of the Storage Account where the sourceUri is located. Required when createOption is set to Import. Changing this forces a new resource to be created.
property storageAccountType
storageAccountType?: pulumi.Input<string>;The type of storage to use for the managed disk. Possible values are Standard_LRS, Premium_LRS, StandardSSD_LRS or UltraSSD_LRS.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property zones
zones?: pulumi.Input<string>;A collection containing the availability zone to allocate the Managed Disk in.
interface OrchestratedVirtualMachineScaleSetArgs
interface OrchestratedVirtualMachineScaleSetArgsThe set of arguments for constructing a OrchestratedVirtualMachineScaleSet resource.
property location
location?: pulumi.Input<string>;The Azure location where the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;The name of the Orchestrated Virtual Machine Scale Set. Changing this forces a new resource to be created.
property platformFaultDomainCount
platformFaultDomainCount: pulumi.Input<number>;Specifies the number of fault domains that are used by this Orchestrated Virtual Machine Scale Set. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the Resource Group in which the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property singlePlacementGroup
singlePlacementGroup: pulumi.Input<boolean>;Should the Orchestrated Virtual Machine Scale Set use single placement group? Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Orchestrated Virtual Machine Scale Set.
property zones
zones?: pulumi.Input<string>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
interface OrchestratedVirtualMachineScaleSetState
interface OrchestratedVirtualMachineScaleSetStateInput properties used for looking up and filtering OrchestratedVirtualMachineScaleSet resources.
property location
location?: pulumi.Input<string>;The Azure location where the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;The name of the Orchestrated Virtual Machine Scale Set. Changing this forces a new resource to be created.
property platformFaultDomainCount
platformFaultDomainCount?: pulumi.Input<number>;Specifies the number of fault domains that are used by this Orchestrated Virtual Machine Scale Set. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the Resource Group in which the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property singlePlacementGroup
singlePlacementGroup?: pulumi.Input<boolean>;Should the Orchestrated Virtual Machine Scale Set use single placement group? Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Orchestrated Virtual Machine Scale Set.
property uniqueId
uniqueId?: pulumi.Input<string>;The Unique ID for the Orchestrated Virtual Machine Scale Set.
property zones
zones?: pulumi.Input<string>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
interface ScaleSetArgs
interface ScaleSetArgsThe set of arguments for constructing a ScaleSet resource.
property automaticOsUpgrade
automaticOsUpgrade?: pulumi.Input<boolean>;Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when upgradePolicyMode is set to Rolling. Defaults to false.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<ScaleSetBootDiagnostics>;A boot diagnostics profile block as referenced below.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete.
property extensions
extensions?: pulumi.Input<pulumi.Input<ScaleSetExtension>[]>;Can be specified multiple times to add extension profiles to the scale set. Each extension block supports the fields documented below.
property healthProbeId
healthProbeId?: pulumi.Input<string>;Specifies the identifier for the load balancer health probe. Required when using Rolling as your upgradePolicyMode.
property identity
identity?: pulumi.Input<ScaleSetIdentity>;property licenseType
licenseType?: pulumi.Input<string>;Specifies the Windows OS license type. If supplied, the only allowed values are Windows_Client and Windows_Server.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the virtual machine scale set resource. Changing this forces a new resource to be created.
property networkProfiles
networkProfiles: pulumi.Input<pulumi.Input<ScaleSetNetworkProfile>[]>;A collection of network profile block as documented below.
property osProfile
osProfile: pulumi.Input<ScaleSetOsProfile>;A Virtual Machine OS Profile block as documented below.
property osProfileLinuxConfig
osProfileLinuxConfig?: pulumi.Input<ScaleSetOsProfileLinuxConfig>;A Linux config block as documented below.
property osProfileSecrets
osProfileSecrets?: pulumi.Input<pulumi.Input<ScaleSetOsProfileSecret>[]>;A collection of Secret blocks as documented below.
property osProfileWindowsConfig
osProfileWindowsConfig?: pulumi.Input<ScaleSetOsProfileWindowsConfig>;A Windows config block as documented below.
property overprovision
overprovision?: pulumi.Input<boolean>;Specifies whether the virtual machine scale set should be overprovisioned.
property plan
plan?: pulumi.Input<ScaleSetPlan>;A plan block as documented below.
property priority
priority?: pulumi.Input<string>;Specifies the priority for the Virtual Machines in the Scale Set. Defaults to Regular. Possible values are Low and Regular.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.
property rollingUpgradePolicy
rollingUpgradePolicy?: pulumi.Input<ScaleSetRollingUpgradePolicy>;A rollingUpgradePolicy block as defined below. This is only applicable when the upgradePolicyMode is Rolling.
property singlePlacementGroup
singlePlacementGroup?: pulumi.Input<boolean>;Specifies whether the scale set is limited to a single placement group with a maximum size of 100 virtual machines. If set to false, managed disks must be used. Default is true. Changing this forces a new resource to be created. See documentation for more information.
property sku
sku: pulumi.Input<ScaleSetSku>;A sku block as documented below.
property storageProfileDataDisks
storageProfileDataDisks?: pulumi.Input<pulumi.Input<ScaleSetStorageProfileDataDisk>[]>;A storage profile data disk block as documented below
property storageProfileImageReference
storageProfileImageReference?: pulumi.Input<ScaleSetStorageProfileImageReference>;A storage profile image reference block as documented below.
property storageProfileOsDisk
storageProfileOsDisk: pulumi.Input<ScaleSetStorageProfileOsDisk>;A storage profile os disk block as documented below
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property upgradePolicyMode
upgradePolicyMode: pulumi.Input<string>;Specifies the mode of an upgrade to virtual machines in the scale set. Possible values, Rolling, Manual, or Automatic. When choosing Rolling, you will need to set a health probe.
property zones
zones?: pulumi.Input<pulumi.Input<string>[]>;A collection of availability zones to spread the Virtual Machines over.
interface ScaleSetState
interface ScaleSetStateInput properties used for looking up and filtering ScaleSet resources.
property automaticOsUpgrade
automaticOsUpgrade?: pulumi.Input<boolean>;Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when upgradePolicyMode is set to Rolling. Defaults to false.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<ScaleSetBootDiagnostics>;A boot diagnostics profile block as referenced below.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete.
property extensions
extensions?: pulumi.Input<pulumi.Input<ScaleSetExtension>[]>;Can be specified multiple times to add extension profiles to the scale set. Each extension block supports the fields documented below.
property healthProbeId
healthProbeId?: pulumi.Input<string>;Specifies the identifier for the load balancer health probe. Required when using Rolling as your upgradePolicyMode.
property identity
identity?: pulumi.Input<ScaleSetIdentity>;property licenseType
licenseType?: pulumi.Input<string>;Specifies the Windows OS license type. If supplied, the only allowed values are Windows_Client and Windows_Server.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the virtual machine scale set resource. Changing this forces a new resource to be created.
property networkProfiles
networkProfiles?: pulumi.Input<pulumi.Input<ScaleSetNetworkProfile>[]>;A collection of network profile block as documented below.
property osProfile
osProfile?: pulumi.Input<ScaleSetOsProfile>;A Virtual Machine OS Profile block as documented below.
property osProfileLinuxConfig
osProfileLinuxConfig?: pulumi.Input<ScaleSetOsProfileLinuxConfig>;A Linux config block as documented below.
property osProfileSecrets
osProfileSecrets?: pulumi.Input<pulumi.Input<ScaleSetOsProfileSecret>[]>;A collection of Secret blocks as documented below.
property osProfileWindowsConfig
osProfileWindowsConfig?: pulumi.Input<ScaleSetOsProfileWindowsConfig>;A Windows config block as documented below.
property overprovision
overprovision?: pulumi.Input<boolean>;Specifies whether the virtual machine scale set should be overprovisioned.
property plan
plan?: pulumi.Input<ScaleSetPlan>;A plan block as documented below.
property priority
priority?: pulumi.Input<string>;Specifies the priority for the Virtual Machines in the Scale Set. Defaults to Regular. Possible values are Low and Regular.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.
property rollingUpgradePolicy
rollingUpgradePolicy?: pulumi.Input<ScaleSetRollingUpgradePolicy>;A rollingUpgradePolicy block as defined below. This is only applicable when the upgradePolicyMode is Rolling.
property singlePlacementGroup
singlePlacementGroup?: pulumi.Input<boolean>;Specifies whether the scale set is limited to a single placement group with a maximum size of 100 virtual machines. If set to false, managed disks must be used. Default is true. Changing this forces a new resource to be created. See documentation for more information.
property sku
sku?: pulumi.Input<ScaleSetSku>;A sku block as documented below.
property storageProfileDataDisks
storageProfileDataDisks?: pulumi.Input<pulumi.Input<ScaleSetStorageProfileDataDisk>[]>;A storage profile data disk block as documented below
property storageProfileImageReference
storageProfileImageReference?: pulumi.Input<ScaleSetStorageProfileImageReference>;A storage profile image reference block as documented below.
property storageProfileOsDisk
storageProfileOsDisk?: pulumi.Input<ScaleSetStorageProfileOsDisk>;A storage profile os disk block as documented below
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
property upgradePolicyMode
upgradePolicyMode?: pulumi.Input<string>;Specifies the mode of an upgrade to virtual machines in the scale set. Possible values, Rolling, Manual, or Automatic. When choosing Rolling, you will need to set a health probe.
property zones
zones?: pulumi.Input<pulumi.Input<string>[]>;A collection of availability zones to spread the Virtual Machines over.
interface SharedImageArgs
interface SharedImageArgsThe set of arguments for constructing a SharedImage resource.
property description
description?: pulumi.Input<string>;A description of this Shared Image.
property eula
eula?: pulumi.Input<string>;The End User Licence Agreement for the Shared Image.
property galleryName
galleryName: pulumi.Input<string>;Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.
property hyperVGeneration
hyperVGeneration?: pulumi.Input<string>;The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are V1 and V2. Defaults to V1. Changing this forces a new resource to be created.
property identifier
identifier: pulumi.Input<SharedImageIdentifier>;An identifier block as defined below.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Shared Image. Changing this forces a new resource to be created.
property osType
osType: pulumi.Input<string>;The type of Operating System present in this Shared Image. Possible values are Linux and Windows.
property privacyStatementUri
privacyStatementUri?: pulumi.Input<string>;The URI containing the Privacy Statement associated with this Shared Image.
property releaseNoteUri
releaseNoteUri?: pulumi.Input<string>;The URI containing the Release Notes associated with this Shared Image.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the Shared Image.
interface SharedImageGalleryArgs
interface SharedImageGalleryArgsThe set of arguments for constructing a SharedImageGallery resource.
property description
description?: pulumi.Input<string>;A description for this Shared Image Gallery.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the Shared Image Gallery.
interface SharedImageGalleryState
interface SharedImageGalleryStateInput properties used for looking up and filtering SharedImageGallery resources.
property description
description?: pulumi.Input<string>;A description for this Shared Image Gallery.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the Shared Image Gallery.
property uniqueName
uniqueName?: pulumi.Input<string>;The Unique Name for this Shared Image Gallery.
interface SharedImageState
interface SharedImageStateInput properties used for looking up and filtering SharedImage resources.
property description
description?: pulumi.Input<string>;A description of this Shared Image.
property eula
eula?: pulumi.Input<string>;The End User Licence Agreement for the Shared Image.
property galleryName
galleryName?: pulumi.Input<string>;Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.
property hyperVGeneration
hyperVGeneration?: pulumi.Input<string>;The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are V1 and V2. Defaults to V1. Changing this forces a new resource to be created.
property identifier
identifier?: pulumi.Input<SharedImageIdentifier>;An identifier block as defined below.
property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Shared Image. Changing this forces a new resource to be created.
property osType
osType?: pulumi.Input<string>;The type of Operating System present in this Shared Image. Possible values are Linux and Windows.
property privacyStatementUri
privacyStatementUri?: pulumi.Input<string>;The URI containing the Privacy Statement associated with this Shared Image.
property releaseNoteUri
releaseNoteUri?: pulumi.Input<string>;The URI containing the Release Notes associated with this Shared Image.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the Shared Image.
interface SharedImageVersionArgs
interface SharedImageVersionArgsThe set of arguments for constructing a SharedImageVersion resource.
property excludeFromLatest
excludeFromLatest?: pulumi.Input<boolean>;Should this Image Version be excluded from the latest filter? If set to true this Image Version won’t be returned for the latest version. Defaults to false.
property galleryName
galleryName: pulumi.Input<string>;The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.
property imageName
imageName: pulumi.Input<string>;The name of the Shared Image within the Shared Image Gallery in which this Version should be created. Changing this forces a new resource to be created.
property location
location?: pulumi.Input<string>;The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property managedImageId
managedImageId: pulumi.Input<string>;The ID of the Managed Image which should be used for this Shared Image Version. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A collection of tags which should be applied to this resource.
property targetRegions
targetRegions: pulumi.Input<pulumi.Input<SharedImageVersionTargetRegion>[]>;One or more targetRegion blocks as documented below.
interface SharedImageVersionState
interface SharedImageVersionStateInput properties used for looking up and filtering SharedImageVersion resources.
property excludeFromLatest
excludeFromLatest?: pulumi.Input<boolean>;Should this Image Version be excluded from the latest filter? If set to true this Image Version won’t be returned for the latest version. Defaults to false.
property galleryName
galleryName?: pulumi.Input<string>;The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.
property imageName
imageName?: pulumi.Input<string>;The name of the Shared Image within the Shared Image Gallery in which this Version should be created. Changing this forces a new resource to be created.
property location
location?: pulumi.Input<string>;The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property managedImageId
managedImageId?: pulumi.Input<string>;The ID of the Managed Image which should be used for this Shared Image Version. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A collection of tags which should be applied to this resource.
property targetRegions
targetRegions?: pulumi.Input<pulumi.Input<SharedImageVersionTargetRegion>[]>;One or more targetRegion blocks as documented below.
interface SnapshotArgs
interface SnapshotArgsThe set of arguments for constructing a Snapshot resource.
property createOption
createOption: pulumi.Input<string>;Indicates how the snapshot is to be created. Possible values are Copy or Import. Changing this forces a new resource to be created.
property diskSizeGb
diskSizeGb?: pulumi.Input<number>;The size of the Snapshotted Disk in GB.
property encryptionSettings
encryptionSettings?: pulumi.Input<SnapshotEncryptionSettings>;property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.
property sourceResourceId
sourceResourceId?: pulumi.Input<string>;Specifies a reference to an existing snapshot, when createOption is Copy. Changing this forces a new resource to be created.
property sourceUri
sourceUri?: pulumi.Input<string>;Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
property storageAccountId
storageAccountId?: pulumi.Input<string>;Specifies the ID of an storage account. Used with sourceUri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
interface SnapshotState
interface SnapshotStateInput properties used for looking up and filtering Snapshot resources.
property createOption
createOption?: pulumi.Input<string>;Indicates how the snapshot is to be created. Possible values are Copy or Import. Changing this forces a new resource to be created.
property diskSizeGb
diskSizeGb?: pulumi.Input<number>;The size of the Snapshotted Disk in GB.
property encryptionSettings
encryptionSettings?: pulumi.Input<SnapshotEncryptionSettings>;property location
location?: pulumi.Input<string>;Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.
property sourceResourceId
sourceResourceId?: pulumi.Input<string>;Specifies a reference to an existing snapshot, when createOption is Copy. Changing this forces a new resource to be created.
property sourceUri
sourceUri?: pulumi.Input<string>;Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
property storageAccountId
storageAccountId?: pulumi.Input<string>;Specifies the ID of an storage account. Used with sourceUri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the resource.
interface VirtualMachineArgs
interface VirtualMachineArgsThe set of arguments for constructing a VirtualMachine resource.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<VirtualMachineAdditionalCapabilities>;A additionalCapabilities block.
property availabilitySetId
availabilitySetId?: pulumi.Input<string>;The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<VirtualMachineBootDiagnostics>;A bootDiagnostics block.
property deleteDataDisksOnTermination
deleteDataDisksOnTermination?: pulumi.Input<boolean>;Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to false.
property deleteOsDiskOnTermination
deleteOsDiskOnTermination?: pulumi.Input<boolean>;Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to false.
property identity
identity?: pulumi.Input<VirtualMachineIdentity>;A identity block.
property licenseType
licenseType?: pulumi.Input<string>;Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are Windows_Client and Windows_Server.
property location
location?: pulumi.Input<string>;Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
networkInterfaceIds: pulumi.Input<pulumi.Input<string>[]>;A list of Network Interface ID’s which should be associated with the Virtual Machine.
property osProfile
osProfile?: pulumi.Input<VirtualMachineOsProfile>;An osProfile block. Required when createOption in the storageOsDisk block is set to FromImage.
property osProfileLinuxConfig
osProfileLinuxConfig?: pulumi.Input<VirtualMachineOsProfileLinuxConfig>;A osProfileLinuxConfig block.
property osProfileSecrets
osProfileSecrets?: pulumi.Input<pulumi.Input<VirtualMachineOsProfileSecret>[]>;One or more osProfileSecrets blocks.
property osProfileWindowsConfig
osProfileWindowsConfig?: pulumi.Input<VirtualMachineOsProfileWindowsConfig>;A osProfileWindowsConfig block.
property plan
plan?: pulumi.Input<VirtualMachinePlan>;A plan block.
property primaryNetworkInterfaceId
primaryNetworkInterfaceId?: pulumi.Input<string>;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.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
resourceGroupName: pulumi.Input<string>;Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property storageDataDisks
storageDataDisks?: pulumi.Input<pulumi.Input<VirtualMachineStorageDataDisk>[]>;One or more storageDataDisk blocks.
property storageImageReference
storageImageReference?: pulumi.Input<VirtualMachineStorageImageReference>;A storageImageReference block.
property storageOsDisk
storageOsDisk: pulumi.Input<VirtualMachineStorageOsDisk>;A storageOsDisk block.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the Virtual Machine.
property vmSize
vmSize: pulumi.Input<string>;Specifies the size of the Virtual Machine.
property zones
zones?: pulumi.Input<string>;A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
interface VirtualMachineScaleSetExtensionArgs
interface VirtualMachineScaleSetExtensionArgsThe set of arguments for constructing a VirtualMachineScaleSetExtension resource.
property autoUpgradeMinorVersion
autoUpgradeMinorVersion?: pulumi.Input<boolean>;Should the latest version of the Extension be used at Deployment Time, if one is available? This won’t auto-update the extension on existing installation. Defaults to true.
property forceUpdateTag
forceUpdateTag?: pulumi.Input<string>;A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn’t changed.
property name
name?: pulumi.Input<string>;The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
property protectedSettings
protectedSettings?: pulumi.Input<string>;A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
property provisionAfterExtensions
provisionAfterExtensions?: pulumi.Input<pulumi.Input<string>[]>;An ordered list of Extension names which this should be provisioned after.
property publisher
publisher: pulumi.Input<string>;Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
property settings
settings?: pulumi.Input<string>;A JSON String which specifies Settings for the Extension.
property type
type: pulumi.Input<string>;Specifies the Type of the Extension. Changing this forces a new resource to be created.
property typeHandlerVersion
typeHandlerVersion: pulumi.Input<string>;Specifies the version of the extension to use, available versions can be found using the Azure CLI.
property virtualMachineScaleSetId
virtualMachineScaleSetId: pulumi.Input<string>;The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
interface VirtualMachineScaleSetExtensionState
interface VirtualMachineScaleSetExtensionStateInput properties used for looking up and filtering VirtualMachineScaleSetExtension resources.
property autoUpgradeMinorVersion
autoUpgradeMinorVersion?: pulumi.Input<boolean>;Should the latest version of the Extension be used at Deployment Time, if one is available? This won’t auto-update the extension on existing installation. Defaults to true.
property forceUpdateTag
forceUpdateTag?: pulumi.Input<string>;A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn’t changed.
property name
name?: pulumi.Input<string>;The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
property protectedSettings
protectedSettings?: pulumi.Input<string>;A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
property provisionAfterExtensions
provisionAfterExtensions?: pulumi.Input<pulumi.Input<string>[]>;An ordered list of Extension names which this should be provisioned after.
property publisher
publisher?: pulumi.Input<string>;Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
property settings
settings?: pulumi.Input<string>;A JSON String which specifies Settings for the Extension.
property type
type?: pulumi.Input<string>;Specifies the Type of the Extension. Changing this forces a new resource to be created.
property typeHandlerVersion
typeHandlerVersion?: pulumi.Input<string>;Specifies the version of the extension to use, available versions can be found using the Azure CLI.
property virtualMachineScaleSetId
virtualMachineScaleSetId?: pulumi.Input<string>;The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
interface VirtualMachineState
interface VirtualMachineStateInput properties used for looking up and filtering VirtualMachine resources.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<VirtualMachineAdditionalCapabilities>;A additionalCapabilities block.
property availabilitySetId
availabilitySetId?: pulumi.Input<string>;The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<VirtualMachineBootDiagnostics>;A bootDiagnostics block.
property deleteDataDisksOnTermination
deleteDataDisksOnTermination?: pulumi.Input<boolean>;Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to false.
property deleteOsDiskOnTermination
deleteOsDiskOnTermination?: pulumi.Input<boolean>;Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to false.
property identity
identity?: pulumi.Input<VirtualMachineIdentity>;A identity block.
property licenseType
licenseType?: pulumi.Input<string>;Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are Windows_Client and Windows_Server.
property location
location?: pulumi.Input<string>;Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.
property name
name?: pulumi.Input<string>;Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
networkInterfaceIds?: pulumi.Input<pulumi.Input<string>[]>;A list of Network Interface ID’s which should be associated with the Virtual Machine.
property osProfile
osProfile?: pulumi.Input<VirtualMachineOsProfile>;An osProfile block. Required when createOption in the storageOsDisk block is set to FromImage.
property osProfileLinuxConfig
osProfileLinuxConfig?: pulumi.Input<VirtualMachineOsProfileLinuxConfig>;A osProfileLinuxConfig block.
property osProfileSecrets
osProfileSecrets?: pulumi.Input<pulumi.Input<VirtualMachineOsProfileSecret>[]>;One or more osProfileSecrets blocks.
property osProfileWindowsConfig
osProfileWindowsConfig?: pulumi.Input<VirtualMachineOsProfileWindowsConfig>;A osProfileWindowsConfig block.
property plan
plan?: pulumi.Input<VirtualMachinePlan>;A plan block.
property primaryNetworkInterfaceId
primaryNetworkInterfaceId?: pulumi.Input<string>;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.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property storageDataDisks
storageDataDisks?: pulumi.Input<pulumi.Input<VirtualMachineStorageDataDisk>[]>;One or more storageDataDisk blocks.
property storageImageReference
storageImageReference?: pulumi.Input<VirtualMachineStorageImageReference>;A storageImageReference block.
property storageOsDisk
storageOsDisk?: pulumi.Input<VirtualMachineStorageOsDisk>;A storageOsDisk block.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags to assign to the Virtual Machine.
property vmSize
vmSize?: pulumi.Input<string>;Specifies the size of the Virtual Machine.
property zones
zones?: pulumi.Input<string>;A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.
interface WindowsVirtualMachineArgs
interface WindowsVirtualMachineArgsThe set of arguments for constructing a WindowsVirtualMachine resource.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<WindowsVirtualMachineAdditionalCapabilities>;A additionalCapabilities block as defined below.
property additionalUnattendContents
additionalUnattendContents?: pulumi.Input<pulumi.Input<WindowsVirtualMachineAdditionalUnattendContent>[]>;One or more additionalUnattendContent blocks as defined below. Changing this forces a new resource to be created.
property adminPassword
adminPassword: pulumi.Input<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminUsername
adminUsername: pulumi.Input<string>;The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
property allowExtensionOperations
allowExtensionOperations?: pulumi.Input<boolean>;Should Extension Operations be allowed on this Virtual Machine? Changing this forces a new resource to be created.
property availabilitySetId
availabilitySetId?: pulumi.Input<string>;Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<WindowsVirtualMachineBootDiagnostics>;A bootDiagnostics block as defined below.
property computerName
computerName?: pulumi.Input<string>;Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerName, then you must specify computerName. Changing this forces a new resource to be created.
property customData
customData?: pulumi.Input<string>;The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
property dedicatedHostId
dedicatedHostId?: pulumi.Input<string>;The ID of a Dedicated Host where this machine should be run on. Changing this forces a new resource to be created.
property enableAutomaticUpdates
enableAutomaticUpdates?: pulumi.Input<boolean>;Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. At this time the only supported value is Deallocate. Changing this forces a new resource to be created.
property identity
identity?: pulumi.Input<WindowsVirtualMachineIdentity>;An identity block as defined below.
property licenseType
licenseType?: pulumi.Input<string>;Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine. Possible values are None, Windows_Client and Windows_Server. Changing this forces a new resource to be created.
property location
location?: pulumi.Input<string>;The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
property maxBidPrice
maxBidPrice?: pulumi.Input<number>;The maximum price you’re willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the evictionPolicy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
property name
name?: pulumi.Input<string>;The name of the Windows Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
networkInterfaceIds: pulumi.Input<pulumi.Input<string>[]>;. A list of Network Interface ID’s which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
property osDisk
osDisk: pulumi.Input<WindowsVirtualMachineOsDisk>;A osDisk block as defined below.
property plan
plan?: pulumi.Input<WindowsVirtualMachinePlan>;A plan block as defined below. Changing this forces a new resource to be created.
property priority
priority?: pulumi.Input<string>;Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
property provisionVmAgent
provisionVmAgent?: pulumi.Input<boolean>;Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created.
property secrets
secrets?: pulumi.Input<pulumi.Input<WindowsVirtualMachineSecret>[]>;One or more secret blocks as defined below.
property size
size: pulumi.Input<string>;The SKU which should be used for this Virtual Machine, such as Standard_F2.
property sourceImageId
sourceImageId?: pulumi.Input<string>;The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created.
property sourceImageReference
sourceImageReference?: pulumi.Input<WindowsVirtualMachineSourceImageReference>;A sourceImageReference block as defined below. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Virtual Machine.
property timezone
timezone?: pulumi.Input<string>;Specifies the Time Zone which should be used by the Virtual Machine, the possible values are defined here.
property virtualMachineScaleSetId
virtualMachineScaleSetId?: pulumi.Input<string>;Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created.
property winrmListeners
winrmListeners?: pulumi.Input<pulumi.Input<WindowsVirtualMachineWinrmListener>[]>;One or more winrmListener blocks as defined below.
property zone
zone?: pulumi.Input<string>;The Zone in which this Virtual Machine should be created. Changing this forces a new resource to be created.
interface WindowsVirtualMachineScaleSetArgs
interface WindowsVirtualMachineScaleSetArgsThe set of arguments for constructing a WindowsVirtualMachineScaleSet resource.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<WindowsVirtualMachineScaleSetAdditionalCapabilities>;A additionalCapabilities block as defined below.
property additionalUnattendContents
additionalUnattendContents?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetAdditionalUnattendContent>[]>;One or more additionalUnattendContent blocks as defined below.
property adminPassword
adminPassword: pulumi.Input<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminUsername
adminUsername: pulumi.Input<string>;The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
property automaticInstanceRepair
automaticInstanceRepair?: pulumi.Input<WindowsVirtualMachineScaleSetAutomaticInstanceRepair>;A automaticInstanceRepair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid healthProbeId or an Application Health Extension.
property automaticOsUpgradePolicy
automaticOsUpgradePolicy?: pulumi.Input<WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicy>;A automaticOsUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<WindowsVirtualMachineScaleSetBootDiagnostics>;A bootDiagnostics block as defined below.
property computerNamePrefix
computerNamePrefix?: pulumi.Input<string>;The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerNamePrefix, then you must specify computerNamePrefix.
property customData
customData?: pulumi.Input<string>;The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetDataDisk>[]>;One or more dataDisk blocks as defined below.
property doNotRunExtensionsOnOverprovisionedMachines
doNotRunExtensionsOnOverprovisionedMachines?: pulumi.Input<boolean>;Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
property enableAutomaticUpdates
enableAutomaticUpdates?: pulumi.Input<boolean>;Are automatic updates enabled for this Virtual Machine? Defaults to true.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.
property healthProbeId
healthProbeId?: pulumi.Input<string>;The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property identity
identity?: pulumi.Input<WindowsVirtualMachineScaleSetIdentity>;A identity block as defined below.
property instances
instances: pulumi.Input<number>;The number of Virtual Machines in the Scale Set.
property licenseType
licenseType?: pulumi.Input<string>;Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server. Changing this forces a new resource to be created.
property location
location?: pulumi.Input<string>;The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property maxBidPrice
maxBidPrice?: pulumi.Input<number>;The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the evictionPolicy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
property name
name?: pulumi.Input<string>;The name of the Windows Virtual Machine Scale Set. Changing this forces a new resource to be created.
property networkInterfaces
networkInterfaces: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetNetworkInterface>[]>;One or more networkInterface blocks as defined below.
property osDisk
osDisk: pulumi.Input<WindowsVirtualMachineScaleSetOsDisk>;An osDisk block as defined below.
property overprovision
overprovision?: pulumi.Input<boolean>;Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.
property plan
plan?: pulumi.Input<WindowsVirtualMachineScaleSetPlan>;property priority
priority?: pulumi.Input<string>;The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
property provisionVmAgent
provisionVmAgent?: pulumi.Input<boolean>;Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName: pulumi.Input<string>;The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
property rollingUpgradePolicy
rollingUpgradePolicy?: pulumi.Input<WindowsVirtualMachineScaleSetRollingUpgradePolicy>;A rollingUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property scaleInPolicy
scaleInPolicy?: pulumi.Input<string>;The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
property secrets
secrets?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetSecret>[]>;One or more secret blocks as defined below.
property singlePlacementGroup
singlePlacementGroup?: pulumi.Input<boolean>;Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
property sku
sku: pulumi.Input<string>;The Virtual Machine SKU for the Scale Set, such as Standard_F2.
property sourceImageId
sourceImageId?: pulumi.Input<string>;The ID of an Image which each Virtual Machine in this Scale Set should be based on.
property sourceImageReference
sourceImageReference?: pulumi.Input<WindowsVirtualMachineScaleSetSourceImageReference>;A sourceImageReference block as defined below.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Virtual Machine Scale Set.
property terminateNotification
terminateNotification?: pulumi.Input<WindowsVirtualMachineScaleSetTerminateNotification>;A terminateNotification block as defined below.
property timezone
timezone?: pulumi.Input<string>;Specifies the time zone of the virtual machine, the possible values are defined here.
property upgradeMode
upgradeMode?: pulumi.Input<string>;Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.
property winrmListeners
winrmListeners?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetWinrmListener>[]>;One or more winrmListener blocks as defined below.
property zoneBalance
zoneBalance?: pulumi.Input<boolean>;Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
property zones
zones?: pulumi.Input<pulumi.Input<string>[]>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
interface WindowsVirtualMachineScaleSetState
interface WindowsVirtualMachineScaleSetStateInput properties used for looking up and filtering WindowsVirtualMachineScaleSet resources.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<WindowsVirtualMachineScaleSetAdditionalCapabilities>;A additionalCapabilities block as defined below.
property additionalUnattendContents
additionalUnattendContents?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetAdditionalUnattendContent>[]>;One or more additionalUnattendContent blocks as defined below.
property adminPassword
adminPassword?: pulumi.Input<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminUsername
adminUsername?: pulumi.Input<string>;The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
property automaticInstanceRepair
automaticInstanceRepair?: pulumi.Input<WindowsVirtualMachineScaleSetAutomaticInstanceRepair>;A automaticInstanceRepair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid healthProbeId or an Application Health Extension.
property automaticOsUpgradePolicy
automaticOsUpgradePolicy?: pulumi.Input<WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicy>;A automaticOsUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<WindowsVirtualMachineScaleSetBootDiagnostics>;A bootDiagnostics block as defined below.
property computerNamePrefix
computerNamePrefix?: pulumi.Input<string>;The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerNamePrefix, then you must specify computerNamePrefix.
property customData
customData?: pulumi.Input<string>;The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetDataDisk>[]>;One or more dataDisk blocks as defined below.
property doNotRunExtensionsOnOverprovisionedMachines
doNotRunExtensionsOnOverprovisionedMachines?: pulumi.Input<boolean>;Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
property enableAutomaticUpdates
enableAutomaticUpdates?: pulumi.Input<boolean>;Are automatic updates enabled for this Virtual Machine? Defaults to true.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.
property healthProbeId
healthProbeId?: pulumi.Input<string>;The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property identity
identity?: pulumi.Input<WindowsVirtualMachineScaleSetIdentity>;A identity block as defined below.
property instances
instances?: pulumi.Input<number>;The number of Virtual Machines in the Scale Set.
property licenseType
licenseType?: pulumi.Input<string>;Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server. Changing this forces a new resource to be created.
property location
location?: pulumi.Input<string>;The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
property maxBidPrice
maxBidPrice?: pulumi.Input<number>;The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the evictionPolicy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
property name
name?: pulumi.Input<string>;The name of the Windows Virtual Machine Scale Set. Changing this forces a new resource to be created.
property networkInterfaces
networkInterfaces?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetNetworkInterface>[]>;One or more networkInterface blocks as defined below.
property osDisk
osDisk?: pulumi.Input<WindowsVirtualMachineScaleSetOsDisk>;An osDisk block as defined below.
property overprovision
overprovision?: pulumi.Input<boolean>;Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.
property plan
plan?: pulumi.Input<WindowsVirtualMachineScaleSetPlan>;property priority
priority?: pulumi.Input<string>;The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
property provisionVmAgent
provisionVmAgent?: pulumi.Input<boolean>;Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
property rollingUpgradePolicy
rollingUpgradePolicy?: pulumi.Input<WindowsVirtualMachineScaleSetRollingUpgradePolicy>;A rollingUpgradePolicy block as defined below. This is Required and can only be specified when upgradeMode is set to Automatic or Rolling.
property scaleInPolicy
scaleInPolicy?: pulumi.Input<string>;The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
property secrets
secrets?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetSecret>[]>;One or more secret blocks as defined below.
property singlePlacementGroup
singlePlacementGroup?: pulumi.Input<boolean>;Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
property sku
sku?: pulumi.Input<string>;The Virtual Machine SKU for the Scale Set, such as Standard_F2.
property sourceImageId
sourceImageId?: pulumi.Input<string>;The ID of an Image which each Virtual Machine in this Scale Set should be based on.
property sourceImageReference
sourceImageReference?: pulumi.Input<WindowsVirtualMachineScaleSetSourceImageReference>;A sourceImageReference block as defined below.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Virtual Machine Scale Set.
property terminateNotification
terminateNotification?: pulumi.Input<WindowsVirtualMachineScaleSetTerminateNotification>;A terminateNotification block as defined below.
property timezone
timezone?: pulumi.Input<string>;Specifies the time zone of the virtual machine, the possible values are defined here.
property uniqueId
uniqueId?: pulumi.Input<string>;The Unique ID for this Windows Virtual Machine Scale Set.
property upgradeMode
upgradeMode?: pulumi.Input<string>;Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.
property winrmListeners
winrmListeners?: pulumi.Input<pulumi.Input<WindowsVirtualMachineScaleSetWinrmListener>[]>;One or more winrmListener blocks as defined below.
property zoneBalance
zoneBalance?: pulumi.Input<boolean>;Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
property zones
zones?: pulumi.Input<pulumi.Input<string>[]>;A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.
interface WindowsVirtualMachineState
interface WindowsVirtualMachineStateInput properties used for looking up and filtering WindowsVirtualMachine resources.
property additionalCapabilities
additionalCapabilities?: pulumi.Input<WindowsVirtualMachineAdditionalCapabilities>;A additionalCapabilities block as defined below.
property additionalUnattendContents
additionalUnattendContents?: pulumi.Input<pulumi.Input<WindowsVirtualMachineAdditionalUnattendContent>[]>;One or more additionalUnattendContent blocks as defined below. Changing this forces a new resource to be created.
property adminPassword
adminPassword?: pulumi.Input<string>;The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
property adminUsername
adminUsername?: pulumi.Input<string>;The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
property allowExtensionOperations
allowExtensionOperations?: pulumi.Input<boolean>;Should Extension Operations be allowed on this Virtual Machine? Changing this forces a new resource to be created.
property availabilitySetId
availabilitySetId?: pulumi.Input<string>;Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
property bootDiagnostics
bootDiagnostics?: pulumi.Input<WindowsVirtualMachineBootDiagnostics>;A bootDiagnostics block as defined below.
property computerName
computerName?: pulumi.Input<string>;Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computerName, then you must specify computerName. Changing this forces a new resource to be created.
property customData
customData?: pulumi.Input<string>;The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
property dedicatedHostId
dedicatedHostId?: pulumi.Input<string>;The ID of a Dedicated Host where this machine should be run on. Changing this forces a new resource to be created.
property enableAutomaticUpdates
enableAutomaticUpdates?: pulumi.Input<boolean>;Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created.
property evictionPolicy
evictionPolicy?: pulumi.Input<string>;Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. At this time the only supported value is Deallocate. Changing this forces a new resource to be created.
property identity
identity?: pulumi.Input<WindowsVirtualMachineIdentity>;An identity block as defined below.
property licenseType
licenseType?: pulumi.Input<string>;Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine. Possible values are None, Windows_Client and Windows_Server. Changing this forces a new resource to be created.
property location
location?: pulumi.Input<string>;The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
property maxBidPrice
maxBidPrice?: pulumi.Input<number>;The maximum price you’re willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the evictionPolicy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
property name
name?: pulumi.Input<string>;The name of the Windows Virtual Machine. Changing this forces a new resource to be created.
property networkInterfaceIds
networkInterfaceIds?: pulumi.Input<pulumi.Input<string>[]>;. A list of Network Interface ID’s which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
property osDisk
osDisk?: pulumi.Input<WindowsVirtualMachineOsDisk>;A osDisk block as defined below.
property plan
plan?: pulumi.Input<WindowsVirtualMachinePlan>;A plan block as defined below. Changing this forces a new resource to be created.
property priority
priority?: pulumi.Input<string>;Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
property privateIpAddress
privateIpAddress?: pulumi.Input<string>;The Primary Private IP Address assigned to this Virtual Machine.
property privateIpAddresses
privateIpAddresses?: pulumi.Input<pulumi.Input<string>[]>;A list of Private IP Addresses assigned to this Virtual Machine.
property provisionVmAgent
provisionVmAgent?: pulumi.Input<boolean>;Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
property proximityPlacementGroupId
proximityPlacementGroupId?: pulumi.Input<string>;The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
property publicIpAddress
publicIpAddress?: pulumi.Input<string>;The Primary Public IP Address assigned to this Virtual Machine.
property publicIpAddresses
publicIpAddresses?: pulumi.Input<pulumi.Input<string>[]>;A list of the Public IP Addresses assigned to this Virtual Machine.
property resourceGroupName
resourceGroupName?: pulumi.Input<string>;The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created.
property secrets
secrets?: pulumi.Input<pulumi.Input<WindowsVirtualMachineSecret>[]>;One or more secret blocks as defined below.
property size
size?: pulumi.Input<string>;The SKU which should be used for this Virtual Machine, such as Standard_F2.
property sourceImageId
sourceImageId?: pulumi.Input<string>;The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created.
property sourceImageReference
sourceImageReference?: pulumi.Input<WindowsVirtualMachineSourceImageReference>;A sourceImageReference block as defined below. Changing this forces a new resource to be created.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;A mapping of tags which should be assigned to this Virtual Machine.
property timezone
timezone?: pulumi.Input<string>;Specifies the Time Zone which should be used by the Virtual Machine, the possible values are defined here.
property virtualMachineId
virtualMachineId?: pulumi.Input<string>;A 128-bit identifier which uniquely identifies this Virtual Machine.
property virtualMachineScaleSetId
virtualMachineScaleSetId?: pulumi.Input<string>;Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created.
property winrmListeners
winrmListeners?: pulumi.Input<pulumi.Input<WindowsVirtualMachineWinrmListener>[]>;One or more winrmListener blocks as defined below.
property zone
zone?: pulumi.Input<string>;The Zone in which this Virtual Machine should be created. Changing this forces a new resource to be created.