PowerShell เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต Azure VM-เด•เตพ เดชเดฐเดฟเดทเตเด•เตเด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดชเดตเตผเดทเต†เตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดŽเดžเตเดšเดฟเดจเต€เดฏเตผเดฎเดพเดฐเตเด‚ เดเดŸเดฟ เด…เดกเตเดฎเดฟเดจเดฟเดธเตเดŸเตเดฐเต‡เดฑเตเดฑเตผเดฎเดพเดฐเตเด‚ เด“เตบ-เดชเตเดฐเดฟเดฎเตˆเดธเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เด•เตเดฒเต—เดกเต เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเดฑเตเด•เดณเดฟเดฒเตเด‚, เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเต เด…เดธเตเดฏเต‚เดฑเดฟเดจเตŠเดชเตเดชเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดตเดฟเดตเดฟเดง เดœเต‹เดฒเดฟเด•เตพ เดตเดฟเดœเดฏเด•เดฐเดฎเดพเดฏเดฟ เด“เดŸเตเดŸเต‹เดฎเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดšเดฟเดฒ เดธเดจเตเดฆเตผเดญเด™เตเด™เดณเดฟเตฝ, เดชเดตเตผเดทเต†เตฝ เดตเดดเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต เด…เดธเต‚เตผ เดชเต‹เตผเดŸเตเดŸเดฒเดฟเดฒเต‚เดŸเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เดตเดณเดฐเต† เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดตเตเด‚ เดตเต‡เด—เดคเดฏเตเดฎเดพเดฃเต. เด•เตเดฐเต‹เดธเต-เดชเตเดฒเดพเดฑเตเดฑเตเดซเต‹เด‚ เดธเตเดตเดญเดพเดตเดคเตเดคเดฟเดจเต เดจเดจเตเดฆเดฟ, เดชเดตเตผเดทเต†เตฝ เดเดคเต เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚.

เดจเดฟเด™เตเด™เตพ เด‰เดฌเตเดฃเตเดŸเต, เดฑเต†เดกเต เดนเดพเดฑเตเดฑเต เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดตเดฟเตปเดกเต‹เดธเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เดณเตเดŸเต† เด•เตเดฒเต—เดกเต เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เดพเตป PowerShell เดจเดฟเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚. เดฎเตŠเดกเตเดฏเต‚เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดธเต‚เตผ เดชเดตเตผเดทเต†เตฝ, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเตเด•เดณเตเดŸเต† เดเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟเด•เตพ เดธเดœเตเดœเดฎเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚.

เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ, Azure เด•เตเดฒเต—เดกเดฟเตฝ เด’เดฐเต VM เดตเดฒเตเดชเตเดชเด‚ เดฎเดพเดฑเตเดฑเดพเตป เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเด™เตเด™เดจเต† PowerShell เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดฎเต†เดจเตเดจเตเด‚ เด…เดคเตเดชเต‹เดฒเต† เด’เดฐเต VM เด‰เด‚ เด…เดคเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเตเด•เดณเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเดจเตเด‚ เดžเด™เตเด™เตพ เดจเต‹เด•เตเด•เตเด‚.

PowerShell เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต Azure VM-เด•เตพ เดชเดฐเดฟเดทเตเด•เตเด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดชเตเดฐเดงเดพเดจเดชเตเดชเต†เดŸเตเดŸเดคเต! เดœเต‹เดฒเดฟเด•เตเด•เต เดคเดฏเตเดฏเดพเดฑเต†เดŸเตเด•เตเด•เดพเตป เดธเดพเดจเดฟเดฑเตเดฑเตˆเดธเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เตˆเด•เตพ เดคเตเดŸเดฏเตเด•เตเด•เดพเตป เดฎเดฑเด•เตเด•เดฐเตเดคเต:

  • เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดฎเตŠเดกเตเดฏเต‚เตพ เด†เดตเดถเตเดฏเดฎเดพเดฃเต เด…เดธเต‚เตผ เดชเดตเตผเดทเต†เตฝ เดฎเตŠเดกเตเดฏเต‚เตพ - เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด‡เดคเต PowerShell เด—เดพเดฒเดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเด‚ Install-Module Az.
  • เด•เดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดšเตเดšเต เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เตป เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เด…เดธเต‚เตผ เด•เตเดฒเต—เดกเดฟเตฝ เดจเดฟเด™เตเด™เตพ เดชเตเดฐเดพเดฎเดพเดฃเต€เด•เดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต Connect-AzAccount.

เด†เดฆเตเดฏเด‚, เดจเดฎเตเด•เตเด•เต เด’เดฐเต Azure VM เดตเดฒเตเดชเตเดชเด‚ เดฎเดพเดฑเตเดฑเตเดจเตเดจ เด’เดฐเต เดธเตโ€Œเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดพเด‚. เดจเดฎเตเด•เตเด•เต VS เด•เต‹เดกเต เดคเตเดฑเดจเตเดจเต เด’เดฐเต เดชเตเดคเดฟเดฏ PowerShell เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดธเต‡เดตเต เดšเต†เดฏเตเดฏเดพเด‚ Resize-AzVirtualMachine.ps1 โ€” เด‰เดฆเดพเดนเดฐเดฃเด‚ เดชเตเดฐเต‹เด—เดฎเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดžเด™เตเด™เตพ เด…เดคเดฟเดฒเต‡เด•เตเด•เต เด•เต‹เดกเต เด•เดทเดฃเด™เตเด™เตพ เดšเต‡เตผเด•เตเด•เตเด‚.

เดฒเดญเตเดฏเดฎเดพเดฏ VM เดตเดฒเตเดชเตเดชเด™เตเด™เตพ เดžเด™เตเด™เตพ เด…เดญเตเดฏเตผเดคเตเดฅเดฟเด•เตเด•เตเดจเตเดจเต

เดจเดฟเด™เตเด™เตพ เดตเดฟเดŽเด‚ เดตเดฒเตเดชเตเดชเด‚ เดฎเดพเดฑเตเดฑเตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต, เด…เดธเต‚เตผ เด•เตเดฒเต—เดกเดฟเดฒเต† เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเตเด•เตพเด•เตเด•เต เดธเตเดตเต€เด•เดพเดฐเตเดฏเดฎเดพเดฏ เดตเดฒเตเดชเตเดชเด™เตเด™เตพ เดŽเดจเตเดคเดพเดฃเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด•เดฃเตเดŸเต†เดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เด•เดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต Get-AzVMSize.

เด…เดคเดฟเดจเดพเตฝ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเต devvm01 เดฑเดฟเดธเต‹เดดเตเดธเต เด—เตเดฐเต‚เดชเตเดชเดฟเตฝ เดจเดฟเดจเตเดจเต เดฆเต‡เดตเต เดธเดพเดงเตเดฏเดฎเดพเดฏ เดŽเดฒเตเดฒเดพ เดธเตเดตเต€เด•เดพเดฐเตเดฏเดฎเดพเดฏ เดตเดฒเตเดชเตเดชเด™เตเด™เดณเตเด‚ เดžเด™เตเด™เตพ เด…เดญเตเดฏเตผเดคเตเดฅเดฟเด•เตเด•เตเดจเตเดจเต:

Get-AzVMSize -ResourceGroupName dev -VMName devvm01

(เดฏเดฅเดพเตผเดคเตเดฅ เดชเตเดฐเดถเตเดจเด™เตเด™เดณเดฟเตฝ, เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เดชเด•เดฐเด‚ ResourceGroupName=dev ะธ VMName=devvm01 เดˆ เดชเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดจเดฟเด™เตเด™เตพ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเดตเดจเตเดคเด‚ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเด‚.)

เด•เดฎเดพเตปเดกเต เด‡เดคเตเดชเต‹เดฒเตŠเดจเตเดจเต เดคเดฟเดฐเดฟเด•เต† เดจเตฝเด•เตเด‚:

PowerShell เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต Azure VM-เด•เตพ เดชเดฐเดฟเดทเตเด•เตเด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดคเดจเตเดจเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเดพเดฏเดฟ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เดŽเดฒเตเดฒเดพ เดธเตˆเดธเต เด“เดชเตเดทเดจเตเด•เดณเตเด‚ เด‡เดตเดฏเดพเดฃเต.

เดจเดฎเตเด•เตเด•เต เด•เดพเดฑเดฟเดจเตเดฑเต† เดตเดฒเตเดชเตเดชเด‚ เดฎเดพเดฑเตเดฑเดพเด‚

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดžเด™เตเด™เตพ เด’เดฐเต เดชเตเดคเดฟเดฏ เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดตเดฒเตเดชเตเดชเด‚ เดฎเดพเดฑเตเดฑเตเด‚ Standard_B1ls - เดฎเตเด•เดณเดฟเดฒเตเดณเตเดณ เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เด…เดตเตป เด’เดจเตเดจเดพเด‚ เดธเตเดฅเดพเดจเดคเตเดคเดพเดฃเต. (เดฏเดฅเดพเตผเดคเตเดฅ เดœเต€เดตเดฟเดค เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เดณเดฟเตฝ, เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดตเดฒเตเดชเตเดชเด‚ เดจเดฟเด™เตเด™เตพ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเต.)

  1. เด†เดฆเตเดฏเด‚ เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• Get-AzVM เด’เดฐเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเดฟเตฝ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดจเดฎเตเดฎเตเดŸเต† เดตเดธเตเดคเตเดตเดฟเดจเต† (เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เตป) เด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดตเดฟเดตเดฐเด™เตเด™เตพ เดจเดฎเตเด•เตเด•เต เดฒเดญเดฟเด•เตเด•เตเด‚ $virtualMachine:
    $virtualMachine = Get-AzVM -ResourceGroupName dev -VMName devvm01
  2. เด…เดชเตเดชเต‹เตพ เดจเดฎเตเดฎเตพ เดˆ เดตเดธเตเดคเตเดตเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเตเดตเดคเตเดคเต เดŽเดŸเตเด•เตเด•เตเดจเตเดจเต .HardwareProfile.VmSize เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดชเตเดคเดฟเดฏ เดฎเต‚เดฒเตเดฏเด‚ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเด•:
    $virtualMachine.HardwareProfile.VmSize = "Standard_B1ls"
  3. เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เดตเดฟเดŽเด‚ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เด•เดฎเดพเตปเดกเต เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต - Update-AzVm:
    Update-AzVM -VM devvm01 -ResourceGroupName dev
  4. เดŽเดฒเตเดฒเดพเด‚ เดถเดฐเดฟเดฏเดพเดฏเดฟเดฐเตเดจเตเดจเตเดตเต†เดจเตเดจเต เดžเด™เตเด™เตพ เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเดจเตเดจเต - เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดžเด™เตเด™เดณเตเดŸเต† เดตเดธเตเดคเตเดตเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดตเดฟเดตเดฐเด™เตเด™เตพ เดžเด™เตเด™เตพ เดตเต€เดฃเตเดŸเตเด‚ เด…เดญเตเดฏเตผเดคเตเดฅเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เดจเต‹เด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต $virtualMachine.HardwareProfile:
    $virtualMachine = Get-AzVM -ResourceGroupName dev -VMName devvm01
    $virtualMachine.HardwareProfile

เด…เดตเดฟเดŸเต† เด•เดฃเตเดŸเดพเตฝ Standard_B1ls - เด…เดคเดฟเดจเตผเดคเตเดฅเด‚ เดŽเดฒเตเดฒเดพเด‚ เด•เตเดฐเดฎเดคเตเดคเดฟเดฒเดพเดฃเต, เด•เดพเดฑเดฟเดจเตเดฑเต† เดตเดฒเตเดชเตเดชเด‚ เดฎเดพเดฑเตเดฑเดฟ. เด’เดฐเต เด…เดฑเต‡ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต‡เดธเดฎเดฏเด‚ เดจเดฟเดฐเดตเดงเดฟ VM-เด•เดณเตเดŸเต† เดตเดฒเตเดชเตเดชเด‚ เดฎเดพเดฑเตเดฑเตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เต‚เดŸเตเดคเตฝ เดฎเตเดจเตเดจเต‹เดŸเตเดŸเต เดชเต‹เด•เดพเดจเตเด‚ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดตเดฟเดœเดฏเด‚ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚.

Azure-เตฝ เด’เดฐเต VM เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต?

เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดŽเดฒเตเดฒเดพเด‚ เดคเต‹เดจเตเดจเดฟเดฏเต‡เด•เตเด•เดพเดตเตเดจเตเดจเดคเตเดฐ เดฒเดณเดฟเดคเดตเตเด‚ เดฒเดณเดฟเดคเดตเตเดฎเดฒเตเดฒ. เดŽเดฒเตเดฒเดพเดคเตเดคเดฟเดจเตเดฎเตเดชเดฐเดฟ, เดˆ เดฎเต†เดทเต€เดจเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดจเดฟเดฐเดตเดงเดฟ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เด‰เตพเดชเตเดชเต†เดŸเต†:

  • เดฌเต‚เดŸเตเดŸเต เดกเดฏเด—เตเดจเต‹เดธเตเดฑเตเดฑเดฟเด•เตเดธเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเตเด•เตพ
  • เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด•เตพ
  • เดชเตŠเดคเต เดเดชเดฟ เดตเดฟเดฒเดพเดธเด™เตเด™เตพ
  • เด…เดคเดฟเดจเตเดฑเต† เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดธเต เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดธเดฟเดธเตเดฑเตเดฑเด‚ เดกเดฟเดธเตเด•เตเด‚ เดฌเตเดฒเต‹เดฌเตเด‚
  • เดกเดพเดฑเตเดฑ เดกเดฟเดธเตเด•เตเด•เตพ

เด…เดคเดฟเดจเดพเตฝ, เดžเด™เตเด™เตพ เด’เดฐเต เดซเด‚เด—เตเดทเตป เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต เด…เดคเดฟเดจเต† เดตเดฟเดณเดฟเด•เตเด•เตเด‚ Remove-AzrVirtualMachine - เด•เต‚เดŸเดพเดคเต† เด‡เดคเต Azure VM เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดฎเตเด•เดณเดฟเตฝ เดชเดฑเดžเตเดžเดตเดฏเต†เดฒเตเดฒเดพเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด‚.

เดžเด™เตเด™เตพ เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เดตเดดเดฟ เดชเต‹เดฏเดฟ เด†เดฆเตเดฏเด‚ เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฎเตเดฎเตเดŸเต† เด’เดฌเตเดœเด•เตเดฑเตเดฑเต (VM) เดจเต‡เดŸเตเด• Get-AzVm. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด…เดคเต เด’เดฐเต เด•เดพเตผ เด†เดฏเดฟเดฐเดฟเด•เตเด•เดŸเตเดŸเต† WINSRV19 เดฑเดฟเดธเต‹เดดเตเดธเต เด—เตเดฐเต‚เดชเตเดชเดฟเตฝ เดจเดฟเดจเตเดจเต MyTestVM-เด•เตพ.

เดˆ เด’เดฌเตโ€Œเดœเด•เตโ€Œเดฑเตเดฑเต เด…เดคเดฟเดจเตเดฑเต† เดŽเดฒเตเดฒเดพ เด—เตเดฃเด™เตเด™เดณเตเด‚ เดธเดนเดฟเดคเด‚ เด’เดฐเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเดฟเตฝ เดธเต‡เดตเต เดšเต†เดฏเตเดฏเดพเด‚ $vm:

$vm = Get-AzVm -Name WINSRV19 -ResourceGroupName MyTestVMs

เดฌเต‚เดŸเตเดŸเต เดกเดฏเด—เตเดจเต‹เดธเตเดฑเตเดฑเดฟเด•เต เดซเดฏเดฒเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เด…เดธเตเดฏเต‚เดฑเดฟเตฝ เด’เดฐเต เดตเดฟเดŽเด‚ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดฌเต‚เดŸเตเดŸเต เดกเดฏเด—เตโ€Œเดจเต‹เดธเตเดฑเตเดฑเดฟเด•เตโ€Œเดธเต (เดฌเต‚เดŸเตเดŸเต เดกเดฏเด—เตโ€Œเดจเต‹เดธเตเดฑเตเดฑเดฟเด•เตโ€Œเดธเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ) เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดพเตป เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต‹เดŸเต เด†เดตเดถเตเดฏเดชเตเดชเต†เดŸเตเด‚, เด…เดคเตเดตเดดเดฟ เดฌเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเตฝ เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดชเตเดฐเดถเตโ€Œเดจเดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเดพเดฏเดฟ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดคเดฟเดฐเดฟเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, VM เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดชเตเดชเต†เดŸเตเดฎเตเดชเต‹เตพ, เดˆ เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เด…เดคเดฟเดจเตเดฑเต† เด‰เดฆเตเดฆเต‡เดถเตเดฏเดฐเดนเดฟเดคเดฎเดพเดฏ เด…เดธเตเดคเดฟเดคเตเดตเด‚ เดคเตเดŸเดฐเดพเตป เด…เดตเดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจเต. เดˆ เดธเดพเดนเดšเดฐเตเดฏเด‚ เดถเดฐเดฟเดฏเดพเด•เตเด•เดพเด‚.

  1. เด†เดฆเตเดฏเด‚, เดˆ เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดเดคเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด…เด•เตเด•เต—เดฃเตเดŸเดฟเดฒเดพเดฃเต†เดจเตเดจเต เดจเดฎเตเด•เตเด•เต เด•เดฃเตเดŸเต†เดคเตเดคเดพเด‚ - เด‡เดคเดฟเดจเดพเดฏเดฟ เดจเดฎเตเด•เตเด•เต เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เด•เดฃเตเดŸเต†เดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต storageUri เดตเดธเตเดคเตเดตเดฟเดจเตเดฑเต† เด•เตเดŸเดฒเดฟเตฝ DiagnosticsProfile เดžเด™เตเด™เดณเตเดŸเต† เดตเดฟ.เดŽเด‚. เด‡เดคเดฟเดจเดพเดฏเดฟ เดžเดพเตป เดˆ เดชเดคเดฟเดตเต เดชเดฆเดชเตเดฐเดฏเต‹เด—เด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต:
    $diagSa = [regex]::match($vm.DiagnosticsProfile.bootDiagnostics.storageUri, '^http[s]?://(.+?)\.').groups[1].value
  2. เด‡เดชเตเดชเต‹เตพ เดจเดฟเด™เตเด™เตพ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เด•เดฃเตเดŸเต†เดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด‡เดคเดฟเดจเดพเดฏเดฟ เดจเดฟเด™เตเด™เตพ เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดตเดฟเดŽเด‚ เดเดกเดฟ เดจเต‡เดŸเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต Get-AzResource:
    
    if ($vm.Name.Length -gt 9) {
        $i = 9
    } else {
        $i = $vm.Name.Length - 1
    }
     
    $azResourceParams = @{
        'ResourceName' = WINSRV
        'ResourceType' = 'Microsoft.Compute/virtualMachines'
        'ResourceGroupName' = MyTestVMs
    }
     
    $vmResource = Get-AzResource @azResourceParams
    $vmId = $vmResource.Properties.VmId
    $diagContainerName = ('bootdiagnostics-{0}-{1}' -f $vm.Name.ToLower().Substring(0, $i), $vmId)
    
  3. เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจ เดฑเดฟเดธเต‹เดดเตเดธเต เด—เตเดฐเต‚เดชเตเดชเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เดจเดฎเตเด•เตเด•เต เดฒเดญเดฟเด•เตเด•เตเด‚:
    $diagSaRg = (Get-AzStorageAccount | where { $_.StorageAccountName -eq $diagSa }).ResourceGroupName
  4. เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเตป เด†เดตเดถเตเดฏเดฎเดพเดฏเดคเต†เดฒเตเดฒเดพเด‚ เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เดณเตเดŸเต† เดชเด•เตเด•เดฒเตเดฃเตเดŸเต Remove-AzStorageContainer:
    $saParams = @{
        'ResourceGroupName' = $diagSaRg
        'Name' = $diagSa
    }
     
    Get-AzStorageAccount @saParams | Get-AzStorageContainer | where { $_.Name-eq $diagContainerName } | Remove-AzStorageContainer -Force

เดตเดฟเดŽเด‚ เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เด‡เดชเตเดชเต‹เตพ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เตป เดคเดจเตเดจเต† เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเด‚, เด•เดพเดฐเดฃเด‚ เดžเด™เตเด™เตพ เด‡เดคเดฟเดจเด•เด‚ เด’เดฐเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต $vm เด…เดจเตเดฌเดจเตเดง เดตเดธเตเดคเตเดตเดฟเดจเต. เดถเดฐเดฟ, เดจเดฎเตเด•เตเด•เต เด•เดฎเดพเตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเด‚ Remove-AzVm:

$null = $vm | Remove-AzVM -Force

เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด‚ เดชเตŠเดคเต เดเดชเดฟ เดตเดฟเดฒเดพเดธเดตเตเด‚ เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดžเด™เตเด™เดณเตเดŸเต† VM-เดจเต เด‡เดชเตเดชเต‹เดดเตเด‚ เด’เดฐเต (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเดฐเดตเดงเดฟ) เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเตเด•เตพ (NIC-เด•เตพ) เด‰เดฃเตเดŸเต - เด…เดต เด…เดจเดพเดตเดถเตเดฏเดฎเดพเดฏเดฟ เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเดพเตป, เดจเดฎเตเด•เตเด•เต เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟเดฏเดฟเดฒเต‚เดŸเต† เดชเต‹เด•เดพเด‚ NetworkInterfaces เดžเด™เตเด™เดณเตเดŸเต† VM เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเต, เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต NIC เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด• Remove-AzNetworkInterface. เด’เดจเตเดจเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เดจเตเดฑเตผเดซเต‡เดธเต เด‰เดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดžเด™เตเด™เตพ เด’เดฐเต เดฒเต‚เดชเตเดชเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เด…เดคเต‡ เดธเดฎเดฏเด‚, เด“เดฐเต‹ เดŽเตปเดเดธเดฟเด•เตเด•เตเด‚ เดžเด™เตเด™เตพ เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด‚ IpConfiguration เด‡เดจเตเดฑเตผเดซเต‡เดธเดฟเดจเต เด’เดฐเต เดชเตŠเดคเต IP เดตเดฟเดฒเดพเดธเด‚ เด‰เดฃเตเดŸเต‹ เดŽเดจเตเดจเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เดพเตป. เด’เดฐเต†เดฃเตเดฃเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดพเตฝ, เดžเด™เตเด™เตพ เด…เดคเต เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเตเด‚ Remove-AzPublicIpAddress.

เด…เดคเตเดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เด’เดฐเต เด•เต‹เดกเดฟเดจเตเดฑเต† เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‡เดคเดพ, เดžเด™เตเด™เตพ เดŽเดฒเตเดฒเดพ NIC-เด•เดณเตเด‚ เด’เดฐเต เดฒเต‚เดชเตเดชเดฟเดฒเต‚เดŸเต† เดจเต‹เด•เตเด•เตเด•เดฏเตเด‚ เด…เดต เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเตเด‚ เด’เดฐเต เดชเตŠเดคเต เดเดชเดฟ เด‰เดฃเตเดŸเต‹ เดŽเดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด‰เดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เดชเดพเดดเตเดธเต เดšเต†เดฏเตเดฏเตเด• PublicIpAddress, เดเดกเดฟ เดชเตเดฐเด•เดพเดฐเด‚ เด…เดจเตเดฌเดจเตเดง เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เด•เดฃเตเดŸเต†เดคเตเดคเดฟ เด…เดคเต เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•:


foreach($nicUri in $vm.NetworkProfile.NetworkInterfaces.Id) {
    $nic = Get-AzNetworkInterface -ResourceGroupName $vm.ResourceGroupName -Name $nicUri.Split('/')[-1]
    Remove-AzNetworkInterface -Name $nic.Name -ResourceGroupName $vm.ResourceGroupName -Force

    foreach($ipConfig in $nic.IpConfigurations) {
        if($ipConfig.PublicIpAddress -ne $null) {
            Remove-AzPublicIpAddress -ResourceGroupName $vm.ResourceGroupName -Name $ipConfig.PublicIpAddress.Id.Split('/')[-1] -Force
        }
    }
}

เดธเดฟเดธเตเดฑเตเดฑเด‚ เดกเดฟเดธเตเด•เต เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเตเดจเตเดจเต

OS เดกเดฟเดธเตเด•เต เด’เดฐเต เดฌเตเดฒเต‹เดฌเต เด†เดฃเต, เด…เดคเต เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเตป เด’เดฐเต เด•เดฎเดพเตปเดกเต เด‰เดฃเตเดŸเต Remove-AzStorageBlob - เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต, เด…เดคเดฟเดจเตเดฑเต† เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเดพเดฏ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดจเดฟเด™เตเด™เตพ เดธเดœเตเดœเดฎเดพเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเต, เดจเดฟเด™เตเด™เตพ เดธเดฟเดธเตเดฑเตเดฑเด‚ เดกเดฟเดธเตเด•เต เด…เดŸเด™เตเด™เตเดจเตเดจ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เดจเต‡เดŸเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เดคเตเดŸเตผเดจเตเดจเต เด…เดคเต เด…เดจเตเดฌเดจเตเดง เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด…เด•เตเด•เต—เดฃเตเดŸเดฟเดจเตŠเดชเตเดชเด‚ เดˆ เด•เดฎเดพเตปเดกเดฟเดฒเต‡เด•เตเด•เต เด•เตˆเดฎเดพเดฑเตเด•.

$osDiskUri = $vm.StorageProfile.OSDisk.Vhd.Uri
$osDiskContainerName = $osDiskUri.Split('/')[-2]
$osDiskStorageAcct = Get-AzStorageAccount | where { $_.StorageAccountName -eq $osDiskUri.Split('/')[2].Split('.')[0] }
$osDiskStorageAcct | Remove-AzStorageBlob -Container $osDiskContainerName -Blob $osDiskUri.Split('/')[-1]

เดธเดฟเดธเตเดฑเตเดฑเด‚ เดกเดฟเดธเตเด•เต เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดธเต เดฌเตเดฒเต‹เดฌเต เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เด‡เดคเดฟเดจเด•เด‚ เดŠเดนเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต†, เดˆ เดกเดฟเดธเตเด•เต เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดžเด™เตเด™เตพ เดŽเดŸเตเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต†, เด…เดตเดธเดพเดจเดคเตเดคเต† เดฌเตเดฒเดฌเต เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต status, เดกเดฟเดฒเต€เดฑเตเดฑเต เด•เดฎเดพเตปเดกเดฟเดฒเต‡เด•เตเด•เต เด…เดจเตเดฌเดจเตเดง เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ เด•เตˆเดฎเดพเดฑเตเด• Remove-AzStorageBlob:

$osDiskStorageAcct | Get-AzStorageBlob -Container $osDiskContainerName -Blob "$($vm.Name)*.status" | Remove-AzStorageBlob

เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เดžเด™เตเด™เตพ เดกเดพเดฑเตเดฑ เดกเดฟเดธเตเด•เตเด•เตพ เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดžเด™เตเด™เดณเตเดŸเต† VM-เตฝ เด…เดฑเตเดฑเดพเดšเตเดšเต เดšเต†เดฏเตเดค เดกเดพเดฑเตเดฑเดฏเตเดณเตเดณ เดกเดฟเดธเตเด•เตเด•เตพ เดคเตเดŸเตผเดจเตเดจเตเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚. เด…เดต เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดžเด™เตเด™เตพ เด…เดตเดฏเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด‚. เด†เดฆเตเดฏเด‚ เด…เดคเต เดชเดพเดดเตโ€Œเดธเต เดšเต†เดฏเตเดฏเดพเด‚ StorageProfile เดžเด™เตเด™เดณเตเดŸเต† เดตเดฟเดŽเด‚, เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เด•เดฃเตเดŸเต†เดคเตเดคเตเด• Uri. เดจเดฟเดฐเดตเดงเดฟ เดกเดฟเดธเตเด•เตเด•เตพ เด‰เดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด…เดคเดฟเดจเดจเตเดธเดฐเดฟเดšเตเดšเต เดžเด™เตเด™เตพ เด’เดฐเต เดธเตˆเด•เตเด•เดฟเตพ เดธเด‚เด˜เดŸเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต URI. เด“เดฐเต‹ เดฏเตเด†เตผเดเดฏเตเด•เตเด•เตเด‚, เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เด…เดจเตเดฌเดจเตเดง เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด…เด•เตเด•เต—เดฃเตเดŸเต เดžเด™เตเด™เตพ เด•เดฃเตเดŸเต†เดคเตเดคเตเด‚ Get-AzStorageAccount. เดคเตเดŸเตผเดจเตเดจเต เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดฌเตเดฒเต‹เดฌเต เดจเดพเดฎเด‚ เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตโ€Œเดฑเตเดฑเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดฏเตเด†เตผเด เดชเดพเดดเตโ€Œเดธเต เดšเต†เดฏเตโ€Œเดคเต เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด• เด•เดฎเดพเตปเดกเดฟเดฒเต‡เด•เตเด•เต เด•เตˆเดฎเดพเดฑเตเด• Remove-AzStorageBlob เด’เดฐเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด…เด•เตเด•เต—เดฃเตเดŸเดฟเดจเตŠเดชเตเดชเด‚. เด•เต‹เดกเดฟเตฝ เด‡เดคเต เด‡เด™เตเด™เดจเต†เดฏเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚:

if ($vm.DataDiskNames.Count -gt 0) {
    foreach ($uri in $vm.StorageProfile.DataDisks.Vhd.Uri) {
        $dataDiskStorageAcct = Get-AzStorageAccount -Name $uri.Split('/')[2].Split('.')[0]
        $dataDiskStorageAcct | Remove-AzStorageBlob -Container $uri.Split('/')[-2] -Blob $uri.Split('/')[-1]
    }
}

เด‡เดชเตเดชเต‹เตพ "เดžเด™เตเด™เตพ เดธเดจเตเดคเต‹เดทเด•เดฐเดฎเดพเดฏ เด…เดตเดธเดพเดจเดคเตเดคเดฟเดฒเต†เดคเตเดคเดฟ!" เด‡เดชเตเดชเต‹เตพ เดˆ เดŽเดฒเตเดฒเดพ เดถเด•เดฒเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ เด’เดฐเตŠเดฑเตเดฑ เดฎเตŠเดคเตเดคเดคเตเดคเดฟเตฝ เด•เต‚เดŸเตเดŸเดฟเดšเตเดšเต‡เตผเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดฆเดฏเดฏเตเดณเตเดณ เดŽเดดเตเดคเตเดคเตเด•เดพเดฐเดจเดพเดฏ เด†เดฆเด‚ เดฌเต†เตผเดŸเตเดฐเดพเด‚ เด‰เดชเดฏเต‹เด•เตเดคเดพเด•เตเด•เดณเต† เดชเดพเดคเดฟเดตเดดเดฟเดฏเดฟเตฝ เด•เดฃเตเดŸเตเดฎเตเดŸเตเดŸเตเด•เดฏเตเด‚ เด…เดคเต เดธเตเดตเดฏเด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดคเต. เด…เดตเดธเดพเดจ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด’เดฐเต เดฒเดฟเด™เตเด•เต เด‡เดตเดฟเดŸเต†เดฏเตเดฃเตเดŸเต Remove-AzrVirtualMachine.ps1:

โ†’ เดธเดพเดฎเต‚เดนเดฟเด•เด‚

Azure VM-เด•เดณเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเดฐเดฟเดถเตเดฐเดฎเดตเตเด‚ เดธเดฎเดฏเดตเตเด‚ เดชเดฃเดตเตเด‚ เดฒเดพเดญเดฟเด•เตเด•เดพเตป เดˆ เดชเตเดฐเดพเดฏเต‹เด—เดฟเด• เดจเตเดฑเตเด™เตเด™เตเด•เตพ เดธเดนเดพเดฏเด•เดฐเดฎเดพเดฃเต†เดจเตเดจเต เดžเดพเตป เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•