LinuxVirtualMachineScaleSet

Manages a Linux Virtual Machine Scale Set.

Disclaimers

Note This provider will automatically update & reimage the nodes in the Scale Set (if Required) during an Update - this behaviour can be configured using the features configuration within the Provider configuration block.

Note: This resource does not support Unmanaged Disks. If you need to use Unmanaged Disks you can continue to use the azure.compute.ScaleSet resource instead

Create a LinuxVirtualMachineScaleSet Resource

def LinuxVirtualMachineScaleSet(resource_name, opts=None, additional_capabilities=None, admin_password=None, admin_ssh_keys=None, admin_username=None, automatic_instance_repair=None, automatic_os_upgrade_policy=None, boot_diagnostics=None, computer_name_prefix=None, custom_data=None, data_disks=None, disable_password_authentication=None, do_not_run_extensions_on_overprovisioned_machines=None, eviction_policy=None, health_probe_id=None, identity=None, instances=None, location=None, max_bid_price=None, name=None, network_interfaces=None, os_disk=None, overprovision=None, plan=None, priority=None, provision_vm_agent=None, proximity_placement_group_id=None, resource_group_name=None, rolling_upgrade_policy=None, scale_in_policy=None, secrets=None, single_placement_group=None, sku=None, source_image_id=None, source_image_reference=None, tags=None, terminate_notification=None, upgrade_mode=None, zone_balance=None, zones=None, __props__=None);
name string
The unique name of the resource.
args LinuxVirtualMachineScaleSetArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
opts ResourceOptions
A bag of options that control this resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args LinuxVirtualMachineScaleSetArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args LinuxVirtualMachineScaleSetArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

LinuxVirtualMachineScaleSet Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.

Inputs

The LinuxVirtualMachineScaleSet resource accepts the following input properties:

AdminUsername string

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

Instances int

The number of Virtual Machines in the Scale Set.

NetworkInterfaces List<LinuxVirtualMachineScaleSetNetworkInterfaceArgs>

One or more network_interface blocks as defined below.

OsDisk LinuxVirtualMachineScaleSetOsDiskArgs

An os_disk block as defined below.

ResourceGroupName string

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

Sku string

The Virtual Machine SKU for the Scale Set, such as Standard_F2.

AdditionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs

A additional_capabilities block as defined below.

AdminPassword string

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

AdminSshKeys List<LinuxVirtualMachineScaleSetAdminSshKeyArgs>

One or more admin_ssh_key blocks as defined below.

AutomaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs

A automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.

AutomaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs

A automatic_os_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic.

BootDiagnostics LinuxVirtualMachineScaleSetBootDiagnosticsArgs

A boot_diagnostics block as defined below.

ComputerNamePrefix string

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix.

CustomData string

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

DataDisks List<LinuxVirtualMachineScaleSetDataDiskArgs>

One or more data_disk blocks as defined below.

DisablePasswordAuthentication bool

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.

DoNotRunExtensionsOnOverprovisionedMachines bool

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.

EvictionPolicy string

The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.

HealthProbeId string

The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

Identity LinuxVirtualMachineScaleSetIdentityArgs

A identity block as defined below.

Location string

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

MaxBidPrice double

The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

Name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

Overprovision bool

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.

Plan LinuxVirtualMachineScaleSetPlanArgs
Priority string

The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.

ProvisionVmAgent bool

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.

ProximityPlacementGroupId string

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

RollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs

A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

ScaleInPolicy string

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.

Secrets List<LinuxVirtualMachineScaleSetSecretArgs>

One or more secret blocks as defined below.

SinglePlacementGroup bool

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.

SourceImageId string

The ID of an Image which each Virtual Machine in this Scale Set should be based on.

SourceImageReference LinuxVirtualMachineScaleSetSourceImageReferenceArgs

A source_image_reference block as defined below.

Tags Dictionary<string, string>

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

TerminateNotification LinuxVirtualMachineScaleSetTerminateNotificationArgs

A terminate_notification block as defined below.

UpgradeMode string

Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.

ZoneBalance bool

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.

Zones List<string>

A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.

AdminUsername string

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

Instances int

The number of Virtual Machines in the Scale Set.

NetworkInterfaces []LinuxVirtualMachineScaleSetNetworkInterface

One or more network_interface blocks as defined below.

OsDisk LinuxVirtualMachineScaleSetOsDisk

An os_disk block as defined below.

ResourceGroupName string

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

Sku string

The Virtual Machine SKU for the Scale Set, such as Standard_F2.

AdditionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilities

A additional_capabilities block as defined below.

AdminPassword string

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

AdminSshKeys []LinuxVirtualMachineScaleSetAdminSshKey

One or more admin_ssh_key blocks as defined below.

AutomaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepair

A automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.

AutomaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy

A automatic_os_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic.

BootDiagnostics LinuxVirtualMachineScaleSetBootDiagnostics

A boot_diagnostics block as defined below.

ComputerNamePrefix string

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix.

CustomData string

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

DataDisks []LinuxVirtualMachineScaleSetDataDisk

One or more data_disk blocks as defined below.

DisablePasswordAuthentication bool

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.

DoNotRunExtensionsOnOverprovisionedMachines bool

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.

EvictionPolicy string

The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.

HealthProbeId string

The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

Identity LinuxVirtualMachineScaleSetIdentity

A identity block as defined below.

Location string

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

MaxBidPrice float64

The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

Name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

Overprovision bool

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.

Plan LinuxVirtualMachineScaleSetPlan
Priority string

The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.

ProvisionVmAgent bool

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.

ProximityPlacementGroupId string

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

RollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicy

A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

ScaleInPolicy string

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.

Secrets []LinuxVirtualMachineScaleSetSecret

One or more secret blocks as defined below.

SinglePlacementGroup bool

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.

SourceImageId string

The ID of an Image which each Virtual Machine in this Scale Set should be based on.

SourceImageReference LinuxVirtualMachineScaleSetSourceImageReference

A source_image_reference block as defined below.

Tags map[string]string

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

TerminateNotification LinuxVirtualMachineScaleSetTerminateNotification

A terminate_notification block as defined below.

UpgradeMode string

Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.

ZoneBalance bool

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.

Zones []string

A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.

adminUsername string

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

instances number

The number of Virtual Machines in the Scale Set.

networkInterfaces LinuxVirtualMachineScaleSetNetworkInterface[]

One or more network_interface blocks as defined below.

osDisk LinuxVirtualMachineScaleSetOsDisk

An os_disk block as defined below.

resourceGroupName string

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

sku string

The Virtual Machine SKU for the Scale Set, such as Standard_F2.

additionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilities

A additional_capabilities block as defined below.

adminPassword string

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

adminSshKeys LinuxVirtualMachineScaleSetAdminSshKey[]

One or more admin_ssh_key blocks as defined below.

automaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepair

A automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.

automaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy

A automatic_os_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic.

bootDiagnostics LinuxVirtualMachineScaleSetBootDiagnostics

A boot_diagnostics block as defined below.

computerNamePrefix string

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix.

customData string

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

dataDisks LinuxVirtualMachineScaleSetDataDisk[]

One or more data_disk blocks as defined below.

disablePasswordAuthentication boolean

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.

doNotRunExtensionsOnOverprovisionedMachines boolean

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.

evictionPolicy string

The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.

healthProbeId string

The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

identity LinuxVirtualMachineScaleSetIdentity

A identity block as defined below.

location string

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

maxBidPrice number

The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

overprovision boolean

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.

plan LinuxVirtualMachineScaleSetPlan
priority string

The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.

provisionVmAgent boolean

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.

proximityPlacementGroupId string

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

rollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicy

A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

scaleInPolicy string

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.

secrets LinuxVirtualMachineScaleSetSecret[]

One or more secret blocks as defined below.

singlePlacementGroup boolean

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.

sourceImageId string

The ID of an Image which each Virtual Machine in this Scale Set should be based on.

sourceImageReference LinuxVirtualMachineScaleSetSourceImageReference

A source_image_reference block as defined below.

tags {[key: string]: string}

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

terminateNotification LinuxVirtualMachineScaleSetTerminateNotification

A terminate_notification block as defined below.

upgradeMode string

Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.

zoneBalance boolean

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.

zones string[]

A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.

admin_username str

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

instances float

The number of Virtual Machines in the Scale Set.

network_interfaces List[LinuxVirtualMachineScaleSetNetworkInterface]

One or more network_interface blocks as defined below.

os_disk Dict[LinuxVirtualMachineScaleSetOsDisk]

An os_disk block as defined below.

resource_group_name str

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

sku str

The Virtual Machine SKU for the Scale Set, such as Standard_F2.

additional_capabilities Dict[LinuxVirtualMachineScaleSetAdditionalCapabilities]

A additional_capabilities block as defined below.

admin_password str

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

admin_ssh_keys List[LinuxVirtualMachineScaleSetAdminSshKey]

One or more admin_ssh_key blocks as defined below.

automatic_instance_repair Dict[LinuxVirtualMachineScaleSetAutomaticInstanceRepair]

A automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.

automatic_os_upgrade_policy Dict[LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy]

A automatic_os_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic.

boot_diagnostics Dict[LinuxVirtualMachineScaleSetBootDiagnostics]

A boot_diagnostics block as defined below.

computer_name_prefix str

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix.

custom_data str

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

data_disks List[LinuxVirtualMachineScaleSetDataDisk]

One or more data_disk blocks as defined below.

disable_password_authentication bool

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.

do_not_run_extensions_on_overprovisioned_machines bool

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.

eviction_policy str

The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.

health_probe_id str

The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

identity Dict[LinuxVirtualMachineScaleSetIdentity]

A identity block as defined below.

location str

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

max_bid_price float

The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

name str

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

overprovision bool

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.

plan Dict[LinuxVirtualMachineScaleSetPlan]
priority str

The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.

provision_vm_agent bool

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.

proximity_placement_group_id str

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

rolling_upgrade_policy Dict[LinuxVirtualMachineScaleSetRollingUpgradePolicy]

A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

scale_in_policy str

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.

secrets List[LinuxVirtualMachineScaleSetSecret]

One or more secret blocks as defined below.

single_placement_group bool

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.

source_image_id str

The ID of an Image which each Virtual Machine in this Scale Set should be based on.

source_image_reference Dict[LinuxVirtualMachineScaleSetSourceImageReference]

A source_image_reference block as defined below.

tags Dict[str, str]

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

terminate_notification Dict[LinuxVirtualMachineScaleSetTerminateNotification]

A terminate_notification block as defined below.

upgrade_mode str

Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.

zone_balance bool

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.

zones List[str]

A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.

Outputs

All input properties are implicitly available as output properties. Additionally, the LinuxVirtualMachineScaleSet resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
UniqueId string

The Unique ID for this Linux Virtual Machine Scale Set.

Id string
The provider-assigned unique ID for this managed resource.
UniqueId string

The Unique ID for this Linux Virtual Machine Scale Set.

id string
The provider-assigned unique ID for this managed resource.
uniqueId string

The Unique ID for this Linux Virtual Machine Scale Set.

id str
The provider-assigned unique ID for this managed resource.
unique_id str

The Unique ID for this Linux Virtual Machine Scale Set.

Look up an Existing LinuxVirtualMachineScaleSet Resource

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

static get(resource_name, id, opts=None, additional_capabilities=None, admin_password=None, admin_ssh_keys=None, admin_username=None, automatic_instance_repair=None, automatic_os_upgrade_policy=None, boot_diagnostics=None, computer_name_prefix=None, custom_data=None, data_disks=None, disable_password_authentication=None, do_not_run_extensions_on_overprovisioned_machines=None, eviction_policy=None, health_probe_id=None, identity=None, instances=None, location=None, max_bid_price=None, name=None, network_interfaces=None, os_disk=None, overprovision=None, plan=None, priority=None, provision_vm_agent=None, proximity_placement_group_id=None, resource_group_name=None, rolling_upgrade_policy=None, scale_in_policy=None, secrets=None, single_placement_group=None, sku=None, source_image_id=None, source_image_reference=None, tags=None, terminate_notification=None, unique_id=None, upgrade_mode=None, zone_balance=None, zones=None, __props__=None);
func GetLinuxVirtualMachineScaleSet(ctx *Context, name string, id IDInput, state *LinuxVirtualMachineScaleSetState, opts ...ResourceOption) (*LinuxVirtualMachineScaleSet, error)
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.

The following state arguments are supported:

AdditionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilitiesArgs

A additional_capabilities block as defined below.

AdminPassword string

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

AdminSshKeys List<LinuxVirtualMachineScaleSetAdminSshKeyArgs>

One or more admin_ssh_key blocks as defined below.

AdminUsername string

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

AutomaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepairArgs

A automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.

AutomaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicyArgs

A automatic_os_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic.

BootDiagnostics LinuxVirtualMachineScaleSetBootDiagnosticsArgs

A boot_diagnostics block as defined below.

ComputerNamePrefix string

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix.

CustomData string

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

DataDisks List<LinuxVirtualMachineScaleSetDataDiskArgs>

One or more data_disk blocks as defined below.

DisablePasswordAuthentication bool

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.

DoNotRunExtensionsOnOverprovisionedMachines bool

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.

EvictionPolicy string

The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.

HealthProbeId string

The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

Identity LinuxVirtualMachineScaleSetIdentityArgs

A identity block as defined below.

Instances int

The number of Virtual Machines in the Scale Set.

Location string

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

MaxBidPrice double

The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

Name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

NetworkInterfaces List<LinuxVirtualMachineScaleSetNetworkInterfaceArgs>

One or more network_interface blocks as defined below.

OsDisk LinuxVirtualMachineScaleSetOsDiskArgs

An os_disk block as defined below.

Overprovision bool

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.

Plan LinuxVirtualMachineScaleSetPlanArgs
Priority string

The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.

ProvisionVmAgent bool

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.

ProximityPlacementGroupId string

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

ResourceGroupName string

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

RollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicyArgs

A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

ScaleInPolicy string

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.

Secrets List<LinuxVirtualMachineScaleSetSecretArgs>

One or more secret blocks as defined below.

SinglePlacementGroup bool

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.

Sku string

The Virtual Machine SKU for the Scale Set, such as Standard_F2.

SourceImageId string

The ID of an Image which each Virtual Machine in this Scale Set should be based on.

SourceImageReference LinuxVirtualMachineScaleSetSourceImageReferenceArgs

A source_image_reference block as defined below.

Tags Dictionary<string, string>

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

TerminateNotification LinuxVirtualMachineScaleSetTerminateNotificationArgs

A terminate_notification block as defined below.

UniqueId string

The Unique ID for this Linux Virtual Machine Scale Set.

UpgradeMode string

Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.

ZoneBalance bool

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.

Zones List<string>

A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.

AdditionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilities

A additional_capabilities block as defined below.

AdminPassword string

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

AdminSshKeys []LinuxVirtualMachineScaleSetAdminSshKey

One or more admin_ssh_key blocks as defined below.

AdminUsername string

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

AutomaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepair

A automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.

AutomaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy

A automatic_os_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic.

BootDiagnostics LinuxVirtualMachineScaleSetBootDiagnostics

A boot_diagnostics block as defined below.

ComputerNamePrefix string

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix.

CustomData string

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

DataDisks []LinuxVirtualMachineScaleSetDataDisk

One or more data_disk blocks as defined below.

DisablePasswordAuthentication bool

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.

DoNotRunExtensionsOnOverprovisionedMachines bool

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.

EvictionPolicy string

The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.

HealthProbeId string

The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

Identity LinuxVirtualMachineScaleSetIdentity

A identity block as defined below.

Instances int

The number of Virtual Machines in the Scale Set.

Location string

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

MaxBidPrice float64

The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

Name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

NetworkInterfaces []LinuxVirtualMachineScaleSetNetworkInterface

One or more network_interface blocks as defined below.

OsDisk LinuxVirtualMachineScaleSetOsDisk

An os_disk block as defined below.

Overprovision bool

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.

Plan LinuxVirtualMachineScaleSetPlan
Priority string

The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.

ProvisionVmAgent bool

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.

ProximityPlacementGroupId string

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

ResourceGroupName string

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

RollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicy

A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

ScaleInPolicy string

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.

Secrets []LinuxVirtualMachineScaleSetSecret

One or more secret blocks as defined below.

SinglePlacementGroup bool

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.

Sku string

The Virtual Machine SKU for the Scale Set, such as Standard_F2.

SourceImageId string

The ID of an Image which each Virtual Machine in this Scale Set should be based on.

SourceImageReference LinuxVirtualMachineScaleSetSourceImageReference

A source_image_reference block as defined below.

Tags map[string]string

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

TerminateNotification LinuxVirtualMachineScaleSetTerminateNotification

A terminate_notification block as defined below.

UniqueId string

The Unique ID for this Linux Virtual Machine Scale Set.

UpgradeMode string

Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.

ZoneBalance bool

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.

Zones []string

A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.

additionalCapabilities LinuxVirtualMachineScaleSetAdditionalCapabilities

A additional_capabilities block as defined below.

adminPassword string

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

adminSshKeys LinuxVirtualMachineScaleSetAdminSshKey[]

One or more admin_ssh_key blocks as defined below.

adminUsername string

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

automaticInstanceRepair LinuxVirtualMachineScaleSetAutomaticInstanceRepair

A automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.

automaticOsUpgradePolicy LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy

A automatic_os_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic.

bootDiagnostics LinuxVirtualMachineScaleSetBootDiagnostics

A boot_diagnostics block as defined below.

computerNamePrefix string

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix.

customData string

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

dataDisks LinuxVirtualMachineScaleSetDataDisk[]

One or more data_disk blocks as defined below.

disablePasswordAuthentication boolean

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.

doNotRunExtensionsOnOverprovisionedMachines boolean

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.

evictionPolicy string

The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.

healthProbeId string

The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

identity LinuxVirtualMachineScaleSetIdentity

A identity block as defined below.

instances number

The number of Virtual Machines in the Scale Set.

location string

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

maxBidPrice number

The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

networkInterfaces LinuxVirtualMachineScaleSetNetworkInterface[]

One or more network_interface blocks as defined below.

osDisk LinuxVirtualMachineScaleSetOsDisk

An os_disk block as defined below.

overprovision boolean

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.

plan LinuxVirtualMachineScaleSetPlan
priority string

The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.

provisionVmAgent boolean

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.

proximityPlacementGroupId string

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

resourceGroupName string

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

rollingUpgradePolicy LinuxVirtualMachineScaleSetRollingUpgradePolicy

A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

scaleInPolicy string

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.

secrets LinuxVirtualMachineScaleSetSecret[]

One or more secret blocks as defined below.

singlePlacementGroup boolean

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.

sku string

The Virtual Machine SKU for the Scale Set, such as Standard_F2.

sourceImageId string

The ID of an Image which each Virtual Machine in this Scale Set should be based on.

sourceImageReference LinuxVirtualMachineScaleSetSourceImageReference

A source_image_reference block as defined below.

tags {[key: string]: string}

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

terminateNotification LinuxVirtualMachineScaleSetTerminateNotification

A terminate_notification block as defined below.

uniqueId string

The Unique ID for this Linux Virtual Machine Scale Set.

upgradeMode string

Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.

zoneBalance boolean

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.

zones string[]

A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.

additional_capabilities Dict[LinuxVirtualMachineScaleSetAdditionalCapabilities]

A additional_capabilities block as defined below.

admin_password str

The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.

admin_ssh_keys List[LinuxVirtualMachineScaleSetAdminSshKey]

One or more admin_ssh_key blocks as defined below.

admin_username str

The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.

automatic_instance_repair Dict[LinuxVirtualMachineScaleSetAutomaticInstanceRepair]

A automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.

automatic_os_upgrade_policy Dict[LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy]

A automatic_os_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic.

boot_diagnostics Dict[LinuxVirtualMachineScaleSetBootDiagnostics]

A boot_diagnostics block as defined below.

computer_name_prefix str

The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix.

custom_data str

The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.

data_disks List[LinuxVirtualMachineScaleSetDataDisk]

One or more data_disk blocks as defined below.

disable_password_authentication bool

Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.

do_not_run_extensions_on_overprovisioned_machines bool

Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.

eviction_policy str

The Policy which should be used Virtual Machines are Evicted from the Scale Set. Changing this forces a new resource to be created.

health_probe_id str

The ID of a Load Balancer Probe which should be used to determine the health of an instance. Changing this forces a new resource to be created. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

identity Dict[LinuxVirtualMachineScaleSetIdentity]

A identity block as defined below.

instances float

The number of Virtual Machines in the Scale Set.

location str

The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.

max_bid_price float

The maximum price you’re willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.

name str

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

network_interfaces List[LinuxVirtualMachineScaleSetNetworkInterface]

One or more network_interface blocks as defined below.

os_disk Dict[LinuxVirtualMachineScaleSetOsDisk]

An os_disk block as defined below.

overprovision bool

Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You’re not billed for these over-provisioned VM’s and they don’t count towards the Subscription Quota. Defaults to false.

plan Dict[LinuxVirtualMachineScaleSetPlan]
priority str

The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.

provision_vm_agent bool

Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.

proximity_placement_group_id str

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

resource_group_name str

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

rolling_upgrade_policy Dict[LinuxVirtualMachineScaleSetRollingUpgradePolicy]

A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.

scale_in_policy str

The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.

secrets List[LinuxVirtualMachineScaleSetSecret]

One or more secret blocks as defined below.

single_placement_group bool

Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.

sku str

The Virtual Machine SKU for the Scale Set, such as Standard_F2.

source_image_id str

The ID of an Image which each Virtual Machine in this Scale Set should be based on.

source_image_reference Dict[LinuxVirtualMachineScaleSetSourceImageReference]

A source_image_reference block as defined below.

tags Dict[str, str]

A mapping of tags which should be assigned to this Virtual Machine Scale Set.

terminate_notification Dict[LinuxVirtualMachineScaleSetTerminateNotification]

A terminate_notification block as defined below.

unique_id str

The Unique ID for this Linux Virtual Machine Scale Set.

upgrade_mode str

Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual.

zone_balance bool

Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.

zones List[str]

A list of Availability Zones in which the Virtual Machines in this Scale Set should be created in. Changing this forces a new resource to be created.

Supporting Types

LinuxVirtualMachineScaleSetAdditionalCapabilities

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

UltraSsdEnabled bool

Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created.

UltraSsdEnabled bool

Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created.

ultraSsdEnabled boolean

Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created.

ultraSsdEnabled bool

Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created.

LinuxVirtualMachineScaleSetAdminSshKey

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

PublicKey string

The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.

Username string

The Username for which this Public SSH Key should be configured.

PublicKey string

The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.

Username string

The Username for which this Public SSH Key should be configured.

publicKey string

The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.

username string

The Username for which this Public SSH Key should be configured.

publicKey str

The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.

username str

The Username for which this Public SSH Key should be configured.

LinuxVirtualMachineScaleSetAutomaticInstanceRepair

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Enabled bool

Should the automatic instance repair be enabled on this Virtual Machine Scale Set?

GracePeriod string

Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format.

Enabled bool

Should the automatic instance repair be enabled on this Virtual Machine Scale Set?

GracePeriod string

Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format.

enabled boolean

Should the automatic instance repair be enabled on this Virtual Machine Scale Set?

gracePeriod string

Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format.

enabled bool

Should the automatic instance repair be enabled on this Virtual Machine Scale Set?

gracePeriod str

Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format.

LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

DisableAutomaticRollback bool

Should automatic rollbacks be disabled? Changing this forces a new resource to be created.

EnableAutomaticOsUpgrade bool

Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? Changing this forces a new resource to be created.

DisableAutomaticRollback bool

Should automatic rollbacks be disabled? Changing this forces a new resource to be created.

EnableAutomaticOsUpgrade bool

Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? Changing this forces a new resource to be created.

disableAutomaticRollback boolean

Should automatic rollbacks be disabled? Changing this forces a new resource to be created.

enableAutomaticOsUpgrade boolean

Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? Changing this forces a new resource to be created.

disableAutomaticRollback bool

Should automatic rollbacks be disabled? Changing this forces a new resource to be created.

enableAutomaticOsUpgrade bool

Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? Changing this forces a new resource to be created.

LinuxVirtualMachineScaleSetBootDiagnostics

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

StorageAccountUri string

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

StorageAccountUri string

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

storageAccountUri string

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

storageAccountUri str

The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.

LinuxVirtualMachineScaleSetDataDisk

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Caching string

The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.

DiskSizeGb int

The size of the Data Disk which should be created.

Lun int

The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.

StorageAccountType string

The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, Premium_LRS and UltraSSD_LRS.

CreateOption string

The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).

DiskEncryptionSetId string

The ID of the Disk Encryption Set which should be used to encrypt this Data Disk.

WriteAcceleratorEnabled bool

Should Write Accelerator be enabled for this Data Disk? Defaults to false.

Caching string

The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.

DiskSizeGb int

The size of the Data Disk which should be created.

Lun int

The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.

StorageAccountType string

The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, Premium_LRS and UltraSSD_LRS.

CreateOption string

The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).

DiskEncryptionSetId string

The ID of the Disk Encryption Set which should be used to encrypt this Data Disk.

WriteAcceleratorEnabled bool

Should Write Accelerator be enabled for this Data Disk? Defaults to false.

caching string

The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.

diskSizeGb number

The size of the Data Disk which should be created.

lun number

The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.

storageAccountType string

The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, Premium_LRS and UltraSSD_LRS.

createOption string

The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).

diskEncryptionSetId string

The ID of the Disk Encryption Set which should be used to encrypt this Data Disk.

writeAcceleratorEnabled boolean

Should Write Accelerator be enabled for this Data Disk? Defaults to false.

caching str

The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.

disk_size_gb float

The size of the Data Disk which should be created.

lun float

The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.

storage_account_type str

The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, Premium_LRS and UltraSSD_LRS.

create_option str

The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).

disk_encryption_set_id str

The ID of the Disk Encryption Set which should be used to encrypt this Data Disk.

write_accelerator_enabled bool

Should Write Accelerator be enabled for this Data Disk? Defaults to false.

LinuxVirtualMachineScaleSetIdentity

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Type string

The type of Managed Identity which should be assigned to the Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.

IdentityIds List<string>

A list of User Managed Identity ID’s which should be assigned to the Linux Virtual Machine Scale Set.

PrincipalId string

The ID of the System Managed Service Principal.

Type string

The type of Managed Identity which should be assigned to the Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.

IdentityIds []string

A list of User Managed Identity ID’s which should be assigned to the Linux Virtual Machine Scale Set.

PrincipalId string

The ID of the System Managed Service Principal.

type string

The type of Managed Identity which should be assigned to the Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.

identityIds string[]

A list of User Managed Identity ID’s which should be assigned to the Linux Virtual Machine Scale Set.

principalId string

The ID of the System Managed Service Principal.

type str

The type of Managed Identity which should be assigned to the Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.

identityIds List[str]

A list of User Managed Identity ID’s which should be assigned to the Linux Virtual Machine Scale Set.

principal_id str

The ID of the System Managed Service Principal.

LinuxVirtualMachineScaleSetNetworkInterface

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

IpConfigurations List<LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs>

One or more ip_configuration blocks as defined above.

Name string

The Name which should be used for this Network Interface. Changing this forces a new resource to be created.

DnsServers List<string>

A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.

EnableAcceleratedNetworking bool

Does this Network Interface support Accelerated Networking? Defaults to false.

EnableIpForwarding bool

Does this Network Interface support IP Forwarding? Defaults to false.

NetworkSecurityGroupId string

The ID of a Network Security Group which should be assigned to this Network Interface.

Primary bool

Is this the Primary IP Configuration?

IpConfigurations []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration

One or more ip_configuration blocks as defined above.

Name string

The Name which should be used for this Network Interface. Changing this forces a new resource to be created.

DnsServers []string

A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.

EnableAcceleratedNetworking bool

Does this Network Interface support Accelerated Networking? Defaults to false.

EnableIpForwarding bool

Does this Network Interface support IP Forwarding? Defaults to false.

NetworkSecurityGroupId string

The ID of a Network Security Group which should be assigned to this Network Interface.

Primary bool

Is this the Primary IP Configuration?

ipConfigurations LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration[]

One or more ip_configuration blocks as defined above.

name string

The Name which should be used for this Network Interface. Changing this forces a new resource to be created.

dnsServers string[]

A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.

enableAcceleratedNetworking boolean

Does this Network Interface support Accelerated Networking? Defaults to false.

enableIpForwarding boolean

Does this Network Interface support IP Forwarding? Defaults to false.

networkSecurityGroupId string

The ID of a Network Security Group which should be assigned to this Network Interface.

primary boolean

Is this the Primary IP Configuration?

ip_configurations List[LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration]

One or more ip_configuration blocks as defined above.

name str

The Name which should be used for this Network Interface. Changing this forces a new resource to be created.

dns_servers List[str]

A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.

enable_accelerated_networking bool

Does this Network Interface support Accelerated Networking? Defaults to false.

enable_ip_forwarding bool

Does this Network Interface support IP Forwarding? Defaults to false.

network_security_group_id str

The ID of a Network Security Group which should be assigned to this Network Interface.

primary bool

Is this the Primary IP Configuration?

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfiguration

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Name string

The Name which should be used for this IP Configuration.

ApplicationGatewayBackendAddressPoolIds List<string>

A list of Backend Address Pools ID’s from a Application Gateway which this Virtual Machine Scale Set should be connected to.

ApplicationSecurityGroupIds List<string>

A list of Application Security Group ID’s which this Virtual Machine Scale Set should be connected to.

LoadBalancerBackendAddressPoolIds List<string>

A list of Backend Address Pools ID’s from a Load Balancer which this Virtual Machine Scale Set should be connected to.

LoadBalancerInboundNatRulesIds List<string>

A list of NAT Rule ID’s from a Load Balancer which this Virtual Machine Scale Set should be connected to.

Primary bool

Is this the Primary IP Configuration for this Network Interface? Defaults to false.

PublicIpAddresses List<LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressArgs>

A public_ip_address block as defined below.

SubnetId string

The ID of the Subnet which this IP Configuration should be connected to.

Version string

The Internet Protocol Version which should be used for this IP Configuration. Possible values are IPv4 and IPv6. Defaults to IPv4.

Name string

The Name which should be used for this IP Configuration.

ApplicationGatewayBackendAddressPoolIds []string

A list of Backend Address Pools ID’s from a Application Gateway which this Virtual Machine Scale Set should be connected to.

ApplicationSecurityGroupIds []string

A list of Application Security Group ID’s which this Virtual Machine Scale Set should be connected to.

LoadBalancerBackendAddressPoolIds []string

A list of Backend Address Pools ID’s from a Load Balancer which this Virtual Machine Scale Set should be connected to.

LoadBalancerInboundNatRulesIds []string

A list of NAT Rule ID’s from a Load Balancer which this Virtual Machine Scale Set should be connected to.

Primary bool

Is this the Primary IP Configuration for this Network Interface? Defaults to false.

PublicIpAddresses []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress

A public_ip_address block as defined below.

SubnetId string

The ID of the Subnet which this IP Configuration should be connected to.

Version string

The Internet Protocol Version which should be used for this IP Configuration. Possible values are IPv4 and IPv6. Defaults to IPv4.

name string

The Name which should be used for this IP Configuration.

applicationGatewayBackendAddressPoolIds string[]

A list of Backend Address Pools ID’s from a Application Gateway which this Virtual Machine Scale Set should be connected to.

applicationSecurityGroupIds string[]

A list of Application Security Group ID’s which this Virtual Machine Scale Set should be connected to.

loadBalancerBackendAddressPoolIds string[]

A list of Backend Address Pools ID’s from a Load Balancer which this Virtual Machine Scale Set should be connected to.

loadBalancerInboundNatRulesIds string[]

A list of NAT Rule ID’s from a Load Balancer which this Virtual Machine Scale Set should be connected to.

primary boolean

Is this the Primary IP Configuration for this Network Interface? Defaults to false.

publicIpAddresses LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress[]

A public_ip_address block as defined below.

subnetId string

The ID of the Subnet which this IP Configuration should be connected to.

version string

The Internet Protocol Version which should be used for this IP Configuration. Possible values are IPv4 and IPv6. Defaults to IPv4.

name str

The Name which should be used for this IP Configuration.

applicationGatewayBackendAddressPoolIds List[str]

A list of Backend Address Pools ID’s from a Application Gateway which this Virtual Machine Scale Set should be connected to.

applicationSecurityGroupIds List[str]

A list of Application Security Group ID’s which this Virtual Machine Scale Set should be connected to.

loadBalancerBackendAddressPoolIds List[str]

A list of Backend Address Pools ID’s from a Load Balancer which this Virtual Machine Scale Set should be connected to.

loadBalancerInboundNatRulesIds List[str]

A list of NAT Rule ID’s from a Load Balancer which this Virtual Machine Scale Set should be connected to.

primary bool

Is this the Primary IP Configuration for this Network Interface? Defaults to false.

public_ip_addresses List[LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress]

A public_ip_address block as defined below.

subnet_id str

The ID of the Subnet which this IP Configuration should be connected to.

version str

The Internet Protocol Version which should be used for this IP Configuration. Possible values are IPv4 and IPv6. Defaults to IPv4.

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddress

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Name string

The Name of the Public IP Address Configuration.

DomainNameLabel string

The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.

IdleTimeoutInMinutes int

The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.

IpTags List<LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTagArgs>

One or more ip_tag blocks as defined above.

PublicIpPrefixId string

The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.

Name string

The Name of the Public IP Address Configuration.

DomainNameLabel string

The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.

IdleTimeoutInMinutes int

The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.

IpTags []LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag

One or more ip_tag blocks as defined above.

PublicIpPrefixId string

The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.

name string

The Name of the Public IP Address Configuration.

domainNameLabel string

The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.

idleTimeoutInMinutes number

The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.

ipTags LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag[]

One or more ip_tag blocks as defined above.

publicIpPrefixId string

The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.

name str

The Name of the Public IP Address Configuration.

domain_name_label str

The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.

idle_timeout_in_minutes float

The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.

ipTags List[LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag]

One or more ip_tag blocks as defined above.

public_ip_prefix_id str

The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.

LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationPublicIpAddressIpTag

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Tag string

The IP Tag associated with the Public IP, such as SQL or Storage.

Type string

The Type of IP Tag, such as FirstPartyUsage.

Tag string

The IP Tag associated with the Public IP, such as SQL or Storage.

Type string

The Type of IP Tag, such as FirstPartyUsage.

tag string

The IP Tag associated with the Public IP, such as SQL or Storage.

type string

The Type of IP Tag, such as FirstPartyUsage.

tag str

The IP Tag associated with the Public IP, such as SQL or Storage.

type str

The Type of IP Tag, such as FirstPartyUsage.

LinuxVirtualMachineScaleSetOsDisk

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Caching string

The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.

StorageAccountType string

The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS and Premium_LRS.

DiffDiskSettings LinuxVirtualMachineScaleSetOsDiskDiffDiskSettingsArgs

A diff_disk_settings block as defined above. Changing this forces a new resource to be created.

DiskEncryptionSetId string

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk.

DiskSizeGb int

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

WriteAcceleratorEnabled bool

Should Write Accelerator be Enabled for this OS Disk? Defaults to false.

Caching string

The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.

StorageAccountType string

The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS and Premium_LRS.

DiffDiskSettings LinuxVirtualMachineScaleSetOsDiskDiffDiskSettings

A diff_disk_settings block as defined above. Changing this forces a new resource to be created.

DiskEncryptionSetId string

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk.

DiskSizeGb int

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

WriteAcceleratorEnabled bool

Should Write Accelerator be Enabled for this OS Disk? Defaults to false.

caching string

The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.

storageAccountType string

The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS and Premium_LRS.

diffDiskSettings LinuxVirtualMachineScaleSetOsDiskDiffDiskSettings

A diff_disk_settings block as defined above. Changing this forces a new resource to be created.

diskEncryptionSetId string

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk.

diskSizeGb number

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

writeAcceleratorEnabled boolean

Should Write Accelerator be Enabled for this OS Disk? Defaults to false.

caching str

The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.

storage_account_type str

The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS and Premium_LRS.

diffDiskSettings Dict[LinuxVirtualMachineScaleSetOsDiskDiffDiskSettings]

A diff_disk_settings block as defined above. Changing this forces a new resource to be created.

disk_encryption_set_id str

The ID of the Disk Encryption Set which should be used to encrypt this OS Disk.

disk_size_gb float

The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.

write_accelerator_enabled bool

Should Write Accelerator be Enabled for this OS Disk? Defaults to false.

LinuxVirtualMachineScaleSetOsDiskDiffDiskSettings

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Option string
Option string
option string
option str

LinuxVirtualMachineScaleSetPlan

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

Product string
Publisher string

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

Name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

Product string
Publisher string

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

name string

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

product string
publisher string

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

name str

The name of the Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.

product str
publisher str

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

LinuxVirtualMachineScaleSetRollingUpgradePolicy

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

MaxBatchInstancePercent int

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. Changing this forces a new resource to be created.

MaxUnhealthyInstancePercent int

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. Changing this forces a new resource to be created.

MaxUnhealthyUpgradedInstancePercent int

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. Changing this forces a new resource to be created.

PauseTimeBetweenBatches string

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. Changing this forces a new resource to be created.

MaxBatchInstancePercent int

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. Changing this forces a new resource to be created.

MaxUnhealthyInstancePercent int

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. Changing this forces a new resource to be created.

MaxUnhealthyUpgradedInstancePercent int

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. Changing this forces a new resource to be created.

PauseTimeBetweenBatches string

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. Changing this forces a new resource to be created.

maxBatchInstancePercent number

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. Changing this forces a new resource to be created.

maxUnhealthyInstancePercent number

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. Changing this forces a new resource to be created.

maxUnhealthyUpgradedInstancePercent number

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. Changing this forces a new resource to be created.

pauseTimeBetweenBatches string

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. Changing this forces a new resource to be created.

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. Changing this forces a new resource to be created.

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. Changing this forces a new resource to be created.

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. Changing this forces a new resource to be created.

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. Changing this forces a new resource to be created.

LinuxVirtualMachineScaleSetSecret

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Certificates List<LinuxVirtualMachineScaleSetSecretCertificateArgs>

One or more certificate blocks as defined above.

KeyVaultId string

The ID of the Key Vault from which all Secrets should be sourced.

Certificates []LinuxVirtualMachineScaleSetSecretCertificate

One or more certificate blocks as defined above.

KeyVaultId string

The ID of the Key Vault from which all Secrets should be sourced.

certificates LinuxVirtualMachineScaleSetSecretCertificate[]

One or more certificate blocks as defined above.

keyVaultId string

The ID of the Key Vault from which all Secrets should be sourced.

certificates List[LinuxVirtualMachineScaleSetSecretCertificate]

One or more certificate blocks as defined above.

key_vault_id str

The ID of the Key Vault from which all Secrets should be sourced.

LinuxVirtualMachineScaleSetSecretCertificate

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Url string

The Secret URL of a Key Vault Certificate.

Url string

The Secret URL of a Key Vault Certificate.

url string

The Secret URL of a Key Vault Certificate.

url str

The Secret URL of a Key Vault Certificate.

LinuxVirtualMachineScaleSetSourceImageReference

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Offer string

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

Publisher string

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

Sku string

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

Version string

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

Offer string

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

Publisher string

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

Sku string

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

Version string

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

offer string

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

publisher string

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

sku string

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

version string

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

offer str

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

publisher str

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

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.

LinuxVirtualMachineScaleSetTerminateNotification

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Enabled bool

Should the terminate notification be enabled on this Virtual Machine Scale Set? Defaults to false.

Timeout string

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format.

Enabled bool

Should the terminate notification be enabled on this Virtual Machine Scale Set? Defaults to false.

Timeout string

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format.

enabled boolean

Should the terminate notification be enabled on this Virtual Machine Scale Set? Defaults to false.

timeout string

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format.

enabled bool

Should the terminate notification be enabled on this Virtual Machine Scale Set? Defaults to false.

timeout str

Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format.

Package Details

Repository
https://github.com/pulumi/pulumi-azure
License
Apache-2.0
Notes
This Pulumi package is based on the azurerm Terraform Provider.