Set-AzVmssLifecycleHooksProfile

將生命週期掛鉤附加到虛擬機器縮放集(VMSS)設定或即時 VMSS 物件上。

語法

Default (預設值)

Set-AzVmssLifecycleHooksProfile
    -VirtualMachineScaleSet <PSVirtualMachineScaleSet>
    -LifecycleHook <LifecycleHook[]>
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Set-AzVmssLifecycleHooksProfile 指令檔將生命週期掛鉤附加到 VMSS 設定物件(PSVirtualMachineScaleSet),並回傳更新後的物件。 這遵循標準的 Az.Compute 建構器慣例(與 Set-AzVmssOsProfile 同,Set-AzVmssStorageProfile):它會變異 VMSS 設定物件並回傳它。

更新後的物件必須傳給 New-AzVmss(用於新擴展集)或 Update-AzVmss(針對現有擴展集),才能將變更持續存在於 Azure。

範例

範例 1:將生命週期鉤子附加到新的 VMSS 配置上

$hook   = New-AzVmssLifecycleHookConfig -Type 'UpgradeAutoOSScheduling' -WaitDuration 'PT8H'
$config = New-AzVmssConfig -Location 'eastus' -SkuCapacity 2
$config = Set-AzVmssLifecycleHooksProfile -VirtualMachineScaleSet $config -LifecycleHook $hook
New-AzVmss -ResourceGroupName 'myRg' -VMScaleSetName 'myVmss' -VirtualMachineScaleSet $config

此範例建立一個新的 VMSS 並附加生命週期鉤子。

範例 2:為現有 VMSS 新增生命週期鉤子

$vmss     = Get-AzVmss -ResourceGroupName 'myRg' -VMScaleSetName 'myVmss'
$existing = if ($vmss.LifecycleHooksProfile) { $vmss.LifecycleHooksProfile.LifecycleHooks } else { @() }
$batch    = New-AzVmssLifecycleHookConfig -Type 'UpgradeAutoOSRollingBatchStarting' -WaitDuration 'PT30M'
$vmss     = Set-AzVmssLifecycleHooksProfile -VirtualMachineScaleSet $vmss -LifecycleHook ($existing + $batch)
Update-AzVmss -ResourceGroupName 'myRg' -VMScaleSetName 'myVmss' -VirtualMachineScaleSet $vmss

此範例為現有 VMSS 新增第二個生命週期鉤子,保留現有鉤子。

範例三:使用管線連接掛鉤

$hook = New-AzVmssLifecycleHookConfig -Type 'UpgradeAutoOSScheduling' -WaitDuration 'PT8H'
New-AzVmssConfig -Location 'eastus' -SkuCapacity 2 | Set-AzVmssLifecycleHooksProfile -LifecycleHook $hook

此範例利用管線將生命週期鉤子附加到 VMSS 配置。

參數

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False
別名:參見

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-DefaultProfile

用於與 Azure 通訊的憑證、帳號、租戶和訂閱。

參數屬性

類型:IAzureContextContainer
預設值:None
支援萬用字元:False
不要顯示:False
別名:AzContext, AzureRmContext, AzureCredential

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-LifecycleHook

一個或多個生命週期鉤子物件,可附加到 VMSS。 使用 'New-AzVmssLifecycleHookConfig' 來建立掛鉤物件。 替換 VMSS 設定物件上現有的生命週期掛鉤。

參數屬性

類型:

LifecycleHook[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:1
必要:True
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-VirtualMachineScaleSet

VMSS 配置物件(PSVirtualMachineScaleSet)需更新。 可以是來自 'New-AzVmssConfig' 的記憶體設定,或是來自 'Get-AzVmss' 的 live VMSS 物件。

參數屬性

類型:PSVirtualMachineScaleSet
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:0
必要:True
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 指令未執行。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False
別名:威斯康辛

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 cmdlet 支援常見參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters

輸入

PSVirtualMachineScaleSet

LifecycleHook

輸出

PSVirtualMachineScaleSet