We recommend using Azure Native.
azure.compute.VirtualMachineScaleSetExtension
Explore with Pulumi AI
Manages an Extension for a Virtual Machine Scale Set.
NOTE: This resource is not intended to be used with the
azure.compute.ScaleSet
resource - instead it’s intended for this to be used with theazure.compute.LinuxVirtualMachineScaleSet
andazure.compute.WindowsVirtualMachineScaleSet
resources.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "example",
location: "West Europe",
});
const exampleLinuxVirtualMachineScaleSet = new azure.compute.LinuxVirtualMachineScaleSet("example", {
name: "example",
resourceGroupName: example.name,
location: example.location,
sku: "Standard_F2",
adminUsername: "adminuser",
instances: 1,
sourceImageReference: {
publisher: "Canonical",
offer: "0001-com-ubuntu-server-jammy",
sku: "22_04-lts",
version: "latest",
},
networkInterfaces: [{
name: "example",
ipConfigurations: [{
name: "internal",
}],
}],
osDisk: {
storageAccountType: "Standard_LRS",
caching: "ReadWrite",
},
});
const exampleVirtualMachineScaleSetExtension = new azure.compute.VirtualMachineScaleSetExtension("example", {
name: "example",
virtualMachineScaleSetId: exampleLinuxVirtualMachineScaleSet.id,
publisher: "Microsoft.Azure.Extensions",
type: "CustomScript",
typeHandlerVersion: "2.0",
settings: JSON.stringify({
commandToExecute: "echo $HOSTNAME",
}),
});
import pulumi
import json
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="example",
location="West Europe")
example_linux_virtual_machine_scale_set = azure.compute.LinuxVirtualMachineScaleSet("example",
name="example",
resource_group_name=example.name,
location=example.location,
sku="Standard_F2",
admin_username="adminuser",
instances=1,
source_image_reference=azure.compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs(
publisher="Canonical",
offer="0001-com-ubuntu-server-jammy",
sku="22_04-lts",
version="latest",
),
network_interfaces=[azure.compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs(
name="example",
ip_configurations=[azure.compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs(
name="internal",
)],
)],
os_disk=azure.compute.LinuxVirtualMachineScaleSetOsDiskArgs(
storage_account_type="Standard_LRS",
caching="ReadWrite",
))
example_virtual_machine_scale_set_extension = azure.compute.VirtualMachineScaleSetExtension("example",
name="example",
virtual_machine_scale_set_id=example_linux_virtual_machine_scale_set.id,
publisher="Microsoft.Azure.Extensions",
type="CustomScript",
type_handler_version="2.0",
settings=json.dumps({
"commandToExecute": "echo $HOSTNAME",
}))
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("example"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleLinuxVirtualMachineScaleSet, err := compute.NewLinuxVirtualMachineScaleSet(ctx, "example", &compute.LinuxVirtualMachineScaleSetArgs{
Name: pulumi.String("example"),
ResourceGroupName: example.Name,
Location: example.Location,
Sku: pulumi.String("Standard_F2"),
AdminUsername: pulumi.String("adminuser"),
Instances: pulumi.Int(1),
SourceImageReference: &compute.LinuxVirtualMachineScaleSetSourceImageReferenceArgs{
Publisher: pulumi.String("Canonical"),
Offer: pulumi.String("0001-com-ubuntu-server-jammy"),
Sku: pulumi.String("22_04-lts"),
Version: pulumi.String("latest"),
},
NetworkInterfaces: compute.LinuxVirtualMachineScaleSetNetworkInterfaceArray{
&compute.LinuxVirtualMachineScaleSetNetworkInterfaceArgs{
Name: pulumi.String("example"),
IpConfigurations: compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArray{
&compute.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs{
Name: pulumi.String("internal"),
},
},
},
},
OsDisk: &compute.LinuxVirtualMachineScaleSetOsDiskArgs{
StorageAccountType: pulumi.String("Standard_LRS"),
Caching: pulumi.String("ReadWrite"),
},
})
if err != nil {
return err
}
tmpJSON0, err := json.Marshal(map[string]interface{}{
"commandToExecute": "echo $HOSTNAME",
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
_, err = compute.NewVirtualMachineScaleSetExtension(ctx, "example", &compute.VirtualMachineScaleSetExtensionArgs{
Name: pulumi.String("example"),
VirtualMachineScaleSetId: exampleLinuxVirtualMachineScaleSet.ID(),
Publisher: pulumi.String("Microsoft.Azure.Extensions"),
Type: pulumi.String("CustomScript"),
TypeHandlerVersion: pulumi.String("2.0"),
Settings: pulumi.String(json0),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = "example",
Location = "West Europe",
});
var exampleLinuxVirtualMachineScaleSet = new Azure.Compute.LinuxVirtualMachineScaleSet("example", new()
{
Name = "example",
ResourceGroupName = example.Name,
Location = example.Location,
Sku = "Standard_F2",
AdminUsername = "adminuser",
Instances = 1,
SourceImageReference = new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetSourceImageReferenceArgs
{
Publisher = "Canonical",
Offer = "0001-com-ubuntu-server-jammy",
Sku = "22_04-lts",
Version = "latest",
},
NetworkInterfaces = new[]
{
new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetNetworkInterfaceArgs
{
Name = "example",
IpConfigurations = new[]
{
new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs
{
Name = "internal",
},
},
},
},
OsDisk = new Azure.Compute.Inputs.LinuxVirtualMachineScaleSetOsDiskArgs
{
StorageAccountType = "Standard_LRS",
Caching = "ReadWrite",
},
});
var exampleVirtualMachineScaleSetExtension = new Azure.Compute.VirtualMachineScaleSetExtension("example", new()
{
Name = "example",
VirtualMachineScaleSetId = exampleLinuxVirtualMachineScaleSet.Id,
Publisher = "Microsoft.Azure.Extensions",
Type = "CustomScript",
TypeHandlerVersion = "2.0",
Settings = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["commandToExecute"] = "echo $HOSTNAME",
}),
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.compute.LinuxVirtualMachineScaleSet;
import com.pulumi.azure.compute.LinuxVirtualMachineScaleSetArgs;
import com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetSourceImageReferenceArgs;
import com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetNetworkInterfaceArgs;
import com.pulumi.azure.compute.inputs.LinuxVirtualMachineScaleSetOsDiskArgs;
import com.pulumi.azure.compute.VirtualMachineScaleSetExtension;
import com.pulumi.azure.compute.VirtualMachineScaleSetExtensionArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("example")
.location("West Europe")
.build());
var exampleLinuxVirtualMachineScaleSet = new LinuxVirtualMachineScaleSet("exampleLinuxVirtualMachineScaleSet", LinuxVirtualMachineScaleSetArgs.builder()
.name("example")
.resourceGroupName(example.name())
.location(example.location())
.sku("Standard_F2")
.adminUsername("adminuser")
.instances(1)
.sourceImageReference(LinuxVirtualMachineScaleSetSourceImageReferenceArgs.builder()
.publisher("Canonical")
.offer("0001-com-ubuntu-server-jammy")
.sku("22_04-lts")
.version("latest")
.build())
.networkInterfaces(LinuxVirtualMachineScaleSetNetworkInterfaceArgs.builder()
.name("example")
.ipConfigurations(LinuxVirtualMachineScaleSetNetworkInterfaceIpConfigurationArgs.builder()
.name("internal")
.build())
.build())
.osDisk(LinuxVirtualMachineScaleSetOsDiskArgs.builder()
.storageAccountType("Standard_LRS")
.caching("ReadWrite")
.build())
.build());
var exampleVirtualMachineScaleSetExtension = new VirtualMachineScaleSetExtension("exampleVirtualMachineScaleSetExtension", VirtualMachineScaleSetExtensionArgs.builder()
.name("example")
.virtualMachineScaleSetId(exampleLinuxVirtualMachineScaleSet.id())
.publisher("Microsoft.Azure.Extensions")
.type("CustomScript")
.typeHandlerVersion("2.0")
.settings(serializeJson(
jsonObject(
jsonProperty("commandToExecute", "echo $HOSTNAME")
)))
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: example
location: West Europe
exampleLinuxVirtualMachineScaleSet:
type: azure:compute:LinuxVirtualMachineScaleSet
name: example
properties:
name: example
resourceGroupName: ${example.name}
location: ${example.location}
sku: Standard_F2
adminUsername: adminuser
instances: 1
sourceImageReference:
publisher: Canonical
offer: 0001-com-ubuntu-server-jammy
sku: 22_04-lts
version: latest
networkInterfaces:
- name: example
ipConfigurations:
- name: internal
osDisk:
storageAccountType: Standard_LRS
caching: ReadWrite
exampleVirtualMachineScaleSetExtension:
type: azure:compute:VirtualMachineScaleSetExtension
name: example
properties:
name: example
virtualMachineScaleSetId: ${exampleLinuxVirtualMachineScaleSet.id}
publisher: Microsoft.Azure.Extensions
type: CustomScript
typeHandlerVersion: '2.0'
settings:
fn::toJSON:
commandToExecute: echo $HOSTNAME
Create VirtualMachineScaleSetExtension Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new VirtualMachineScaleSetExtension(name: string, args: VirtualMachineScaleSetExtensionArgs, opts?: CustomResourceOptions);
@overload
def VirtualMachineScaleSetExtension(resource_name: str,
args: VirtualMachineScaleSetExtensionArgs,
opts: Optional[ResourceOptions] = None)
@overload
def VirtualMachineScaleSetExtension(resource_name: str,
opts: Optional[ResourceOptions] = None,
publisher: Optional[str] = None,
virtual_machine_scale_set_id: Optional[str] = None,
type_handler_version: Optional[str] = None,
type: Optional[str] = None,
protected_settings_from_key_vault: Optional[VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs] = None,
protected_settings: Optional[str] = None,
auto_upgrade_minor_version: Optional[bool] = None,
provision_after_extensions: Optional[Sequence[str]] = None,
name: Optional[str] = None,
settings: Optional[str] = None,
force_update_tag: Optional[str] = None,
failure_suppression_enabled: Optional[bool] = None,
automatic_upgrade_enabled: Optional[bool] = None)
func NewVirtualMachineScaleSetExtension(ctx *Context, name string, args VirtualMachineScaleSetExtensionArgs, opts ...ResourceOption) (*VirtualMachineScaleSetExtension, error)
public VirtualMachineScaleSetExtension(string name, VirtualMachineScaleSetExtensionArgs args, CustomResourceOptions? opts = null)
public VirtualMachineScaleSetExtension(String name, VirtualMachineScaleSetExtensionArgs args)
public VirtualMachineScaleSetExtension(String name, VirtualMachineScaleSetExtensionArgs args, CustomResourceOptions options)
type: azure:compute:VirtualMachineScaleSetExtension
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args VirtualMachineScaleSetExtensionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args VirtualMachineScaleSetExtensionArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args VirtualMachineScaleSetExtensionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args VirtualMachineScaleSetExtensionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args VirtualMachineScaleSetExtensionArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var virtualMachineScaleSetExtensionResource = new Azure.Compute.VirtualMachineScaleSetExtension("virtualMachineScaleSetExtensionResource", new()
{
Publisher = "string",
VirtualMachineScaleSetId = "string",
TypeHandlerVersion = "string",
Type = "string",
ProtectedSettingsFromKeyVault = new Azure.Compute.Inputs.VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs
{
SecretUrl = "string",
SourceVaultId = "string",
},
ProtectedSettings = "string",
AutoUpgradeMinorVersion = false,
ProvisionAfterExtensions = new[]
{
"string",
},
Name = "string",
Settings = "string",
ForceUpdateTag = "string",
FailureSuppressionEnabled = false,
AutomaticUpgradeEnabled = false,
});
example, err := compute.NewVirtualMachineScaleSetExtension(ctx, "virtualMachineScaleSetExtensionResource", &compute.VirtualMachineScaleSetExtensionArgs{
Publisher: pulumi.String("string"),
VirtualMachineScaleSetId: pulumi.String("string"),
TypeHandlerVersion: pulumi.String("string"),
Type: pulumi.String("string"),
ProtectedSettingsFromKeyVault: &compute.VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs{
SecretUrl: pulumi.String("string"),
SourceVaultId: pulumi.String("string"),
},
ProtectedSettings: pulumi.String("string"),
AutoUpgradeMinorVersion: pulumi.Bool(false),
ProvisionAfterExtensions: pulumi.StringArray{
pulumi.String("string"),
},
Name: pulumi.String("string"),
Settings: pulumi.String("string"),
ForceUpdateTag: pulumi.String("string"),
FailureSuppressionEnabled: pulumi.Bool(false),
AutomaticUpgradeEnabled: pulumi.Bool(false),
})
var virtualMachineScaleSetExtensionResource = new VirtualMachineScaleSetExtension("virtualMachineScaleSetExtensionResource", VirtualMachineScaleSetExtensionArgs.builder()
.publisher("string")
.virtualMachineScaleSetId("string")
.typeHandlerVersion("string")
.type("string")
.protectedSettingsFromKeyVault(VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs.builder()
.secretUrl("string")
.sourceVaultId("string")
.build())
.protectedSettings("string")
.autoUpgradeMinorVersion(false)
.provisionAfterExtensions("string")
.name("string")
.settings("string")
.forceUpdateTag("string")
.failureSuppressionEnabled(false)
.automaticUpgradeEnabled(false)
.build());
virtual_machine_scale_set_extension_resource = azure.compute.VirtualMachineScaleSetExtension("virtualMachineScaleSetExtensionResource",
publisher="string",
virtual_machine_scale_set_id="string",
type_handler_version="string",
type="string",
protected_settings_from_key_vault=azure.compute.VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs(
secret_url="string",
source_vault_id="string",
),
protected_settings="string",
auto_upgrade_minor_version=False,
provision_after_extensions=["string"],
name="string",
settings="string",
force_update_tag="string",
failure_suppression_enabled=False,
automatic_upgrade_enabled=False)
const virtualMachineScaleSetExtensionResource = new azure.compute.VirtualMachineScaleSetExtension("virtualMachineScaleSetExtensionResource", {
publisher: "string",
virtualMachineScaleSetId: "string",
typeHandlerVersion: "string",
type: "string",
protectedSettingsFromKeyVault: {
secretUrl: "string",
sourceVaultId: "string",
},
protectedSettings: "string",
autoUpgradeMinorVersion: false,
provisionAfterExtensions: ["string"],
name: "string",
settings: "string",
forceUpdateTag: "string",
failureSuppressionEnabled: false,
automaticUpgradeEnabled: false,
});
type: azure:compute:VirtualMachineScaleSetExtension
properties:
autoUpgradeMinorVersion: false
automaticUpgradeEnabled: false
failureSuppressionEnabled: false
forceUpdateTag: string
name: string
protectedSettings: string
protectedSettingsFromKeyVault:
secretUrl: string
sourceVaultId: string
provisionAfterExtensions:
- string
publisher: string
settings: string
type: string
typeHandlerVersion: string
virtualMachineScaleSetId: string
VirtualMachineScaleSetExtension Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The VirtualMachineScaleSetExtension resource accepts the following input properties:
- Publisher string
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- Type string
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- Type
Handler stringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- Virtual
Machine stringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.- Auto
Upgrade boolMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - Automatic
Upgrade boolEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- Failure
Suppression boolEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- Force
Update stringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- Name string
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- Protected
Settings string A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- Protected
Settings VirtualFrom Key Vault Machine Scale Set Extension Protected Settings From Key Vault A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- Provision
After List<string>Extensions - An ordered list of Extension names which this should be provisioned after.
- Settings string
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
- Publisher string
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- Type string
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- Type
Handler stringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- Virtual
Machine stringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.- Auto
Upgrade boolMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - Automatic
Upgrade boolEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- Failure
Suppression boolEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- Force
Update stringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- Name string
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- Protected
Settings string A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- Protected
Settings VirtualFrom Key Vault Machine Scale Set Extension Protected Settings From Key Vault Args A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- Provision
After []stringExtensions - An ordered list of Extension names which this should be provisioned after.
- Settings string
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
- publisher String
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- type String
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- type
Handler StringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- virtual
Machine StringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.- auto
Upgrade BooleanMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - automatic
Upgrade BooleanEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- failure
Suppression BooleanEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- force
Update StringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- name String
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- protected
Settings String A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- protected
Settings VirtualFrom Key Vault Machine Scale Set Extension Protected Settings From Key Vault A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- provision
After List<String>Extensions - An ordered list of Extension names which this should be provisioned after.
- settings String
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
- publisher string
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- type string
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- type
Handler stringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- virtual
Machine stringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.- auto
Upgrade booleanMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - automatic
Upgrade booleanEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- failure
Suppression booleanEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- force
Update stringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- name string
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- protected
Settings string A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- protected
Settings VirtualFrom Key Vault Machine Scale Set Extension Protected Settings From Key Vault A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- provision
After string[]Extensions - An ordered list of Extension names which this should be provisioned after.
- settings string
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
- publisher str
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- type str
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- type_
handler_ strversion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- virtual_
machine_ strscale_ set_ id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.- auto_
upgrade_ boolminor_ version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - automatic_
upgrade_ boolenabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- failure_
suppression_ boolenabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- force_
update_ strtag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- name str
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- protected_
settings str A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- protected_
settings_ Virtualfrom_ key_ vault Machine Scale Set Extension Protected Settings From Key Vault Args A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- provision_
after_ Sequence[str]extensions - An ordered list of Extension names which this should be provisioned after.
- settings str
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
- publisher String
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- type String
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- type
Handler StringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- virtual
Machine StringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.- auto
Upgrade BooleanMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - automatic
Upgrade BooleanEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- failure
Suppression BooleanEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- force
Update StringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- name String
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- protected
Settings String A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- protected
Settings Property MapFrom Key Vault A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- provision
After List<String>Extensions - An ordered list of Extension names which this should be provisioned after.
- settings String
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
Outputs
All input properties are implicitly available as output properties. Additionally, the VirtualMachineScaleSetExtension resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing VirtualMachineScaleSetExtension Resource
Get an existing VirtualMachineScaleSetExtension resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: VirtualMachineScaleSetExtensionState, opts?: CustomResourceOptions): VirtualMachineScaleSetExtension
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
auto_upgrade_minor_version: Optional[bool] = None,
automatic_upgrade_enabled: Optional[bool] = None,
failure_suppression_enabled: Optional[bool] = None,
force_update_tag: Optional[str] = None,
name: Optional[str] = None,
protected_settings: Optional[str] = None,
protected_settings_from_key_vault: Optional[VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs] = None,
provision_after_extensions: Optional[Sequence[str]] = None,
publisher: Optional[str] = None,
settings: Optional[str] = None,
type: Optional[str] = None,
type_handler_version: Optional[str] = None,
virtual_machine_scale_set_id: Optional[str] = None) -> VirtualMachineScaleSetExtension
func GetVirtualMachineScaleSetExtension(ctx *Context, name string, id IDInput, state *VirtualMachineScaleSetExtensionState, opts ...ResourceOption) (*VirtualMachineScaleSetExtension, error)
public static VirtualMachineScaleSetExtension Get(string name, Input<string> id, VirtualMachineScaleSetExtensionState? state, CustomResourceOptions? opts = null)
public static VirtualMachineScaleSetExtension get(String name, Output<String> id, VirtualMachineScaleSetExtensionState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Auto
Upgrade boolMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - Automatic
Upgrade boolEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- Failure
Suppression boolEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- Force
Update stringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- Name string
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- Protected
Settings string A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- Protected
Settings VirtualFrom Key Vault Machine Scale Set Extension Protected Settings From Key Vault A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- Provision
After List<string>Extensions - An ordered list of Extension names which this should be provisioned after.
- Publisher string
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- Settings string
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- Type string
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- Type
Handler stringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- Virtual
Machine stringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.
- Auto
Upgrade boolMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - Automatic
Upgrade boolEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- Failure
Suppression boolEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- Force
Update stringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- Name string
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- Protected
Settings string A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- Protected
Settings VirtualFrom Key Vault Machine Scale Set Extension Protected Settings From Key Vault Args A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- Provision
After []stringExtensions - An ordered list of Extension names which this should be provisioned after.
- Publisher string
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- Settings string
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- Type string
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- Type
Handler stringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- Virtual
Machine stringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.
- auto
Upgrade BooleanMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - automatic
Upgrade BooleanEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- failure
Suppression BooleanEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- force
Update StringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- name String
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- protected
Settings String A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- protected
Settings VirtualFrom Key Vault Machine Scale Set Extension Protected Settings From Key Vault A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- provision
After List<String>Extensions - An ordered list of Extension names which this should be provisioned after.
- publisher String
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- settings String
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- type String
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- type
Handler StringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- virtual
Machine StringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.
- auto
Upgrade booleanMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - automatic
Upgrade booleanEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- failure
Suppression booleanEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- force
Update stringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- name string
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- protected
Settings string A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- protected
Settings VirtualFrom Key Vault Machine Scale Set Extension Protected Settings From Key Vault A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- provision
After string[]Extensions - An ordered list of Extension names which this should be provisioned after.
- publisher string
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- settings string
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- type string
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- type
Handler stringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- virtual
Machine stringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.
- auto_
upgrade_ boolminor_ version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - automatic_
upgrade_ boolenabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- failure_
suppression_ boolenabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- force_
update_ strtag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- name str
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- protected_
settings str A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- protected_
settings_ Virtualfrom_ key_ vault Machine Scale Set Extension Protected Settings From Key Vault Args A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- provision_
after_ Sequence[str]extensions - An ordered list of Extension names which this should be provisioned after.
- publisher str
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- settings str
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- type str
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- type_
handler_ strversion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- virtual_
machine_ strscale_ set_ id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.
- auto
Upgrade BooleanMinor Version - Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to
true
. - automatic
Upgrade BooleanEnabled - Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
- failure
Suppression BooleanEnabled Should failures from the extension be suppressed? Possible values are
true
orfalse
. Defaults tofalse
.NOTE: Operational failures such as not connecting to the VM will not be suppressed regardless of the
failure_suppression_enabled
value.- force
Update StringTag - A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
- name String
- The name for the Virtual Machine Scale Set Extension. Changing this forces a new resource to be created.
- protected
Settings String A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
NOTE: Keys within the
protected_settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- protected
Settings Property MapFrom Key Vault A
protected_settings_from_key_vault
block as defined below.Note:
protected_settings_from_key_vault
cannot be used withprotected_settings
- provision
After List<String>Extensions - An ordered list of Extension names which this should be provisioned after.
- publisher String
- Specifies the Publisher of the Extension. Changing this forces a new resource to be created.
- settings String
A JSON String which specifies Settings for the Extension.
NOTE: Keys within the
settings
block are notoriously case-sensitive, where the casing required (e.g. TitleCase vs snakeCase) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.- type String
- Specifies the Type of the Extension. Changing this forces a new resource to be created.
- type
Handler StringVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
Note: The
Publisher
andType
of Virtual Machine Scale Set Extensions can be found using the Azure CLI, via:az vmss extension image list --location westus -o table
- virtual
Machine StringScale Set Id The ID of the Virtual Machine Scale Set. Changing this forces a new resource to be created.
NOTE: This should be the ID from the
azure.compute.LinuxVirtualMachineScaleSet
orazure.compute.WindowsVirtualMachineScaleSet
resource - when using the olderazure.compute.ScaleSet
resource extensions should instead be defined inline.
Supporting Types
VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault, VirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultArgs
- Secret
Url string - The URL to the Key Vault Secret which stores the protected settings.
- Source
Vault stringId - The ID of the source Key Vault.
- Secret
Url string - The URL to the Key Vault Secret which stores the protected settings.
- Source
Vault stringId - The ID of the source Key Vault.
- secret
Url String - The URL to the Key Vault Secret which stores the protected settings.
- source
Vault StringId - The ID of the source Key Vault.
- secret
Url string - The URL to the Key Vault Secret which stores the protected settings.
- source
Vault stringId - The ID of the source Key Vault.
- secret_
url str - The URL to the Key Vault Secret which stores the protected settings.
- source_
vault_ strid - The ID of the source Key Vault.
- secret
Url String - The URL to the Key Vault Secret which stores the protected settings.
- source
Vault StringId - The ID of the source Key Vault.
Import
Virtual Machine Scale Set Extensions can be imported using the resource id
, e.g.
$ pulumi import azure:compute/virtualMachineScaleSetExtension:VirtualMachineScaleSetExtension test /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Compute/virtualMachineScaleSets/scaleSet1/extensions/extension1
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
azurerm
Terraform Provider.