compute

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-azure repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-azurerm repo.

class pulumi_azure.compute.AvailabilitySet(resource_name, opts=None, location=None, managed=None, name=None, platform_fault_domain_count=None, platform_update_domain_count=None, proximity_placement_group_id=None, resource_group_name=None, tags=None, __props__=None, __name__=None, __opts__=None)

Manages an availability set for virtual machines.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • managed (pulumi.Input[bool]) – Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is false.

  • name (pulumi.Input[str]) – Specifies the name of the availability set. Changing this forces a new resource to be created.

  • platform_fault_domain_count (pulumi.Input[float]) – Specifies the number of fault domains that are used. Defaults to 3.

  • platform_update_domain_count (pulumi.Input[float]) – Specifies the number of update domains that are used. Defaults to 5.

  • proximity_placement_group_id (pulumi.Input[str]) – The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

location = None

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

managed = None

Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is false.

name = None

Specifies the name of the availability set. Changing this forces a new resource to be created.

platform_fault_domain_count = None

Specifies the number of fault domains that are used. Defaults to 3.

platform_update_domain_count = None

Specifies the number of update domains that are used. Defaults to 5.

proximity_placement_group_id = None

The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

resource_group_name = None

The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, location=None, managed=None, name=None, platform_fault_domain_count=None, platform_update_domain_count=None, proximity_placement_group_id=None, resource_group_name=None, tags=None)

Get an existing AvailabilitySet resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • managed (pulumi.Input[bool]) – Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is false.

  • name (pulumi.Input[str]) – Specifies the name of the availability set. Changing this forces a new resource to be created.

  • platform_fault_domain_count (pulumi.Input[float]) – Specifies the number of fault domains that are used. Defaults to 3.

  • platform_update_domain_count (pulumi.Input[float]) – Specifies the number of update domains that are used. Defaults to 5.

  • proximity_placement_group_id (pulumi.Input[str]) – The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the availability set. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.AwaitableGetAvailabilitySetResult(location=None, managed=None, name=None, platform_fault_domain_count=None, platform_update_domain_count=None, resource_group_name=None, tags=None, id=None)
class pulumi_azure.compute.AwaitableGetImageResult(data_disks=None, location=None, name=None, name_regex=None, os_disks=None, resource_group_name=None, sort_descending=None, tags=None, zone_resilient=None, id=None)
class pulumi_azure.compute.AwaitableGetManagedDiskResult(create_option=None, disk_iops_read_write=None, disk_mbps_read_write=None, disk_size_gb=None, name=None, os_type=None, resource_group_name=None, source_resource_id=None, source_uri=None, storage_account_type=None, tags=None, zones=None, id=None)
class pulumi_azure.compute.AwaitableGetPlatformImageResult(location=None, offer=None, publisher=None, sku=None, version=None, id=None)
class pulumi_azure.compute.AwaitableGetSharedImageGalleryResult(description=None, location=None, name=None, resource_group_name=None, tags=None, unique_name=None, id=None)
class pulumi_azure.compute.AwaitableGetSharedImageResult(description=None, eula=None, gallery_name=None, identifiers=None, location=None, name=None, os_type=None, privacy_statement_uri=None, release_note_uri=None, resource_group_name=None, tags=None, id=None)
class pulumi_azure.compute.AwaitableGetSharedImageVersionResult(exclude_from_latest=None, gallery_name=None, image_name=None, location=None, managed_image_id=None, name=None, resource_group_name=None, tags=None, target_regions=None, id=None)
class pulumi_azure.compute.AwaitableGetSnapshotResult(creation_option=None, disk_size_gb=None, encryption_settings=None, name=None, os_type=None, resource_group_name=None, source_resource_id=None, source_uri=None, storage_account_id=None, time_created=None, id=None)
class pulumi_azure.compute.AwaitableGetVirtualMachineResult(name=None, resource_group_name=None, id=None)
class pulumi_azure.compute.BastionHost(resource_name, opts=None, ip_configuration=None, location=None, name=None, resource_group_name=None, tags=None, __props__=None, __name__=None, __opts__=None)

Manages a Bastion Host Instance.

Note: Bastion Host Instances are a preview feature in Azure, and therefore are only supported in a select number of regions. Read more.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • ip_configuration (pulumi.Input[dict]) – A ip_configuration block as defined below.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Bastion Host. Changing this forces a new resource to be created.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the Bastion Host.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

The ip_configuration object supports the following:

  • name (pulumi.Input[str]) - Specifies the name of the Bastion Host. Changing this forces a new resource to be created.

  • publicIpAddressId (pulumi.Input[str])

  • subnetId (pulumi.Input[str])

dns_name = None

The FQDN for the Azure Bastion Host.

ip_configuration = None

A ip_configuration block as defined below.

  • name (str) - Specifies the name of the Bastion Host. Changing this forces a new resource to be created.

  • publicIpAddressId (str)

  • subnetId (str)

location = None

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

name = None

Specifies the name of the Bastion Host. Changing this forces a new resource to be created.

resource_group_name = None

The name of the resource group in which to create the Bastion Host.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, dns_name=None, ip_configuration=None, location=None, name=None, resource_group_name=None, tags=None)

Get an existing BastionHost resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • dns_name (pulumi.Input[str]) – The FQDN for the Azure Bastion Host.

  • ip_configuration (pulumi.Input[dict]) – A ip_configuration block as defined below.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Bastion Host. Changing this forces a new resource to be created.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the Bastion Host.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

The ip_configuration object supports the following:

  • name (pulumi.Input[str]) - Specifies the name of the Bastion Host. Changing this forces a new resource to be created.

  • publicIpAddressId (pulumi.Input[str])

  • subnetId (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.DataDiskAttachment(resource_name, opts=None, caching=None, create_option=None, lun=None, managed_disk_id=None, virtual_machine_id=None, write_accelerator_enabled=None, __props__=None, __name__=None, __opts__=None)

Manages attaching a Disk to a Virtual Machine.

NOTE: Data Disks can be attached either directly on the compute.VirtualMachine resource, or using the compute.DataDiskAttachment resource - 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 storage_data_disk block in the compute.VirtualMachine resource.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • caching (pulumi.Input[str]) – Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.

  • create_option (pulumi.Input[str]) – The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.

  • lun (pulumi.Input[float]) – 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.

  • managed_disk_id (pulumi.Input[str]) – The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.

  • virtual_machine_id (pulumi.Input[str]) – The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.

  • write_accelerator_enabled (pulumi.Input[bool]) – 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.

caching = None

Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.

create_option = None

The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.

lun = None

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.

managed_disk_id = None

The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.

virtual_machine_id = None

The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.

write_accelerator_enabled = None

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.

static get(resource_name, id, opts=None, caching=None, create_option=None, lun=None, managed_disk_id=None, virtual_machine_id=None, write_accelerator_enabled=None)

Get an existing DataDiskAttachment resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • caching (pulumi.Input[str]) – Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.

  • create_option (pulumi.Input[str]) – The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.

  • lun (pulumi.Input[float]) – 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.

  • managed_disk_id (pulumi.Input[str]) – The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.

  • virtual_machine_id (pulumi.Input[str]) – The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.

  • write_accelerator_enabled (pulumi.Input[bool]) –

    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.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.Extension(resource_name, opts=None, auto_upgrade_minor_version=None, location=None, name=None, protected_settings=None, publisher=None, resource_group_name=None, settings=None, tags=None, type=None, type_handler_version=None, virtual_machine_name=None, __props__=None, __name__=None, __opts__=None)

Manages a Virtual Machine Extension to provide post deployment configuration and run automated tasks.

NOTE: Custom Script Extensions for Linux & Windows require that the commandToExecute returns a 0 exit code to be classified as successfully deployed. You can achieve this by appending exit 0 to the end of your commandToExecute.

NOTE: Custom Script Extensions require that the Azure Virtual Machine Guest Agent is running on the Virtual Machine.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • auto_upgrade_minor_version (pulumi.Input[bool]) – Specifies if the platform deploys the latest minor version update to the type_handler_version specified.

  • location (pulumi.Input[str]) – The location where the extension is created. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – The name of the virtual machine extension peering. Changing this forces a new resource to be created.

  • protected_settings (pulumi.Input[str]) – The protected_settings passed to the extension, like settings, these are specified as a JSON object in a string.

  • publisher (pulumi.Input[str]) – The publisher of the extension, available publishers can be found by using the Azure CLI.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the virtual network. Changing this forces a new resource to be created.

  • settings (pulumi.Input[str]) – The settings passed to the extension, these are specified as a JSON object in a string.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

  • type (pulumi.Input[str]) – The type of extension, available types for a publisher can be found using the Azure CLI.

  • type_handler_version (pulumi.Input[str]) – Specifies the version of the extension to use, available versions can be found using the Azure CLI.

  • virtual_machine_name (pulumi.Input[str]) – The name of the virtual machine. Changing this forces a new resource to be created.

auto_upgrade_minor_version = None

Specifies if the platform deploys the latest minor version update to the type_handler_version specified.

location = None

The location where the extension is created. Changing this forces a new resource to be created.

name = None

The name of the virtual machine extension peering. Changing this forces a new resource to be created.

protected_settings = None

The protected_settings passed to the extension, like settings, these are specified as a JSON object in a string.

publisher = None

The publisher of the extension, available publishers can be found by using the Azure CLI.

resource_group_name = None

The name of the resource group in which to create the virtual network. Changing this forces a new resource to be created.

settings = None

The settings passed to the extension, these are specified as a JSON object in a string.

tags = None

A mapping of tags to assign to the resource.

type = None

The type of extension, available types for a publisher can be found using the Azure CLI.

type_handler_version = None

Specifies the version of the extension to use, available versions can be found using the Azure CLI.

virtual_machine_name = None

The name of the virtual machine. Changing this forces a new resource to be created.

static get(resource_name, id, opts=None, auto_upgrade_minor_version=None, location=None, name=None, protected_settings=None, publisher=None, resource_group_name=None, settings=None, tags=None, type=None, type_handler_version=None, virtual_machine_name=None)

Get an existing Extension resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • auto_upgrade_minor_version (pulumi.Input[bool]) – Specifies if the platform deploys the latest minor version update to the type_handler_version specified.

  • location (pulumi.Input[str]) – The location where the extension is created. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – The name of the virtual machine extension peering. Changing this forces a new resource to be created.

  • protected_settings (pulumi.Input[str]) – The protected_settings passed to the extension, like settings, these are specified as a JSON object in a string.

  • publisher (pulumi.Input[str]) – The publisher of the extension, available publishers can be found by using the Azure CLI.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the virtual network. Changing this forces a new resource to be created.

  • settings (pulumi.Input[str]) – The settings passed to the extension, these are specified as a JSON object in a string.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

  • type (pulumi.Input[str]) – The type of extension, available types for a publisher can be found using the Azure CLI.

  • type_handler_version (pulumi.Input[str]) – Specifies the version of the extension to use, available versions can be found using the Azure CLI.

  • virtual_machine_name (pulumi.Input[str]) – The name of the virtual machine. Changing this forces a new resource to be created.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.GetAvailabilitySetResult(location=None, managed=None, name=None, platform_fault_domain_count=None, platform_update_domain_count=None, resource_group_name=None, tags=None, id=None)

A collection of values returned by getAvailabilitySet.

location = None

The supported Azure location where the Availability Set exists.

managed = None

Whether the availability set is managed or not.

platform_fault_domain_count = None

The number of fault domains that are used.

platform_update_domain_count = None

The number of update domains that are used.

tags = None

A mapping of tags assigned to the resource.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.GetImageResult(data_disks=None, location=None, name=None, name_regex=None, os_disks=None, resource_group_name=None, sort_descending=None, tags=None, zone_resilient=None, id=None)

A collection of values returned by getImage.

data_disks = None

a collection of data_disk blocks as defined below.

location = None

the Azure Location where this Image exists.

name = None

the name of the Image.

os_disks = None

a os_disk block as defined below.

tags = None

a mapping of tags to assigned to the resource.

zone_resilient = None

is zone resiliency enabled?

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.GetManagedDiskResult(create_option=None, disk_iops_read_write=None, disk_mbps_read_write=None, disk_size_gb=None, name=None, os_type=None, resource_group_name=None, source_resource_id=None, source_uri=None, storage_account_type=None, tags=None, zones=None, id=None)

A collection of values returned by getManagedDisk.

disk_iops_read_write = None

The number of IOPS allowed for this disk. One operation can transfer between 4k and 256k bytes.

disk_mbps_read_write = None

The bandwidth allowed for this disk.

disk_size_gb = None

The size of the managed disk in gigabytes.

os_type = None

The operating system for managed disk. Valid values are Linux or Windows

source_resource_id = None

ID of an existing managed disk that the current resource was created from.

source_uri = None

The source URI for the managed disk

storage_account_type = None

The storage account type for the managed disk.

tags = None

A mapping of tags assigned to the resource.

zones = None

A collection containing the availability zone the managed disk is allocated in.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.GetPlatformImageResult(location=None, offer=None, publisher=None, sku=None, version=None, id=None)

A collection of values returned by getPlatformImage.

version = None

The latest version of the Platform Image.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.GetSharedImageGalleryResult(description=None, location=None, name=None, resource_group_name=None, tags=None, unique_name=None, id=None)

A collection of values returned by getSharedImageGallery.

description = None

A description for the Shared Image Gallery.

tags = None

A mapping of tags which are assigned to the Shared Image Gallery.

unique_name = None

The unique name assigned to the Shared Image Gallery.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.GetSharedImageResult(description=None, eula=None, gallery_name=None, identifiers=None, location=None, name=None, os_type=None, privacy_statement_uri=None, release_note_uri=None, resource_group_name=None, tags=None, id=None)

A collection of values returned by getSharedImage.

description = None

The description of this Shared Image.

eula = None

The End User Licence Agreement for the Shared Image.

identifiers = None

An identifier block as defined below.

location = None

The supported Azure location where the Shared Image Gallery exists.

os_type = None

The type of Operating System present in this Shared Image.

privacy_statement_uri = None

The URI containing the Privacy Statement for this Shared Image.

release_note_uri = None

The URI containing the Release Notes for this Shared Image.

tags = None

A mapping of tags assigned to the Shared Image.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.GetSharedImageVersionResult(exclude_from_latest=None, gallery_name=None, image_name=None, location=None, managed_image_id=None, name=None, resource_group_name=None, tags=None, target_regions=None, id=None)

A collection of values returned by getSharedImageVersion.

exclude_from_latest = None

Is this Image Version excluded from the latest filter?

location = None

The supported Azure location where the Shared Image Gallery exists.

managed_image_id = None

The ID of the Managed Image which was the source of this Shared Image Version.

name = None

The Azure Region in which this Image Version exists.

tags = None

A mapping of tags assigned to the Shared Image.

target_regions = None

One or more target_region blocks as documented below.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.GetSnapshotResult(creation_option=None, disk_size_gb=None, encryption_settings=None, name=None, os_type=None, resource_group_name=None, source_resource_id=None, source_uri=None, storage_account_id=None, time_created=None, id=None)

A collection of values returned by getSnapshot.

disk_size_gb = None

The size of the Snapshotted Disk in GB.

source_resource_id = None

The reference to an existing snapshot.

source_uri = None

The URI to a Managed or Unmanaged Disk.

storage_account_id = None

The ID of an storage account.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.GetVirtualMachineResult(name=None, resource_group_name=None, id=None)

A collection of values returned by getVirtualMachine.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_azure.compute.Image(resource_name, opts=None, data_disks=None, location=None, name=None, os_disk=None, resource_group_name=None, source_virtual_machine_id=None, tags=None, zone_resilient=None, __props__=None, __name__=None, __opts__=None)

Manages a custom virtual machine image that can be used to create virtual machines.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • data_disks (pulumi.Input[list]) – One or more data_disk elements as defined below.

  • location (pulumi.Input[str]) – Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the image. Changing this forces a new resource to be created.

  • os_disk (pulumi.Input[dict]) – One or more os_disk elements as defined below.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the image. Changing this forces a new resource to be created.

  • source_virtual_machine_id (pulumi.Input[str]) – The Virtual Machine ID from which to create the image.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

  • zone_resilient (pulumi.Input[bool]) – Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.

The data_disks object supports the following:

  • blobUri (pulumi.Input[str]) - Specifies the URI in Azure storage of the blob that you want to use to create the image.

  • caching (pulumi.Input[str]) - Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.

  • lun (pulumi.Input[float]) - Specifies the logical unit number of the data disk.

  • managed_disk_id (pulumi.Input[str]) - Specifies the ID of the managed disk resource that you want to use to create the image.

  • sizeGb (pulumi.Input[float]) - Specifies the size of the image to be created. The target size can’t be smaller than the source size.

The os_disk object supports the following:

  • blobUri (pulumi.Input[str]) - Specifies the URI in Azure storage of the blob that you want to use to create the image.

  • caching (pulumi.Input[str]) - Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.

  • managed_disk_id (pulumi.Input[str]) - Specifies the ID of the managed disk resource that you want to use to create the image.

  • osState (pulumi.Input[str]) - Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized.

  • os_type (pulumi.Input[str]) - Specifies the type of operating system contained in the the virtual machine image. Possible values are: Windows or Linux.

  • sizeGb (pulumi.Input[float]) - Specifies the size of the image to be created. The target size can’t be smaller than the source size.

data_disks = None

One or more data_disk elements as defined below.

  • blobUri (str) - Specifies the URI in Azure storage of the blob that you want to use to create the image.

  • caching (str) - Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.

  • lun (float) - Specifies the logical unit number of the data disk.

  • managed_disk_id (str) - Specifies the ID of the managed disk resource that you want to use to create the image.

  • sizeGb (float) - Specifies the size of the image to be created. The target size can’t be smaller than the source size.

location = None

Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.

name = None

Specifies the name of the image. Changing this forces a new resource to be created.

os_disk = None

One or more os_disk elements as defined below.

  • blobUri (str) - Specifies the URI in Azure storage of the blob that you want to use to create the image.

  • caching (str) - Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.

  • managed_disk_id (str) - Specifies the ID of the managed disk resource that you want to use to create the image.

  • osState (str) - Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized.

  • os_type (str) - Specifies the type of operating system contained in the the virtual machine image. Possible values are: Windows or Linux.

  • sizeGb (float) - Specifies the size of the image to be created. The target size can’t be smaller than the source size.

resource_group_name = None

The name of the resource group in which to create the image. Changing this forces a new resource to be created.

source_virtual_machine_id = None

The Virtual Machine ID from which to create the image.

tags = None

A mapping of tags to assign to the resource.

zone_resilient = None

Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.

static get(resource_name, id, opts=None, data_disks=None, location=None, name=None, os_disk=None, resource_group_name=None, source_virtual_machine_id=None, tags=None, zone_resilient=None)

Get an existing Image resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • data_disks (pulumi.Input[list]) – One or more data_disk elements as defined below.

  • location (pulumi.Input[str]) – Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the image. Changing this forces a new resource to be created.

  • os_disk (pulumi.Input[dict]) – One or more os_disk elements as defined below.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the image. Changing this forces a new resource to be created.

  • source_virtual_machine_id (pulumi.Input[str]) – The Virtual Machine ID from which to create the image.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

  • zone_resilient (pulumi.Input[bool]) – Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.

The data_disks object supports the following:

  • blobUri (pulumi.Input[str]) - Specifies the URI in Azure storage of the blob that you want to use to create the image.

  • caching (pulumi.Input[str]) - Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.

  • lun (pulumi.Input[float]) - Specifies the logical unit number of the data disk.

  • managed_disk_id (pulumi.Input[str]) - Specifies the ID of the managed disk resource that you want to use to create the image.

  • sizeGb (pulumi.Input[float]) - Specifies the size of the image to be created. The target size can’t be smaller than the source size.

The os_disk object supports the following:

  • blobUri (pulumi.Input[str]) - Specifies the URI in Azure storage of the blob that you want to use to create the image.

  • caching (pulumi.Input[str]) - Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.

  • managed_disk_id (pulumi.Input[str]) - Specifies the ID of the managed disk resource that you want to use to create the image.

  • osState (pulumi.Input[str]) - Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized.

  • os_type (pulumi.Input[str]) - Specifies the type of operating system contained in the the virtual machine image. Possible values are: Windows or Linux.

  • sizeGb (pulumi.Input[float]) - Specifies the size of the image to be created. The target size can’t be smaller than the source size.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.ManagedDisk(resource_name, opts=None, create_option=None, disk_iops_read_write=None, disk_mbps_read_write=None, disk_size_gb=None, encryption_settings=None, image_reference_id=None, location=None, name=None, os_type=None, resource_group_name=None, source_resource_id=None, source_uri=None, storage_account_type=None, tags=None, zones=None, __props__=None, __name__=None, __opts__=None)

Manages a managed disk.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • create_option (pulumi.Input[str]) – The method to use when creating the managed disk. Possible values include:

  • disk_iops_read_write (pulumi.Input[float]) – The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.

  • disk_mbps_read_write (pulumi.Input[float]) – The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second.

  • disk_size_gb (pulumi.Input[float]) – Specifies the size of the managed disk to create in gigabytes. If create_option is Copy or FromImage, then the value must be equal to or greater than the source’s size.

  • encryption_settings (pulumi.Input[dict]) – an encryption_settings block as defined below.

  • image_reference_id (pulumi.Input[str]) – ID of an existing platform/marketplace disk image to copy when create_option is FromImage.

  • location (pulumi.Input[str]) – Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the managed disk. Changing this forces a new resource to be created.

  • os_type (pulumi.Input[str]) – 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

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the managed disk.

  • source_resource_id (pulumi.Input[str]) – ID of an existing managed disk to copy create_option is Copy or the recovery point to restore when create_option is Restore

  • source_uri (pulumi.Input[str]) – URI to a valid VHD file to be used when create_option is Import.

  • storage_account_type (pulumi.Input[str]) – The type of storage to use for the managed disk. Allowable values are Standard_LRS, Premium_LRS, StandardSSD_LRS or UltraSSD_LRS.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

  • zones (pulumi.Input[str]) – A collection containing the availability zone to allocate the Managed Disk in.

The encryption_settings object supports the following:

  • diskEncryptionKey (pulumi.Input[dict]) - A disk_encryption_key block as defined below.

    • secretUrl (pulumi.Input[str]) - The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the keyvault.Secret resource.

    • sourceVaultId (pulumi.Input[str]) - The URL of the Key Vault. This can be found as vault_uri on the keyvault.KeyVault resource.

  • enabled (pulumi.Input[bool]) - Is Encryption enabled on this Managed Disk? Changing this forces a new resource to be created.

  • keyEncryptionKey (pulumi.Input[dict]) - A key_encryption_key block as defined below.

    • keyUrl (pulumi.Input[str]) - The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the keyvault.Key resource.

    • sourceVaultId (pulumi.Input[str]) - The URL of the Key Vault. This can be found as vault_uri on the keyvault.KeyVault resource.

create_option = None

The method to use when creating the managed disk. Possible values include:

disk_iops_read_write = None

The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.

disk_mbps_read_write = None

The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second.

disk_size_gb = None

Specifies the size of the managed disk to create in gigabytes. If create_option is Copy or FromImage, then the value must be equal to or greater than the source’s size.

encryption_settings = None

an encryption_settings block as defined below.

  • diskEncryptionKey (dict) - A disk_encryption_key block as defined below.

    • secretUrl (str) - The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the keyvault.Secret resource.

    • sourceVaultId (str) - The URL of the Key Vault. This can be found as vault_uri on the keyvault.KeyVault resource.

  • enabled (bool) - Is Encryption enabled on this Managed Disk? Changing this forces a new resource to be created.

  • keyEncryptionKey (dict) - A key_encryption_key block as defined below.

    • keyUrl (str) - The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the keyvault.Key resource.

    • sourceVaultId (str) - The URL of the Key Vault. This can be found as vault_uri on the keyvault.KeyVault resource.

image_reference_id = None

ID of an existing platform/marketplace disk image to copy when create_option is FromImage.

location = None

Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.

name = None

Specifies the name of the managed disk. Changing this forces a new resource to be created.

os_type = None

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

resource_group_name = None

The name of the resource group in which to create the managed disk.

source_resource_id = None

ID of an existing managed disk to copy create_option is Copy or the recovery point to restore when create_option is Restore

source_uri = None

URI to a valid VHD file to be used when create_option is Import.

storage_account_type = None

The type of storage to use for the managed disk. Allowable values are Standard_LRS, Premium_LRS, StandardSSD_LRS or UltraSSD_LRS.

tags = None

A mapping of tags to assign to the resource.

zones = None

A collection containing the availability zone to allocate the Managed Disk in.

static get(resource_name, id, opts=None, create_option=None, disk_iops_read_write=None, disk_mbps_read_write=None, disk_size_gb=None, encryption_settings=None, image_reference_id=None, location=None, name=None, os_type=None, resource_group_name=None, source_resource_id=None, source_uri=None, storage_account_type=None, tags=None, zones=None)

Get an existing ManagedDisk resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • create_option (pulumi.Input[str]) – The method to use when creating the managed disk. Possible values include:

  • disk_iops_read_write (pulumi.Input[float]) – The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes.

  • disk_mbps_read_write (pulumi.Input[float]) – The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second.

  • disk_size_gb (pulumi.Input[float]) – Specifies the size of the managed disk to create in gigabytes. If create_option is Copy or FromImage, then the value must be equal to or greater than the source’s size.

  • encryption_settings (pulumi.Input[dict]) – an encryption_settings block as defined below.

  • image_reference_id (pulumi.Input[str]) – ID of an existing platform/marketplace disk image to copy when create_option is FromImage.

  • location (pulumi.Input[str]) – Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the managed disk. Changing this forces a new resource to be created.

  • os_type (pulumi.Input[str]) – 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

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the managed disk.

  • source_resource_id (pulumi.Input[str]) – ID of an existing managed disk to copy create_option is Copy or the recovery point to restore when create_option is Restore

  • source_uri (pulumi.Input[str]) – URI to a valid VHD file to be used when create_option is Import.

  • storage_account_type (pulumi.Input[str]) – The type of storage to use for the managed disk. Allowable values are Standard_LRS, Premium_LRS, StandardSSD_LRS or UltraSSD_LRS.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

  • zones (pulumi.Input[str]) – A collection containing the availability zone to allocate the Managed Disk in.

The encryption_settings object supports the following:

  • diskEncryptionKey (pulumi.Input[dict]) - A disk_encryption_key block as defined below.

    • secretUrl (pulumi.Input[str]) - The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the keyvault.Secret resource.

    • sourceVaultId (pulumi.Input[str]) - The URL of the Key Vault. This can be found as vault_uri on the keyvault.KeyVault resource.

  • enabled (pulumi.Input[bool]) - Is Encryption enabled on this Managed Disk? Changing this forces a new resource to be created.

  • keyEncryptionKey (pulumi.Input[dict]) - A key_encryption_key block as defined below.

    • keyUrl (pulumi.Input[str]) - The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the keyvault.Key resource.

    • sourceVaultId (pulumi.Input[str]) - The URL of the Key Vault. This can be found as vault_uri on the keyvault.KeyVault resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.ScaleSet(resource_name, opts=None, automatic_os_upgrade=None, boot_diagnostics=None, eviction_policy=None, extensions=None, health_probe_id=None, identity=None, license_type=None, location=None, name=None, network_profiles=None, os_profile=None, os_profile_linux_config=None, os_profile_secrets=None, os_profile_windows_config=None, overprovision=None, plan=None, priority=None, proximity_placement_group_id=None, resource_group_name=None, rolling_upgrade_policy=None, single_placement_group=None, sku=None, storage_profile_data_disks=None, storage_profile_image_reference=None, storage_profile_os_disk=None, tags=None, upgrade_policy_mode=None, zones=None, __props__=None, __name__=None, __opts__=None)

Create a ScaleSet resource with the given unique name, props, and options.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • automatic_os_upgrade (pulumi.Input[bool]) – Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when upgrade_policy_mode is set to Rolling. Defaults to false.

  • boot_diagnostics (pulumi.Input[dict]) – A boot diagnostics profile block as referenced below.

  • eviction_policy (pulumi.Input[str]) – Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete.

  • extensions (pulumi.Input[list]) – Can be specified multiple times to add extension profiles to the scale set. Each extension block supports the fields documented below.

  • health_probe_id (pulumi.Input[str]) – Specifies the identifier for the load balancer health probe. Required when using Rolling as your upgrade_policy_mode.

  • license_type (pulumi.Input[str]) – Specifies the Windows OS license type. If supplied, the only allowed values are Windows_Client and Windows_Server.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the image from the marketplace.

  • network_profiles (pulumi.Input[list]) – A collection of network profile block as documented below.

  • os_profile (pulumi.Input[dict]) – A Virtual Machine OS Profile block as documented below.

  • os_profile_linux_config (pulumi.Input[dict]) – A Linux config block as documented below.

  • os_profile_secrets (pulumi.Input[list]) – A collection of Secret blocks as documented below.

  • os_profile_windows_config (pulumi.Input[dict]) – A Windows config block as documented below.

  • overprovision (pulumi.Input[bool]) – Specifies whether the virtual machine scale set should be overprovisioned.

  • plan (pulumi.Input[dict]) – A plan block as documented below.

  • priority (pulumi.Input[str]) – Specifies the priority for the Virtual Machines in the Scale Set. Defaults to Regular. Possible values are Low and Regular.

  • proximity_placement_group_id (pulumi.Input[str]) – The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.

  • rolling_upgrade_policy (pulumi.Input[dict]) – A rolling_upgrade_policy block as defined below. This is only applicable when the upgrade_policy_mode is Rolling.

  • single_placement_group (pulumi.Input[bool]) – 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.

  • sku (pulumi.Input[dict]) – Specifies the SKU of the image used to create the virtual machines.

  • storage_profile_data_disks (pulumi.Input[list]) – A storage profile data disk block as documented below

  • storage_profile_image_reference (pulumi.Input[dict]) – A storage profile image reference block as documented below.

  • storage_profile_os_disk (pulumi.Input[dict]) – A storage profile os disk block as documented below

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

  • upgrade_policy_mode (pulumi.Input[str]) – 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.

  • zones (pulumi.Input[list]) – A collection of availability zones to spread the Virtual Machines over.

The boot_diagnostics object supports the following:

  • enabled (pulumi.Input[bool])

  • storageUri (pulumi.Input[str])

The extensions object supports the following:

  • auto_upgrade_minor_version (pulumi.Input[bool]) - Specifies whether or not to use the latest minor version available.

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • protected_settings (pulumi.Input[str]) - The protected_settings passed to the extension, like settings, these are specified as a JSON object in a string.

  • provisionAfterExtensions (pulumi.Input[list]) - Specifies a dependency array of extensions required to be executed before, the array stores the name of each extension.

  • publisher (pulumi.Input[str]) - Specifies the publisher of the image.

  • settings (pulumi.Input[str]) - The settings passed to the extension, these are specified as a JSON object in a string.

  • type (pulumi.Input[str]) - The type of extension, available types for a publisher can be found using the Azure CLI.

  • type_handler_version (pulumi.Input[str]) - Specifies the version of the extension to use, available versions can be found using the Azure CLI.

The identity object supports the following:

  • identityIds (pulumi.Input[list]) - Specifies a list of user managed identity ids to be assigned to the VMSS. Required if type is UserAssigned.

  • principal_id (pulumi.Input[str])

  • type (pulumi.Input[str]) - The type of extension, available types for a publisher can be found using the Azure CLI.

The network_profiles object supports the following:

  • acceleratedNetworking (pulumi.Input[bool]) - Specifies whether to enable accelerated networking or not. Defaults to false.

  • dnsSettings (pulumi.Input[dict]) - A dns_settings block as documented below.

    • dnsServers (pulumi.Input[list]) - Specifies an array of dns servers.

  • ipConfigurations (pulumi.Input[list]) - An ip_configuration block as documented below.

    • applicationGatewayBackendAddressPoolIds (pulumi.Input[list]) - Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets cannot use the same application gateway.

    • applicationSecurityGroupIds (pulumi.Input[list]) - Specifies up to 20 application security group IDs.

    • loadBalancerBackendAddressPoolIds (pulumi.Input[list]) - Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.

    • loadBalancerInboundNatRulesIds (pulumi.Input[list]) - Specifies an array of references to inbound NAT pools for load balancers. A scale set can reference inbound nat pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.

    • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

    • primary (pulumi.Input[bool]) - Specifies if this ip_configuration is the primary one.

    • publicIpAddressConfiguration (pulumi.Input[dict]) - Describes a virtual machines scale set IP Configuration’s PublicIPAddress configuration. The public_ip_address_configuration is documented below.

      • domainNameLabel (pulumi.Input[str]) - The domain name label for the dns settings.

      • idleTimeout (pulumi.Input[float]) - The idle timeout in minutes. This value must be between 4 and 30.

      • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

    • subnetId (pulumi.Input[str]) - Specifies the identifier of the subnet.

  • ipForwarding (pulumi.Input[bool]) - Whether IP forwarding is enabled on this NIC. Defaults to false.

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • networkSecurityGroupId (pulumi.Input[str]) - Specifies the identifier for the network security group.

  • primary (pulumi.Input[bool]) - Specifies if this ip_configuration is the primary one.

The os_profile object supports the following:

  • adminPassword (pulumi.Input[str]) - Specifies the administrator password to use for all the instances of virtual machines in a scale set.

  • adminUsername (pulumi.Input[str]) - Specifies the administrator account name to use for all the instances of virtual machines in the scale set.

  • computerNamePrefix (pulumi.Input[str]) - Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 9 characters long for windows images and 1 - 58 for linux. Changing this forces a new resource to be created.

  • customData (pulumi.Input[str]) - Specifies custom data to supply to the machine. On linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.

The os_profile_linux_config object supports the following:

  • disablePasswordAuthentication (pulumi.Input[bool]) - Specifies whether password authentication should be disabled. Defaults to false. Changing this forces a new resource to be created.

  • sshKeys (pulumi.Input[list]) - Specifies a collection of path and key_data to be placed on the virtual machine.

    • keyData (pulumi.Input[str])

    • path (pulumi.Input[str])

The os_profile_secrets object supports the following:

  • sourceVaultId (pulumi.Input[str]) - Specifies the key vault to use.

  • vaultCertificates (pulumi.Input[list]) - A collection of Vault Certificates as documented below

    • certificateStore (pulumi.Input[str]) - Specifies the certificate store on the Virtual Machine where the certificate should be added to.

    • certificateUrl (pulumi.Input[str]) - Specifies URL of the certificate with which new Virtual Machines is provisioned.

The os_profile_windows_config object supports the following:

  • additionalUnattendConfigs (pulumi.Input[list]) - An Additional Unattended Config block as documented below.

    • component (pulumi.Input[str]) - Specifies the name of the component to configure with the added content. The only allowable value is Microsoft-Windows-Shell-Setup.

    • content (pulumi.Input[str]) - Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.

    • pass (pulumi.Input[str]) - Specifies the name of the pass that the content applies to. The only allowable value is oobeSystem.

    • settingName (pulumi.Input[str]) - Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.

  • enableAutomaticUpgrades (pulumi.Input[bool]) - Indicates whether virtual machines in the scale set are enabled for automatic updates.

  • provisionVmAgent (pulumi.Input[bool]) - Indicates whether virtual machine agent should be provisioned on the virtual machines in the scale set.

  • winrms (pulumi.Input[list]) - A collection of WinRM configuration blocks as documented below.

    • certificateUrl (pulumi.Input[str]) - Specifies URL of the certificate with which new Virtual Machines is provisioned.

    • protocol (pulumi.Input[str]) - Specifies the protocol of listener

The plan object supports the following:

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • product (pulumi.Input[str]) - Specifies the product of the image from the marketplace.

  • publisher (pulumi.Input[str]) - Specifies the publisher of the image.

The rolling_upgrade_policy object supports the following:

  • maxBatchInstancePercent (pulumi.Input[float]) - The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to 20.

  • maxUnhealthyInstancePercent (pulumi.Input[float]) - The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to 20.

  • maxUnhealthyUpgradedInstancePercent (pulumi.Input[float]) - The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to 20.

  • pauseTimeBetweenBatches (pulumi.Input[str]) - The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (https://en.wikipedia.org/wiki/ISO_8601#Durations). Defaults to 0 seconds represented as PT0S.

The sku object supports the following:

  • capacity (pulumi.Input[float]) - Specifies the number of virtual machines in the scale set.

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • tier (pulumi.Input[str]) - Specifies the tier of virtual machines in a scale set. Possible values, standard or basic.

The storage_profile_data_disks object supports the following:

  • caching (pulumi.Input[str]) - Specifies the caching requirements. Possible values include: None (default), ReadOnly, ReadWrite.

  • create_option (pulumi.Input[str]) - Specifies how the data disk should be created. The only possible options are FromImage and Empty.

  • disk_size_gb (pulumi.Input[float]) - Specifies the size of the disk in GB. This element is required when creating an empty disk.

  • lun (pulumi.Input[float]) - Specifies the Logical Unit Number of the disk in each virtual machine in the scale set.

  • managedDiskType (pulumi.Input[str]) - Specifies the type of managed disk to create. Value must be either Standard_LRS, StandardSSD_LRS or Premium_LRS.

The storage_profile_image_reference object supports the following:

  • id (pulumi.Input[str]) - Specifies the ID of the (custom) image to use to create the virtual machine scale set, as in the example below.

  • offer (pulumi.Input[str]) - Specifies the offer of the image used to create the virtual machines.

  • publisher (pulumi.Input[str]) - Specifies the publisher of the image.

  • sku (pulumi.Input[str]) - Specifies the SKU of the image used to create the virtual machines.

  • version (pulumi.Input[str]) - Specifies the version of the image used to create the virtual machines.

The storage_profile_os_disk object supports the following:

  • caching (pulumi.Input[str]) - Specifies the caching requirements. Possible values include: None (default), ReadOnly, ReadWrite.

  • create_option (pulumi.Input[str]) - Specifies how the data disk should be created. The only possible options are FromImage and Empty.

  • image (pulumi.Input[str]) - Specifies the blob uri for user image. A virtual machine scale set creates an os disk in the same container as the user image. Updating the osDisk image causes the existing disk to be deleted and a new one created with the new image. If the VM scale set is in Manual upgrade mode then the virtual machines are not updated until they have manualUpgrade applied to them. When setting this field os_type needs to be specified. Cannot be used when vhd_containers, managed_disk_type or storage_profile_image_reference are specified.

  • managedDiskType (pulumi.Input[str]) - Specifies the type of managed disk to create. Value must be either Standard_LRS, StandardSSD_LRS or Premium_LRS.

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • os_type (pulumi.Input[str]) - Specifies the operating system Type, valid values are windows, linux.

  • vhdContainers (pulumi.Input[list]) - Specifies the vhd uri. Cannot be used when image or managed_disk_type is specified.

automatic_os_upgrade = None

Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when upgrade_policy_mode is set to Rolling. Defaults to false.

boot_diagnostics = None

A boot diagnostics profile block as referenced below.

  • enabled (bool)

  • storageUri (str)

eviction_policy = None

Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete.

extensions = None

Can be specified multiple times to add extension profiles to the scale set. Each extension block supports the fields documented below.

  • auto_upgrade_minor_version (bool) - Specifies whether or not to use the latest minor version available.

  • name (str) - Specifies the name of the image from the marketplace.

  • protected_settings (str) - The protected_settings passed to the extension, like settings, these are specified as a JSON object in a string.

  • provisionAfterExtensions (list) - Specifies a dependency array of extensions required to be executed before, the array stores the name of each extension.

  • publisher (str) - Specifies the publisher of the image.

  • settings (str) - The settings passed to the extension, these are specified as a JSON object in a string.

  • type (str) - The type of extension, available types for a publisher can be found using the Azure CLI.

  • type_handler_version (str) - Specifies the version of the extension to use, available versions can be found using the Azure CLI.

health_probe_id = None

Specifies the identifier for the load balancer health probe. Required when using Rolling as your upgrade_policy_mode.

license_type = None

Specifies the Windows OS license type. If supplied, the only allowed values are Windows_Client and Windows_Server.

location = None

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

name = None

Specifies the name of the image from the marketplace.

network_profiles = None

A collection of network profile block as documented below.

  • acceleratedNetworking (bool) - Specifies whether to enable accelerated networking or not. Defaults to false.

  • dnsSettings (dict) - A dns_settings block as documented below.

    • dnsServers (list) - Specifies an array of dns servers.

  • ipConfigurations (list) - An ip_configuration block as documented below.

    • applicationGatewayBackendAddressPoolIds (list) - Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets cannot use the same application gateway.

    • applicationSecurityGroupIds (list) - Specifies up to 20 application security group IDs.

    • loadBalancerBackendAddressPoolIds (list) - Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.

    • loadBalancerInboundNatRulesIds (list) - Specifies an array of references to inbound NAT pools for load balancers. A scale set can reference inbound nat pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.

    • name (str) - Specifies the name of the image from the marketplace.

    • primary (bool) - Specifies if this ip_configuration is the primary one.

    • publicIpAddressConfiguration (dict) - Describes a virtual machines scale set IP Configuration’s PublicIPAddress configuration. The public_ip_address_configuration is documented below.

      • domainNameLabel (str) - The domain name label for the dns settings.

      • idleTimeout (float) - The idle timeout in minutes. This value must be between 4 and 30.

      • name (str) - Specifies the name of the image from the marketplace.

    • subnetId (str) - Specifies the identifier of the subnet.

  • ipForwarding (bool) - Whether IP forwarding is enabled on this NIC. Defaults to false.

  • name (str) - Specifies the name of the image from the marketplace.

  • networkSecurityGroupId (str) - Specifies the identifier for the network security group.

  • primary (bool) - Specifies if this ip_configuration is the primary one.

os_profile = None

A Virtual Machine OS Profile block as documented below.

  • adminPassword (str) - Specifies the administrator password to use for all the instances of virtual machines in a scale set.

  • adminUsername (str) - Specifies the administrator account name to use for all the instances of virtual machines in the scale set.

  • computerNamePrefix (str) - Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 9 characters long for windows images and 1 - 58 for linux. Changing this forces a new resource to be created.

  • customData (str) - Specifies custom data to supply to the machine. On linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.

os_profile_linux_config = None

A Linux config block as documented below.

  • disablePasswordAuthentication (bool) - Specifies whether password authentication should be disabled. Defaults to false. Changing this forces a new resource to be created.

  • sshKeys (list) - Specifies a collection of path and key_data to be placed on the virtual machine.

    • keyData (str)

    • path (str)

os_profile_secrets = None

A collection of Secret blocks as documented below.

  • sourceVaultId (str) - Specifies the key vault to use.

  • vaultCertificates (list) - A collection of Vault Certificates as documented below

    • certificateStore (str) - Specifies the certificate store on the Virtual Machine where the certificate should be added to.

    • certificateUrl (str) - Specifies URL of the certificate with which new Virtual Machines is provisioned.

os_profile_windows_config = None

A Windows config block as documented below.

  • additionalUnattendConfigs (list) - An Additional Unattended Config block as documented below.

    • component (str) - Specifies the name of the component to configure with the added content. The only allowable value is Microsoft-Windows-Shell-Setup.

    • content (str) - Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.

    • pass (str) - Specifies the name of the pass that the content applies to. The only allowable value is oobeSystem.

    • settingName (str) - Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.

  • enableAutomaticUpgrades (bool) - Indicates whether virtual machines in the scale set are enabled for automatic updates.

  • provisionVmAgent (bool) - Indicates whether virtual machine agent should be provisioned on the virtual machines in the scale set.

  • winrms (list) - A collection of WinRM configuration blocks as documented below.

    • certificateUrl (str) - Specifies URL of the certificate with which new Virtual Machines is provisioned.

    • protocol (str) - Specifies the protocol of listener

overprovision = None

Specifies whether the virtual machine scale set should be overprovisioned.

plan = None

A plan block as documented below.

  • name (str) - Specifies the name of the image from the marketplace.

  • product (str) - Specifies the product of the image from the marketplace.

  • publisher (str) - Specifies the publisher of the image.

priority = None

Specifies the priority for the Virtual Machines in the Scale Set. Defaults to Regular. Possible values are Low and Regular.

proximity_placement_group_id = None

The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

resource_group_name = None

The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.

rolling_upgrade_policy = None

A rolling_upgrade_policy block as defined below. This is only applicable when the upgrade_policy_mode is Rolling.

  • maxBatchInstancePercent (float) - The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to 20.

  • maxUnhealthyInstancePercent (float) - The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to 20.

  • maxUnhealthyUpgradedInstancePercent (float) - The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to 20.

  • pauseTimeBetweenBatches (str) - The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (https://en.wikipedia.org/wiki/ISO_8601#Durations). Defaults to 0 seconds represented as PT0S.

single_placement_group = None

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.

sku = None

Specifies the SKU of the image used to create the virtual machines.

  • capacity (float) - Specifies the number of virtual machines in the scale set.

  • name (str) - Specifies the name of the image from the marketplace.

  • tier (str) - Specifies the tier of virtual machines in a scale set. Possible values, standard or basic.

storage_profile_data_disks = None

A storage profile data disk block as documented below

  • caching (str) - Specifies the caching requirements. Possible values include: None (default), ReadOnly, ReadWrite.

  • create_option (str) - Specifies how the data disk should be created. The only possible options are FromImage and Empty.

  • disk_size_gb (float) - Specifies the size of the disk in GB. This element is required when creating an empty disk.

  • lun (float) - Specifies the Logical Unit Number of the disk in each virtual machine in the scale set.

  • managedDiskType (str) - Specifies the type of managed disk to create. Value must be either Standard_LRS, StandardSSD_LRS or Premium_LRS.

storage_profile_image_reference = None

A storage profile image reference block as documented below.

  • id (str) - Specifies the ID of the (custom) image to use to create the virtual machine scale set, as in the example below.

  • offer (str) - Specifies the offer of the image used to create the virtual machines.

  • publisher (str) - Specifies the publisher of the image.

  • sku (str) - Specifies the SKU of the image used to create the virtual machines.

  • version (str) - Specifies the version of the image used to create the virtual machines.

storage_profile_os_disk = None

A storage profile os disk block as documented below

  • caching (str) - Specifies the caching requirements. Possible values include: None (default), ReadOnly, ReadWrite.

  • create_option (str) - Specifies how the data disk should be created. The only possible options are FromImage and Empty.

  • image (str) - Specifies the blob uri for user image. A virtual machine scale set creates an os disk in the same container as the user image. Updating the osDisk image causes the existing disk to be deleted and a new one created with the new image. If the VM scale set is in Manual upgrade mode then the virtual machines are not updated until they have manualUpgrade applied to them. When setting this field os_type needs to be specified. Cannot be used when vhd_containers, managed_disk_type or storage_profile_image_reference are specified.

  • managedDiskType (str) - Specifies the type of managed disk to create. Value must be either Standard_LRS, StandardSSD_LRS or Premium_LRS.

  • name (str) - Specifies the name of the image from the marketplace.

  • os_type (str) - Specifies the operating system Type, valid values are windows, linux.

  • vhdContainers (list) - Specifies the vhd uri. Cannot be used when image or managed_disk_type is specified.

tags = None

A mapping of tags to assign to the resource.

upgrade_policy_mode = None

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.

zones = None

A collection of availability zones to spread the Virtual Machines over.

static get(resource_name, id, opts=None, automatic_os_upgrade=None, boot_diagnostics=None, eviction_policy=None, extensions=None, health_probe_id=None, identity=None, license_type=None, location=None, name=None, network_profiles=None, os_profile=None, os_profile_linux_config=None, os_profile_secrets=None, os_profile_windows_config=None, overprovision=None, plan=None, priority=None, proximity_placement_group_id=None, resource_group_name=None, rolling_upgrade_policy=None, single_placement_group=None, sku=None, storage_profile_data_disks=None, storage_profile_image_reference=None, storage_profile_os_disk=None, tags=None, upgrade_policy_mode=None, zones=None)

Get an existing ScaleSet resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • automatic_os_upgrade (pulumi.Input[bool]) – Automatic OS patches can be applied by Azure to your scaleset. This is particularly useful when upgrade_policy_mode is set to Rolling. Defaults to false.

  • boot_diagnostics (pulumi.Input[dict]) – A boot diagnostics profile block as referenced below.

  • eviction_policy (pulumi.Input[str]) – Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete.

  • extensions (pulumi.Input[list]) – Can be specified multiple times to add extension profiles to the scale set. Each extension block supports the fields documented below.

  • health_probe_id (pulumi.Input[str]) – Specifies the identifier for the load balancer health probe. Required when using Rolling as your upgrade_policy_mode.

  • license_type (pulumi.Input[str]) – Specifies the Windows OS license type. If supplied, the only allowed values are Windows_Client and Windows_Server.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the image from the marketplace.

  • network_profiles (pulumi.Input[list]) – A collection of network profile block as documented below.

  • os_profile (pulumi.Input[dict]) – A Virtual Machine OS Profile block as documented below.

  • os_profile_linux_config (pulumi.Input[dict]) – A Linux config block as documented below.

  • os_profile_secrets (pulumi.Input[list]) – A collection of Secret blocks as documented below.

  • os_profile_windows_config (pulumi.Input[dict]) – A Windows config block as documented below.

  • overprovision (pulumi.Input[bool]) – Specifies whether the virtual machine scale set should be overprovisioned.

  • plan (pulumi.Input[dict]) – A plan block as documented below.

  • priority (pulumi.Input[str]) – Specifies the priority for the Virtual Machines in the Scale Set. Defaults to Regular. Possible values are Low and Regular.

  • proximity_placement_group_id (pulumi.Input[str]) – The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the virtual machine scale set. Changing this forces a new resource to be created.

  • rolling_upgrade_policy (pulumi.Input[dict]) – A rolling_upgrade_policy block as defined below. This is only applicable when the upgrade_policy_mode is Rolling.

  • single_placement_group (pulumi.Input[bool]) –

    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.

  • sku (pulumi.Input[dict]) – Specifies the SKU of the image used to create the virtual machines.

  • storage_profile_data_disks (pulumi.Input[list]) – A storage profile data disk block as documented below

  • storage_profile_image_reference (pulumi.Input[dict]) – A storage profile image reference block as documented below.

  • storage_profile_os_disk (pulumi.Input[dict]) – A storage profile os disk block as documented below

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

  • upgrade_policy_mode (pulumi.Input[str]) – 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.

  • zones (pulumi.Input[list]) – A collection of availability zones to spread the Virtual Machines over.

The boot_diagnostics object supports the following:

  • enabled (pulumi.Input[bool])

  • storageUri (pulumi.Input[str])

The extensions object supports the following:

  • auto_upgrade_minor_version (pulumi.Input[bool]) - Specifies whether or not to use the latest minor version available.

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • protected_settings (pulumi.Input[str]) - The protected_settings passed to the extension, like settings, these are specified as a JSON object in a string.

  • provisionAfterExtensions (pulumi.Input[list]) - Specifies a dependency array of extensions required to be executed before, the array stores the name of each extension.

  • publisher (pulumi.Input[str]) - Specifies the publisher of the image.

  • settings (pulumi.Input[str]) - The settings passed to the extension, these are specified as a JSON object in a string.

  • type (pulumi.Input[str]) - The type of extension, available types for a publisher can be found using the Azure CLI.

  • type_handler_version (pulumi.Input[str]) - Specifies the version of the extension to use, available versions can be found using the Azure CLI.

The identity object supports the following:

  • identityIds (pulumi.Input[list]) - Specifies a list of user managed identity ids to be assigned to the VMSS. Required if type is UserAssigned.

  • principal_id (pulumi.Input[str])

  • type (pulumi.Input[str]) - The type of extension, available types for a publisher can be found using the Azure CLI.

The network_profiles object supports the following:

  • acceleratedNetworking (pulumi.Input[bool]) - Specifies whether to enable accelerated networking or not. Defaults to false.

  • dnsSettings (pulumi.Input[dict]) - A dns_settings block as documented below.

    • dnsServers (pulumi.Input[list]) - Specifies an array of dns servers.

  • ipConfigurations (pulumi.Input[list]) - An ip_configuration block as documented below.

    • applicationGatewayBackendAddressPoolIds (pulumi.Input[list]) - Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets cannot use the same application gateway.

    • applicationSecurityGroupIds (pulumi.Input[list]) - Specifies up to 20 application security group IDs.

    • loadBalancerBackendAddressPoolIds (pulumi.Input[list]) - Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.

    • loadBalancerInboundNatRulesIds (pulumi.Input[list]) - Specifies an array of references to inbound NAT pools for load balancers. A scale set can reference inbound nat pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer.

    • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

    • primary (pulumi.Input[bool]) - Specifies if this ip_configuration is the primary one.

    • publicIpAddressConfiguration (pulumi.Input[dict]) - Describes a virtual machines scale set IP Configuration’s PublicIPAddress configuration. The public_ip_address_configuration is documented below.

      • domainNameLabel (pulumi.Input[str]) - The domain name label for the dns settings.

      • idleTimeout (pulumi.Input[float]) - The idle timeout in minutes. This value must be between 4 and 30.

      • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

    • subnetId (pulumi.Input[str]) - Specifies the identifier of the subnet.

  • ipForwarding (pulumi.Input[bool]) - Whether IP forwarding is enabled on this NIC. Defaults to false.

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • networkSecurityGroupId (pulumi.Input[str]) - Specifies the identifier for the network security group.

  • primary (pulumi.Input[bool]) - Specifies if this ip_configuration is the primary one.

The os_profile object supports the following:

  • adminPassword (pulumi.Input[str]) - Specifies the administrator password to use for all the instances of virtual machines in a scale set.

  • adminUsername (pulumi.Input[str]) - Specifies the administrator account name to use for all the instances of virtual machines in the scale set.

  • computerNamePrefix (pulumi.Input[str]) - Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 9 characters long for windows images and 1 - 58 for linux. Changing this forces a new resource to be created.

  • customData (pulumi.Input[str]) - Specifies custom data to supply to the machine. On linux-based systems, this can be used as a cloud-init script. On other systems, this will be copied as a file on disk. Internally, this provider will base64 encode this value before sending it to the API. The maximum length of the binary array is 65535 bytes.

The os_profile_linux_config object supports the following:

  • disablePasswordAuthentication (pulumi.Input[bool]) - Specifies whether password authentication should be disabled. Defaults to false. Changing this forces a new resource to be created.

  • sshKeys (pulumi.Input[list]) - Specifies a collection of path and key_data to be placed on the virtual machine.

    • keyData (pulumi.Input[str])

    • path (pulumi.Input[str])

The os_profile_secrets object supports the following:

  • sourceVaultId (pulumi.Input[str]) - Specifies the key vault to use.

  • vaultCertificates (pulumi.Input[list]) - A collection of Vault Certificates as documented below

    • certificateStore (pulumi.Input[str]) - Specifies the certificate store on the Virtual Machine where the certificate should be added to.

    • certificateUrl (pulumi.Input[str]) - Specifies URL of the certificate with which new Virtual Machines is provisioned.

The os_profile_windows_config object supports the following:

  • additionalUnattendConfigs (pulumi.Input[list]) - An Additional Unattended Config block as documented below.

    • component (pulumi.Input[str]) - Specifies the name of the component to configure with the added content. The only allowable value is Microsoft-Windows-Shell-Setup.

    • content (pulumi.Input[str]) - Specifies the base-64 encoded XML formatted content that is added to the unattend.xml file for the specified path and component.

    • pass (pulumi.Input[str]) - Specifies the name of the pass that the content applies to. The only allowable value is oobeSystem.

    • settingName (pulumi.Input[str]) - Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.

  • enableAutomaticUpgrades (pulumi.Input[bool]) - Indicates whether virtual machines in the scale set are enabled for automatic updates.

  • provisionVmAgent (pulumi.Input[bool]) - Indicates whether virtual machine agent should be provisioned on the virtual machines in the scale set.

  • winrms (pulumi.Input[list]) - A collection of WinRM configuration blocks as documented below.

    • certificateUrl (pulumi.Input[str]) - Specifies URL of the certificate with which new Virtual Machines is provisioned.

    • protocol (pulumi.Input[str]) - Specifies the protocol of listener

The plan object supports the following:

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • product (pulumi.Input[str]) - Specifies the product of the image from the marketplace.

  • publisher (pulumi.Input[str]) - Specifies the publisher of the image.

The rolling_upgrade_policy object supports the following:

  • maxBatchInstancePercent (pulumi.Input[float]) - The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to 20.

  • maxUnhealthyInstancePercent (pulumi.Input[float]) - The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to 20.

  • maxUnhealthyUpgradedInstancePercent (pulumi.Input[float]) - The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to 20.

  • pauseTimeBetweenBatches (pulumi.Input[str]) - The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (https://en.wikipedia.org/wiki/ISO_8601#Durations). Defaults to 0 seconds represented as PT0S.

The sku object supports the following:

  • capacity (pulumi.Input[float]) - Specifies the number of virtual machines in the scale set.

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • tier (pulumi.Input[str]) - Specifies the tier of virtual machines in a scale set. Possible values, standard or basic.

The storage_profile_data_disks object supports the following:

  • caching (pulumi.Input[str]) - Specifies the caching requirements. Possible values include: None (default), ReadOnly, ReadWrite.

  • create_option (pulumi.Input[str]) - Specifies how the data disk should be created. The only possible options are FromImage and Empty.

  • disk_size_gb (pulumi.Input[float]) - Specifies the size of the disk in GB. This element is required when creating an empty disk.

  • lun (pulumi.Input[float]) - Specifies the Logical Unit Number of the disk in each virtual machine in the scale set.

  • managedDiskType (pulumi.Input[str]) - Specifies the type of managed disk to create. Value must be either Standard_LRS, StandardSSD_LRS or Premium_LRS.

The storage_profile_image_reference object supports the following:

  • id (pulumi.Input[str]) - Specifies the ID of the (custom) image to use to create the virtual machine scale set, as in the example below.

  • offer (pulumi.Input[str]) - Specifies the offer of the image used to create the virtual machines.

  • publisher (pulumi.Input[str]) - Specifies the publisher of the image.

  • sku (pulumi.Input[str]) - Specifies the SKU of the image used to create the virtual machines.

  • version (pulumi.Input[str]) - Specifies the version of the image used to create the virtual machines.

The storage_profile_os_disk object supports the following:

  • caching (pulumi.Input[str]) - Specifies the caching requirements. Possible values include: None (default), ReadOnly, ReadWrite.

  • create_option (pulumi.Input[str]) - Specifies how the data disk should be created. The only possible options are FromImage and Empty.

  • image (pulumi.Input[str]) - Specifies the blob uri for user image. A virtual machine scale set creates an os disk in the same container as the user image. Updating the osDisk image causes the existing disk to be deleted and a new one created with the new image. If the VM scale set is in Manual upgrade mode then the virtual machines are not updated until they have manualUpgrade applied to them. When setting this field os_type needs to be specified. Cannot be used when vhd_containers, managed_disk_type or storage_profile_image_reference are specified.

  • managedDiskType (pulumi.Input[str]) - Specifies the type of managed disk to create. Value must be either Standard_LRS, StandardSSD_LRS or Premium_LRS.

  • name (pulumi.Input[str]) - Specifies the name of the image from the marketplace.

  • os_type (pulumi.Input[str]) - Specifies the operating system Type, valid values are windows, linux.

  • vhdContainers (pulumi.Input[list]) - Specifies the vhd uri. Cannot be used when image or managed_disk_type is specified.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.SharedImage(resource_name, opts=None, description=None, eula=None, gallery_name=None, identifier=None, location=None, name=None, os_type=None, privacy_statement_uri=None, release_note_uri=None, resource_group_name=None, tags=None, __props__=None, __name__=None, __opts__=None)

Manages a Shared Image within a Shared Image Gallery.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • description (pulumi.Input[str]) – A description of this Shared Image.

  • eula (pulumi.Input[str]) – The End User Licence Agreement for the Shared Image.

  • gallery_name (pulumi.Input[str]) – Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.

  • identifier (pulumi.Input[dict]) – An identifier block as defined below.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Shared Image. Changing this forces a new resource to be created.

  • os_type (pulumi.Input[str]) – The type of Operating System present in this Shared Image. Possible values are Linux and Windows.

  • privacy_statement_uri (pulumi.Input[str]) – The URI containing the Privacy Statement associated with this Shared Image.

  • release_note_uri (pulumi.Input[str]) – The URI containing the Release Notes associated with this Shared Image.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the Shared Image.

The identifier object supports the following:

  • offer (pulumi.Input[str])

  • publisher (pulumi.Input[str])

  • sku (pulumi.Input[str])

description = None

A description of this Shared Image.

eula = None

The End User Licence Agreement for the Shared Image.

gallery_name = None

Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.

identifier = None

An identifier block as defined below.

  • offer (str)

  • publisher (str)

  • sku (str)

location = None

Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.

name = None

Specifies the name of the Shared Image. Changing this forces a new resource to be created.

os_type = None

The type of Operating System present in this Shared Image. Possible values are Linux and Windows.

privacy_statement_uri = None

The URI containing the Privacy Statement associated with this Shared Image.

release_note_uri = None

The URI containing the Release Notes associated with this Shared Image.

resource_group_name = None

The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

tags = None

A mapping of tags to assign to the Shared Image.

static get(resource_name, id, opts=None, description=None, eula=None, gallery_name=None, identifier=None, location=None, name=None, os_type=None, privacy_statement_uri=None, release_note_uri=None, resource_group_name=None, tags=None)

Get an existing SharedImage resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • description (pulumi.Input[str]) – A description of this Shared Image.

  • eula (pulumi.Input[str]) – The End User Licence Agreement for the Shared Image.

  • gallery_name (pulumi.Input[str]) – Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.

  • identifier (pulumi.Input[dict]) – An identifier block as defined below.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Shared Image. Changing this forces a new resource to be created.

  • os_type (pulumi.Input[str]) – The type of Operating System present in this Shared Image. Possible values are Linux and Windows.

  • privacy_statement_uri (pulumi.Input[str]) – The URI containing the Privacy Statement associated with this Shared Image.

  • release_note_uri (pulumi.Input[str]) – The URI containing the Release Notes associated with this Shared Image.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the Shared Image.

The identifier object supports the following:

  • offer (pulumi.Input[str])

  • publisher (pulumi.Input[str])

  • sku (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.SharedImageGallery(resource_name, opts=None, description=None, location=None, name=None, resource_group_name=None, tags=None, __props__=None, __name__=None, __opts__=None)

Manages a Shared Image Gallery.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • description (pulumi.Input[str]) – A description for this Shared Image Gallery.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the Shared Image Gallery.

description = None

A description for this Shared Image Gallery.

location = None

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

name = None

Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.

resource_group_name = None

The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.

tags = None

A mapping of tags to assign to the Shared Image Gallery.

unique_name = None

The Unique Name for this Shared Image Gallery.

static get(resource_name, id, opts=None, description=None, location=None, name=None, resource_group_name=None, tags=None, unique_name=None)

Get an existing SharedImageGallery resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • description (pulumi.Input[str]) – A description for this Shared Image Gallery.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the Shared Image Gallery.

  • unique_name (pulumi.Input[str]) – The Unique Name for this Shared Image Gallery.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.SharedImageVersion(resource_name, opts=None, exclude_from_latest=None, gallery_name=None, image_name=None, location=None, managed_image_id=None, name=None, resource_group_name=None, tags=None, target_regions=None, __props__=None, __name__=None, __opts__=None)

Manages a Version of a Shared Image within a Shared Image Gallery.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • exclude_from_latest (pulumi.Input[bool]) – 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.

  • gallery_name (pulumi.Input[str]) – The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.

  • image_name (pulumi.Input[str]) – 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.

  • location (pulumi.Input[str]) – The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

  • managed_image_id (pulumi.Input[str]) – The ID of the Managed Image which should be used for this Shared Image Version. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.

  • resource_group_name (pulumi.Input[str]) – The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A collection of tags which should be applied to this resource.

  • target_regions (pulumi.Input[list]) – One or more target_region blocks as documented below.

The target_regions object supports the following:

  • name (pulumi.Input[str]) - The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.

  • regionalReplicaCount (pulumi.Input[float])

exclude_from_latest = None

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.

gallery_name = None

The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.

image_name = None

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.

location = None

The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

managed_image_id = None

The ID of the Managed Image which should be used for this Shared Image Version. Changing this forces a new resource to be created.

name = None

The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.

resource_group_name = None

The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

tags = None

A collection of tags which should be applied to this resource.

target_regions = None

One or more target_region blocks as documented below.

  • name (str) - The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.

  • regionalReplicaCount (float)

static get(resource_name, id, opts=None, exclude_from_latest=None, gallery_name=None, image_name=None, location=None, managed_image_id=None, name=None, resource_group_name=None, tags=None, target_regions=None)

Get an existing SharedImageVersion resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • exclude_from_latest (pulumi.Input[bool]) – 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.

  • gallery_name (pulumi.Input[str]) – The name of the Shared Image Gallery in which the Shared Image exists. Changing this forces a new resource to be created.

  • image_name (pulumi.Input[str]) – 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.

  • location (pulumi.Input[str]) – The Azure Region in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

  • managed_image_id (pulumi.Input[str]) – The ID of the Managed Image which should be used for this Shared Image Version. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.

  • resource_group_name (pulumi.Input[str]) – The name of the Resource Group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A collection of tags which should be applied to this resource.

  • target_regions (pulumi.Input[list]) – One or more target_region blocks as documented below.

The target_regions object supports the following:

  • name (pulumi.Input[str]) - The version number for this Image Version, such as 1.0.0. Changing this forces a new resource to be created.

  • regionalReplicaCount (pulumi.Input[float])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.Snapshot(resource_name, opts=None, create_option=None, disk_size_gb=None, encryption_settings=None, location=None, name=None, resource_group_name=None, source_resource_id=None, source_uri=None, storage_account_id=None, tags=None, __props__=None, __name__=None, __opts__=None)

Manages a Disk Snapshot.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • create_option (pulumi.Input[str]) – Indicates how the snapshot is to be created. Possible values are Copy or Import. Changing this forces a new resource to be created.

  • disk_size_gb (pulumi.Input[float]) – The size of the Snapshotted Disk in GB.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.

  • source_resource_id (pulumi.Input[str]) – Specifies a reference to an existing snapshot, when create_option is Copy. Changing this forces a new resource to be created.

  • source_uri (pulumi.Input[str]) – Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.

  • storage_account_id (pulumi.Input[str]) – Specifies the ID of an storage account. Used with source_uri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

The encryption_settings object supports the following:

  • diskEncryptionKey (pulumi.Input[dict])

    • secretUrl (pulumi.Input[str])

    • sourceVaultId (pulumi.Input[str])

  • enabled (pulumi.Input[bool])

  • keyEncryptionKey (pulumi.Input[dict])

    • keyUrl (pulumi.Input[str])

    • sourceVaultId (pulumi.Input[str])

create_option = None

Indicates how the snapshot is to be created. Possible values are Copy or Import. Changing this forces a new resource to be created.

disk_size_gb = None

The size of the Snapshotted Disk in GB.

location = None

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

name = None

Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.

resource_group_name = None

The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.

source_resource_id = None

Specifies a reference to an existing snapshot, when create_option is Copy. Changing this forces a new resource to be created.

source_uri = None

Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.

storage_account_id = None

Specifies the ID of an storage account. Used with source_uri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.

tags = None

A mapping of tags to assign to the resource.

static get(resource_name, id, opts=None, create_option=None, disk_size_gb=None, encryption_settings=None, location=None, name=None, resource_group_name=None, source_resource_id=None, source_uri=None, storage_account_id=None, tags=None)

Get an existing Snapshot resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • create_option (pulumi.Input[str]) – Indicates how the snapshot is to be created. Possible values are Copy or Import. Changing this forces a new resource to be created.

  • disk_size_gb (pulumi.Input[float]) – The size of the Snapshotted Disk in GB.

  • location (pulumi.Input[str]) – Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Snapshot resource. Changing this forces a new resource to be created.

  • resource_group_name (pulumi.Input[str]) – The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.

  • source_resource_id (pulumi.Input[str]) – Specifies a reference to an existing snapshot, when create_option is Copy. Changing this forces a new resource to be created.

  • source_uri (pulumi.Input[str]) – Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.

  • storage_account_id (pulumi.Input[str]) – Specifies the ID of an storage account. Used with source_uri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the resource.

The encryption_settings object supports the following:

  • diskEncryptionKey (pulumi.Input[dict])

    • secretUrl (pulumi.Input[str])

    • sourceVaultId (pulumi.Input[str])

  • enabled (pulumi.Input[bool])

  • keyEncryptionKey (pulumi.Input[dict])

    • keyUrl (pulumi.Input[str])

    • sourceVaultId (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_azure.compute.VirtualMachine(resource_name, opts=None, additional_capabilities=None, availability_set_id=None, boot_diagnostics=None, delete_data_disks_on_termination=None, delete_os_disk_on_termination=None, identity=None, license_type=None, location=None, name=None, network_interface_ids=None, os_profile=None, os_profile_linux_config=None, os_profile_secrets=None, os_profile_windows_config=None, plan=None, primary_network_interface_id=None, proximity_placement_group_id=None, resource_group_name=None, storage_data_disks=None, storage_image_reference=None, storage_os_disk=None, tags=None, vm_size=None, zones=None, __props__=None, __name__=None, __opts__=None)

Create a VirtualMachine resource with the given unique name, props, and options.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • additional_capabilities (pulumi.Input[dict]) – A additional_capabilities block.

  • availability_set_id (pulumi.Input[str]) – The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.

  • boot_diagnostics (pulumi.Input[dict]) – A boot_diagnostics block.

  • delete_data_disks_on_termination (pulumi.Input[bool]) – Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to false.

  • delete_os_disk_on_termination (pulumi.Input[bool]) – Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to false.

  • identity (pulumi.Input[dict]) – A identity block.

  • license_type (pulumi.Input[str]) – Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are Windows_Client and Windows_Server.

  • location (pulumi.Input[str]) – Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • network_interface_ids (pulumi.Input[list]) – A list of Network Interface ID’s which should be associated with the Virtual Machine.

  • os_profile (pulumi.Input[dict]) – An os_profile block. Required when create_option in the storage_os_disk block is set to FromImage.

  • os_profile_linux_config (pulumi.Input[dict]) – A os_profile_linux_config block.

  • os_profile_secrets (pulumi.Input[list]) – One or more os_profile_secrets blocks.

  • os_profile_windows_config (pulumi.Input[dict]) – A os_profile_windows_config block.

  • plan (pulumi.Input[dict]) – A plan block.

  • primary_network_interface_id (pulumi.Input[str]) – The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.

  • proximity_placement_group_id (pulumi.Input[str]) – The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

  • resource_group_name (pulumi.Input[str]) – Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.

  • storage_data_disks (pulumi.Input[list]) – One or more storage_data_disk blocks.

  • storage_image_reference (pulumi.Input[dict]) – A storage_image_reference block.

  • storage_os_disk (pulumi.Input[dict]) – A storage_os_disk block.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the Virtual Machine.

  • vm_size (pulumi.Input[str]) – Specifies the size of the Virtual Machine.

  • zones (pulumi.Input[str]) – A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.

The additional_capabilities object supports the following:

  • ultraSsdEnabled (pulumi.Input[bool])

The boot_diagnostics object supports the following:

  • enabled (pulumi.Input[bool])

  • storageUri (pulumi.Input[str])

The identity object supports the following:

  • identityIds (pulumi.Input[list])

  • principal_id (pulumi.Input[str]) - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.

  • type (pulumi.Input[str])

The os_profile object supports the following:

  • adminPassword (pulumi.Input[str])

  • adminUsername (pulumi.Input[str])

  • computerName (pulumi.Input[str])

  • customData (pulumi.Input[str])

The os_profile_linux_config object supports the following:

  • disablePasswordAuthentication (pulumi.Input[bool])

  • sshKeys (pulumi.Input[list])

    • keyData (pulumi.Input[str])

    • path (pulumi.Input[str])

The os_profile_secrets object supports the following:

  • sourceVaultId (pulumi.Input[str])

  • vaultCertificates (pulumi.Input[list])

    • certificateStore (pulumi.Input[str])

    • certificateUrl (pulumi.Input[str])

The os_profile_windows_config object supports the following:

  • additionalUnattendConfigs (pulumi.Input[list])

    • component (pulumi.Input[str])

    • content (pulumi.Input[str])

    • pass (pulumi.Input[str])

    • settingName (pulumi.Input[str])

  • enableAutomaticUpgrades (pulumi.Input[bool])

  • provisionVmAgent (pulumi.Input[bool])

  • timezone (pulumi.Input[str])

  • winrms (pulumi.Input[list])

    • certificateUrl (pulumi.Input[str])

    • protocol (pulumi.Input[str])

The plan object supports the following:

  • name (pulumi.Input[str]) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • product (pulumi.Input[str])

  • publisher (pulumi.Input[str])

The storage_data_disks object supports the following:

  • caching (pulumi.Input[str])

  • create_option (pulumi.Input[str])

  • disk_size_gb (pulumi.Input[float])

  • lun (pulumi.Input[float])

  • managed_disk_id (pulumi.Input[str])

  • managedDiskType (pulumi.Input[str])

  • name (pulumi.Input[str]) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • vhdUri (pulumi.Input[str])

  • write_accelerator_enabled (pulumi.Input[bool])

The storage_image_reference object supports the following:

  • id (pulumi.Input[str]) - The ID of the Virtual Machine.

  • offer (pulumi.Input[str])

  • publisher (pulumi.Input[str])

  • sku (pulumi.Input[str])

  • version (pulumi.Input[str])

The storage_os_disk object supports the following:

  • caching (pulumi.Input[str])

  • create_option (pulumi.Input[str])

  • disk_size_gb (pulumi.Input[float])

  • imageUri (pulumi.Input[str])

  • managed_disk_id (pulumi.Input[str])

  • managedDiskType (pulumi.Input[str])

  • name (pulumi.Input[str]) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • os_type (pulumi.Input[str])

  • vhdUri (pulumi.Input[str])

  • write_accelerator_enabled (pulumi.Input[bool])

additional_capabilities = None

A additional_capabilities block.

  • ultraSsdEnabled (bool)

availability_set_id = None

The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.

boot_diagnostics = None

A boot_diagnostics block.

  • enabled (bool)

  • storageUri (str)

delete_data_disks_on_termination = None

Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to false.

delete_os_disk_on_termination = None

Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to false.

identity = None

A identity block.

  • identityIds (list)

  • principal_id (str) - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.

  • type (str)

license_type = None

Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are Windows_Client and Windows_Server.

location = None

Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.

name = None

Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

network_interface_ids = None

A list of Network Interface ID’s which should be associated with the Virtual Machine.

os_profile = None

An os_profile block. Required when create_option in the storage_os_disk block is set to FromImage.

  • adminPassword (str)

  • adminUsername (str)

  • computerName (str)

  • customData (str)

os_profile_linux_config = None

A os_profile_linux_config block.

  • disablePasswordAuthentication (bool)

  • sshKeys (list)

    • keyData (str)

    • path (str)

os_profile_secrets = None

One or more os_profile_secrets blocks.

  • sourceVaultId (str)

  • vaultCertificates (list)

    • certificateStore (str)

    • certificateUrl (str)

os_profile_windows_config = None

A os_profile_windows_config block.

  • additionalUnattendConfigs (list)

    • component (str)

    • content (str)

    • pass (str)

    • settingName (str)

  • enableAutomaticUpgrades (bool)

  • provisionVmAgent (bool)

  • timezone (str)

  • winrms (list)

    • certificateUrl (str)

    • protocol (str)

plan = None

A plan block.

  • name (str) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • product (str)

  • publisher (str)

primary_network_interface_id = None

The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.

proximity_placement_group_id = None

The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

resource_group_name = None

Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.

storage_data_disks = None

One or more storage_data_disk blocks.

  • caching (str)

  • create_option (str)

  • disk_size_gb (float)

  • lun (float)

  • managed_disk_id (str)

  • managedDiskType (str)

  • name (str) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • vhdUri (str)

  • write_accelerator_enabled (bool)

storage_image_reference = None

A storage_image_reference block.

  • id (str) - The ID of the Virtual Machine.

  • offer (str)

  • publisher (str)

  • sku (str)

  • version (str)

storage_os_disk = None

A storage_os_disk block.

  • caching (str)

  • create_option (str)

  • disk_size_gb (float)

  • imageUri (str)

  • managed_disk_id (str)

  • managedDiskType (str)

  • name (str) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • os_type (str)

  • vhdUri (str)

  • write_accelerator_enabled (bool)

tags = None

A mapping of tags to assign to the Virtual Machine.

vm_size = None

Specifies the size of the Virtual Machine.

zones = None

A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.

static get(resource_name, id, opts=None, additional_capabilities=None, availability_set_id=None, boot_diagnostics=None, delete_data_disks_on_termination=None, delete_os_disk_on_termination=None, identity=None, license_type=None, location=None, name=None, network_interface_ids=None, os_profile=None, os_profile_linux_config=None, os_profile_secrets=None, os_profile_windows_config=None, plan=None, primary_network_interface_id=None, proximity_placement_group_id=None, resource_group_name=None, storage_data_disks=None, storage_image_reference=None, storage_os_disk=None, tags=None, vm_size=None, zones=None)

Get an existing VirtualMachine resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • additional_capabilities (pulumi.Input[dict]) – A additional_capabilities block.

  • availability_set_id (pulumi.Input[str]) – The ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.

  • boot_diagnostics (pulumi.Input[dict]) – A boot_diagnostics block.

  • delete_data_disks_on_termination (pulumi.Input[bool]) – Should the Data Disks (either the Managed Disks / VHD Blobs) be deleted when the Virtual Machine is destroyed? Defaults to false.

  • delete_os_disk_on_termination (pulumi.Input[bool]) – Should the OS Disk (either the Managed Disk / VHD Blob) be deleted when the Virtual Machine is destroyed? Defaults to false.

  • identity (pulumi.Input[dict]) – A identity block.

  • license_type (pulumi.Input[str]) – Specifies the BYOL Type for this Virtual Machine. This is only applicable to Windows Virtual Machines. Possible values are Windows_Client and Windows_Server.

  • location (pulumi.Input[str]) – Specifies the Azure Region where the Virtual Machine exists. Changing this forces a new resource to be created.

  • name (pulumi.Input[str]) – Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • network_interface_ids (pulumi.Input[list]) – A list of Network Interface ID’s which should be associated with the Virtual Machine.

  • os_profile (pulumi.Input[dict]) – An os_profile block. Required when create_option in the storage_os_disk block is set to FromImage.

  • os_profile_linux_config (pulumi.Input[dict]) – A os_profile_linux_config block.

  • os_profile_secrets (pulumi.Input[list]) – One or more os_profile_secrets blocks.

  • os_profile_windows_config (pulumi.Input[dict]) – A os_profile_windows_config block.

  • plan (pulumi.Input[dict]) – A plan block.

  • primary_network_interface_id (pulumi.Input[str]) – The ID of the Network Interface (which must be attached to the Virtual Machine) which should be the Primary Network Interface for this Virtual Machine.

  • proximity_placement_group_id (pulumi.Input[str]) – The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created

  • resource_group_name (pulumi.Input[str]) – Specifies the name of the Resource Group in which the Virtual Machine should exist. Changing this forces a new resource to be created.

  • storage_data_disks (pulumi.Input[list]) – One or more storage_data_disk blocks.

  • storage_image_reference (pulumi.Input[dict]) – A storage_image_reference block.

  • storage_os_disk (pulumi.Input[dict]) – A storage_os_disk block.

  • tags (pulumi.Input[dict]) – A mapping of tags to assign to the Virtual Machine.

  • vm_size (pulumi.Input[str]) –

    Specifies the size of the Virtual Machine.

  • zones (pulumi.Input[str]) – A list of a single item of the Availability Zone which the Virtual Machine should be allocated in.

The additional_capabilities object supports the following:

  • ultraSsdEnabled (pulumi.Input[bool])

The boot_diagnostics object supports the following:

  • enabled (pulumi.Input[bool])

  • storageUri (pulumi.Input[str])

The identity object supports the following:

  • identityIds (pulumi.Input[list])

  • principal_id (pulumi.Input[str]) - The Principal ID for the Service Principal associated with the Managed Service Identity of this Virtual Machine.

  • type (pulumi.Input[str])

The os_profile object supports the following:

  • adminPassword (pulumi.Input[str])

  • adminUsername (pulumi.Input[str])

  • computerName (pulumi.Input[str])

  • customData (pulumi.Input[str])

The os_profile_linux_config object supports the following:

  • disablePasswordAuthentication (pulumi.Input[bool])

  • sshKeys (pulumi.Input[list])

    • keyData (pulumi.Input[str])

    • path (pulumi.Input[str])

The os_profile_secrets object supports the following:

  • sourceVaultId (pulumi.Input[str])

  • vaultCertificates (pulumi.Input[list])

    • certificateStore (pulumi.Input[str])

    • certificateUrl (pulumi.Input[str])

The os_profile_windows_config object supports the following:

  • additionalUnattendConfigs (pulumi.Input[list])

    • component (pulumi.Input[str])

    • content (pulumi.Input[str])

    • pass (pulumi.Input[str])

    • settingName (pulumi.Input[str])

  • enableAutomaticUpgrades (pulumi.Input[bool])

  • provisionVmAgent (pulumi.Input[bool])

  • timezone (pulumi.Input[str])

  • winrms (pulumi.Input[list])

    • certificateUrl (pulumi.Input[str])

    • protocol (pulumi.Input[str])

The plan object supports the following:

  • name (pulumi.Input[str]) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • product (pulumi.Input[str])

  • publisher (pulumi.Input[str])

The storage_data_disks object supports the following:

  • caching (pulumi.Input[str])

  • create_option (pulumi.Input[str])

  • disk_size_gb (pulumi.Input[float])

  • lun (pulumi.Input[float])

  • managed_disk_id (pulumi.Input[str])

  • managedDiskType (pulumi.Input[str])

  • name (pulumi.Input[str]) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • vhdUri (pulumi.Input[str])

  • write_accelerator_enabled (pulumi.Input[bool])

The storage_image_reference object supports the following:

  • id (pulumi.Input[str]) - The ID of the Virtual Machine.

  • offer (pulumi.Input[str])

  • publisher (pulumi.Input[str])

  • sku (pulumi.Input[str])

  • version (pulumi.Input[str])

The storage_os_disk object supports the following:

  • caching (pulumi.Input[str])

  • create_option (pulumi.Input[str])

  • disk_size_gb (pulumi.Input[float])

  • imageUri (pulumi.Input[str])

  • managed_disk_id (pulumi.Input[str])

  • managedDiskType (pulumi.Input[str])

  • name (pulumi.Input[str]) - Specifies the name of the Virtual Machine. Changing this forces a new resource to be created.

  • os_type (pulumi.Input[str])

  • vhdUri (pulumi.Input[str])

  • write_accelerator_enabled (pulumi.Input[bool])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

pulumi_azure.compute.get_availability_set(name=None, resource_group_name=None, opts=None)

Use this data source to access information about an existing Availability Set.

Parameters
  • name (str) – The name of the Availability Set.

  • resource_group_name (str) – The name of the resource group in which the Availability Set exists.

pulumi_azure.compute.get_image(name=None, name_regex=None, resource_group_name=None, sort_descending=None, opts=None)

Use this data source to access information about an existing Image.

Parameters
  • name (str) – The name of the Image.

  • name_regex (str) – Regex pattern of the image to match.

  • resource_group_name (str) – The Name of the Resource Group where this Image exists.

  • sort_descending (bool) – 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.

pulumi_azure.compute.get_managed_disk(name=None, resource_group_name=None, tags=None, zones=None, opts=None)

Use this data source to access information about an existing Managed Disk.

Parameters
  • name (str) – Specifies the name of the Managed Disk.

  • resource_group_name (str) – Specifies the name of the resource group.

pulumi_azure.compute.get_platform_image(location=None, offer=None, publisher=None, sku=None, opts=None)

Use this data source to access information about a Platform Image.

Parameters
  • location (str) – Specifies the Location to pull information about this Platform Image from.

  • offer (str) – Specifies the Offer associated with the Platform Image.

  • publisher (str) – Specifies the Publisher associated with the Platform Image.

  • sku (str) – Specifies the SKU of the Platform Image.

pulumi_azure.compute.get_shared_image(gallery_name=None, name=None, resource_group_name=None, opts=None)

Use this data source to access information about an existing Shared Image within a Shared Image Gallery.

Parameters
  • gallery_name (str) – The name of the Shared Image Gallery in which the Shared Image exists.

  • name (str) – The name of the Shared Image.

  • resource_group_name (str) – The name of the Resource Group in which the Shared Image Gallery exists.

Use this data source to access information about an existing Shared Image Gallery.

Parameters
  • name (str) – The name of the Shared Image Gallery.

  • resource_group_name (str) – The name of the Resource Group in which the Shared Image Gallery exists.

pulumi_azure.compute.get_shared_image_version(gallery_name=None, image_name=None, name=None, resource_group_name=None, opts=None)

Use this data source to access information about an existing Version of a Shared Image within a Shared Image Gallery.

Parameters
  • gallery_name (str) – The name of the Shared Image in which the Shared Image exists.

  • image_name (str) – The name of the Shared Image in which this Version exists.

  • name (str) – The name of the Image Version.

  • resource_group_name (str) – The name of the Resource Group in which the Shared Image Gallery exists.

pulumi_azure.compute.get_snapshot(name=None, resource_group_name=None, opts=None)

Use this data source to access information about an existing Snapshot.

Parameters
  • name (str) – Specifies the name of the Snapshot.

  • resource_group_name (str) – Specifies the name of the resource group the Snapshot is located in.

pulumi_azure.compute.get_virtual_machine(name=None, resource_group_name=None, opts=None)

Use this data source to access information about an existing Virtual Machine.

Parameters
  • name (str) – Specifies the name of the Virtual Machine.

  • resource_group_name (str) – Specifies the name of the resource group the Virtual Machine is located in.