Partilhar via


Add-AzVmssExtension

Adiciona uma extensão ao VMSS.

Sintaxe

Default (Predefinição)

Add-AzVmssExtension
    [-VirtualMachineScaleSet] <PSVirtualMachineScaleSet>
    [[-Name] <String>]
    [[-Publisher] <String>]
    [[-Type] <String>]
    [[-TypeHandlerVersion] <String>]
    [[-AutoUpgradeMinorVersion] <Boolean>]
    [[-Setting] <Object>]
    [[-ProtectedSetting] <Object>]
    [-EnableAutomaticUpgrade <Boolean>]
    [-ForceUpdateTag <String>]
    [-ProvisionAfterExtension <String[]>]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

O cmdlet Add-AzVmssExtension adiciona uma extensão ao VMSS (Virtual Machine Scale set).

Exemplos

Exemplo 1: Adicionar uma extensão ao VMSS

Add-AzVmssExtension -VirtualMachineScaleSet $VMSS -Name $ExtName -Publisher $Publisher -Type $ExtType -TypeHandlerVersion $ExtVer -AutoUpgradeMinorVersion $True

Este comando adiciona uma extensão ao VMSS.

Exemplo 2: Adicionar uma extensão ao VMSS com configurações e configurações protegidas

$Settings = @{"fileUris" = "[]"; "commandToExecute" = ""};
$ProtectedSettings = @{"storageAccountName" = $stoname; "storageAccountKey" = $stokey};

Add-AzVmssExtension -VirtualMachineScaleSet $vmss -Name $vmssExtensionName -Publisher $vmssPublisher  `
  -Type $vmssExtensionType -TypeHandlerVersion $ExtVer -AutoUpgradeMinorVersion $True  `
  -Setting $Settings -ProtectedSetting $ProtectedSettings

Exemplo 3: Adicionar uma extensão ao VMSS com configurações e configurações protegidas

$BatchFile = "runbook.sh"
$ResourceGroupName = "HelloRG"
$VMScaleSetName = "HelloVmSS"
$TypeHandlerVersion = 2.1

#Best Practice for secured parameters.
$protectedSettings = @{
"managedIdentity" = @{ "clientId" = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"};
}

$publicSettings = @{
"fileUris"= (,"https://storage.blob.core.windows.net/itfiles/$($BatchFile)");
"commandToExecute"= "sh $($BatchFile)"
}

# Get information about the scale set
$vmss = Get-AzVmss `
            -ResourceGroupName $ResourceGroupName `
            -VMScaleSetName $VMScaleSetName

Add-AzVmssExtension -VirtualMachineScaleSet $vmss `
    -Name "CustomScript" `
    -Publisher "Microsoft.Azure.Extensions" `
    -Type "CustomScript" `
    -TypeHandlerVersion $TypeHandlerVersion `
    -AutoUpgradeMinorVersion $true `
    -Setting $publicSettings `
    -ProtectedSetting $protectedSettings

Update-AzVmss `
    -ResourceGroupName $ResourceGroupName `
    -Name $VMScaleSetName `
    -VirtualMachineScaleSet $vmss

Este comando adiciona uma extensão ao VMSS com um script bash de exemplo em um armazenamento de blob, especifique a url do armazenamento de blob e o comando executável em configurações e acesso de segurança em configurações protegidas.

Parâmetros

-AutoUpgradeMinorVersion

Indica se a versão da extensão deve ser atualizada automaticamente para uma versão secundária mais recente.

Propriedades dos parâmetros

Tipo:

Nullable<T>[Boolean]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:5
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Confirm

Solicita confirmação antes de executar o cmdlet.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:Cf.

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para comunicação com o azure.

Propriedades dos parâmetros

Tipo:IAzureContextContainer
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:AzContext, AzureRmContext, AzureCredential

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-EnableAutomaticUpgrade

Indica se a extensão deve ser atualizada automaticamente pela plataforma se houver uma versão mais recente da extensão disponível.

Propriedades dos parâmetros

Tipo:

Nullable<T>[Boolean]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-ForceUpdateTag

Se um valor for fornecido e for diferente do valor anterior, o manipulador de extensão será forçado a atualizar mesmo que a configuração da extensão não tenha sido alterada.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Name

Especifica o nome da extensão adicionada por esse cmdlet.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:1
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-ProtectedSetting

Especifica a configuração privada para a extensão, como uma cadeia de caracteres. Este cmdlet criptografa a configuração privada.

Propriedades dos parâmetros

Tipo:Object
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:7
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-ProvisionAfterExtension

Coleção de nomes de extensão após a qual essa extensão precisa ser provisionada.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Publisher

Especifica o nome do editor de extensão. O editor fornece um nome quando o editor registra uma extensão. Isso pode usar o cmdlet Get-AzVMImagePublisher para obter o editor.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:2
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Setting

Especifica a configuração pública, como uma cadeia de caracteres, para a extensão. Este cmdlet não criptografa a configuração pública.

Propriedades dos parâmetros

Tipo:Object
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:6
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Type

Especifica o tipo de extensão. Você pode usar o cmdlet Get-AzVMExtensionImageType para obter o tipo de extensão.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:3
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-TypeHandlerVersion

Especifica a versão da extensão a ser usada para essa máquina virtual. Você pode usar o cmdlet Get-AzVMExtensionImage para obter a versão da extensão.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:4
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-VirtualMachineScaleSet

Especifique o objeto VMSS. Você pode usar o New-AzVmssConfig para criar o objeto.

Propriedades dos parâmetros

Tipo:PSVirtualMachineScaleSet
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:0
Obrigatório:True
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:Wi

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

PSVirtualMachineScaleSet

String

Nullable<T>

Object

Saídas

PSVirtualMachineScaleSet