Show / Hide Table of Contents

Class 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

Inheritance
System.Object
Resource
CustomResource
LinuxVirtualMachineScaleSet
Inherited Members
CustomResource.Id
Resource.GetResourceType()
Resource.GetResourceName()
Resource.Urn
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: Pulumi.Azure.Compute
Assembly: Pulumi.Azure.dll
Syntax
public class LinuxVirtualMachineScaleSet : CustomResource

Constructors

View Source

LinuxVirtualMachineScaleSet(String, LinuxVirtualMachineScaleSetArgs, CustomResourceOptions)

Create a LinuxVirtualMachineScaleSet resource with the given unique name, arguments, and options.

Declaration
public LinuxVirtualMachineScaleSet(string name, LinuxVirtualMachineScaleSetArgs args, CustomResourceOptions options = null)
Parameters
Type Name Description
System.String name

The unique name of the resource

LinuxVirtualMachineScaleSetArgs args

The arguments used to populate this resource's properties

CustomResourceOptions options

A bag of options that control this resource's behavior

Properties

View Source

AdditionalCapabilities

A additional_capabilities block as defined below.

Declaration
public Output<LinuxVirtualMachineScaleSetAdditionalCapabilities> AdditionalCapabilities { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetAdditionalCapabilities>
View Source

AdminPassword

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

Declaration
public Output<string> AdminPassword { get; }
Property Value
Type Description
Output<System.String>
View Source

AdminSshKeys

One or more admin_ssh_key blocks as defined below.

Declaration
public Output<ImmutableArray<LinuxVirtualMachineScaleSetAdminSshKey>> AdminSshKeys { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<LinuxVirtualMachineScaleSetAdminSshKey>>
View Source

AdminUsername

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

Declaration
public Output<string> AdminUsername { get; }
Property Value
Type Description
Output<System.String>
View Source

AutomaticInstanceRepair

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.

Declaration
public Output<LinuxVirtualMachineScaleSetAutomaticInstanceRepair> AutomaticInstanceRepair { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetAutomaticInstanceRepair>
View Source

AutomaticOsUpgradePolicy

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

Declaration
public Output<LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy> AutomaticOsUpgradePolicy { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetAutomaticOsUpgradePolicy>
View Source

BootDiagnostics

A boot_diagnostics block as defined below.

Declaration
public Output<LinuxVirtualMachineScaleSetBootDiagnostics> BootDiagnostics { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetBootDiagnostics>
View Source

ComputerNamePrefix

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.

Declaration
public Output<string> ComputerNamePrefix { get; }
Property Value
Type Description
Output<System.String>
View Source

CustomData

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

Declaration
public Output<string> CustomData { get; }
Property Value
Type Description
Output<System.String>
View Source

DataDisks

One or more data_disk blocks as defined below.

Declaration
public Output<ImmutableArray<LinuxVirtualMachineScaleSetDataDisk>> DataDisks { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<LinuxVirtualMachineScaleSetDataDisk>>
View Source

DisablePasswordAuthentication

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

Declaration
public Output<bool?> DisablePasswordAuthentication { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

DoNotRunExtensionsOnOverprovisionedMachines

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

Declaration
public Output<bool?> DoNotRunExtensionsOnOverprovisionedMachines { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

EvictionPolicy

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

Declaration
public Output<string> EvictionPolicy { get; }
Property Value
Type Description
Output<System.String>
View Source

HealthProbeId

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.

Declaration
public Output<string> HealthProbeId { get; }
Property Value
Type Description
Output<System.String>
View Source

Identity

A identity block as defined below.

Declaration
public Output<LinuxVirtualMachineScaleSetIdentity> Identity { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetIdentity>
View Source

Instances

The number of Virtual Machines in the Scale Set.

Declaration
public Output<int> Instances { get; }
Property Value
Type Description
Output<System.Int32>
View Source

Location

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

Declaration
public Output<string> Location { get; }
Property Value
Type Description
Output<System.String>
View Source

MaxBidPrice

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.

Declaration
public Output<double?> MaxBidPrice { get; }
Property Value
Type Description
Output<System.Nullable<System.Double>>
View Source

Name

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

Declaration
public Output<string> Name { get; }
Property Value
Type Description
Output<System.String>
View Source

NetworkInterfaces

One or more network_interface blocks as defined below.

Declaration
public Output<ImmutableArray<LinuxVirtualMachineScaleSetNetworkInterface>> NetworkInterfaces { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<LinuxVirtualMachineScaleSetNetworkInterface>>
View Source

OsDisk

An os_disk block as defined below.

Declaration
public Output<LinuxVirtualMachineScaleSetOsDisk> OsDisk { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetOsDisk>
View Source

Overprovision

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.

Declaration
public Output<bool?> Overprovision { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

Plan

Declaration
public Output<LinuxVirtualMachineScaleSetPlan> Plan { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetPlan>
View Source

Priority

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

Declaration
public Output<string> Priority { get; }
Property Value
Type Description
Output<System.String>
View Source

ProvisionVmAgent

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.

Declaration
public Output<bool?> ProvisionVmAgent { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

ProximityPlacementGroupId

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.

Declaration
public Output<string> ProximityPlacementGroupId { get; }
Property Value
Type Description
Output<System.String>
View Source

ResourceGroupName

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.

Declaration
public Output<string> ResourceGroupName { get; }
Property Value
Type Description
Output<System.String>
View Source

RollingUpgradePolicy

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.

Declaration
public Output<LinuxVirtualMachineScaleSetRollingUpgradePolicy> RollingUpgradePolicy { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetRollingUpgradePolicy>
View Source

ScaleInPolicy

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.

Declaration
public Output<string> ScaleInPolicy { get; }
Property Value
Type Description
Output<System.String>
View Source

Secrets

One or more secret blocks as defined below.

Declaration
public Output<ImmutableArray<LinuxVirtualMachineScaleSetSecret>> Secrets { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<LinuxVirtualMachineScaleSetSecret>>
View Source

SinglePlacementGroup

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.

Declaration
public Output<bool?> SinglePlacementGroup { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

Sku

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

Declaration
public Output<string> Sku { get; }
Property Value
Type Description
Output<System.String>
View Source

SourceImageId

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

Declaration
public Output<string> SourceImageId { get; }
Property Value
Type Description
Output<System.String>
View Source

SourceImageReference

A source_image_reference block as defined below.

Declaration
public Output<LinuxVirtualMachineScaleSetSourceImageReference> SourceImageReference { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetSourceImageReference>
View Source

Tags

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

Declaration
public Output<ImmutableDictionary<string, string>> Tags { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableDictionary<System.String, System.String>>
View Source

TerminateNotification

A terminate_notification block as defined below.

Declaration
public Output<LinuxVirtualMachineScaleSetTerminateNotification> TerminateNotification { get; }
Property Value
Type Description
Output<LinuxVirtualMachineScaleSetTerminateNotification>
View Source

UniqueId

The Unique ID for this Linux Virtual Machine Scale Set.

Declaration
public Output<string> UniqueId { get; }
Property Value
Type Description
Output<System.String>
View Source

UpgradeMode

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.

Declaration
public Output<string> UpgradeMode { get; }
Property Value
Type Description
Output<System.String>
View Source

ZoneBalance

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.

Declaration
public Output<bool?> ZoneBalance { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

Zones

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.

Declaration
public Output<ImmutableArray<string>> Zones { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>

Methods

View Source

Get(String, Input<String>, LinuxVirtualMachineScaleSetState, CustomResourceOptions)

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

Declaration
public static LinuxVirtualMachineScaleSet Get(string name, Input<string> id, LinuxVirtualMachineScaleSetState state = null, CustomResourceOptions options = null)
Parameters
Type Name Description
System.String name

The unique name of the resulting resource.

Input<System.String> id

The unique provider ID of the resource to lookup.

LinuxVirtualMachineScaleSetState state

Any extra arguments used during the lookup.

CustomResourceOptions options

A bag of options that control this resource's behavior

Returns
Type Description
LinuxVirtualMachineScaleSet
  • View Source
Back to top Copyright 2016-2020, Pulumi Corporation.