次の方法で共有


PowerShell を使用して Azure 仮想マシン スケール セットで OS イメージをアップグレードするためのメンテナンス コントロール

適用対象: ✔️ 均一スケール セット

メンテナンス コントロールを使用すると、ゲスト OS イメージの自動アップグレードを仮想マシン スケール セットに適用するタイミングを決定できます。 このトピックでは、メンテナンス コントロール用の Azure PowerShell オプションについて説明します。 メンテナンス コントロールの使用方法の詳細については、「Azure 仮想マシン スケール セットのメンテナンス コントロール」を参照してください。

PowerShell モジュールを有効にする

PowerShellGet が最新の状態であることを確認します。

Install-Module -Name PowerShellGet -Repository PSGallery -Force	

Az.Maintenance PowerShell モジュールをインストールします。

Install-Module -Name Az.Maintenance

ローカルにインストールする場合は、管理者として PowerShell プロンプトを開いてください。

信頼されていないリポジトリからインストールするかどうかを確認するメッセージが表示される場合もあります。 モジュールをインストールするには、Y を入力するか、 [すべてはい] を選択します。

Azure アカウントに接続する

Connect-AzAccount および Set-AzAccount を使用して、目的の Azure アカウントに接続します。

Connect-AzAccount
Set-AzContext 00a000aa-0a00-0a0a-00aa-a00a000aaa00

$RGName="myMaintenanceRG"
$MaintenanceConfig="myMaintenanceConfig"
$location="eastus2"
$vmss="myMaintenanceVMSS"

メンテナンス構成を作成する

構成のコンテナーとして、リソースグループを作成します。 この例では、myMaintenanceRG という名前のリソース グループが、eastus2 に作成されます。 使用するリソース グループが既にある場合は、この部分をスキップできます。 この後の例では、リソース グループ名を実際の名前に置き換えてください。

New-AzResourceGroup `
   -Location $location `
   -Name $RGName

New-AzMaintenanceConfiguration を使用して、メンテナンス構成を作成します。 この例では、OS イメージを対象とした myConfig という名前のメンテナンス構成を作成します。

$config = New-AzMaintenanceConfiguration `
   -ResourceGroup $RGName `
   -Name $MaintenanceConfig `
   -MaintenanceScope OSImage `
   -Location $location `
   -StartDateTime "2020-10-01 00:00" `
   -TimeZone "Pacific Standard Time" `
   -Duration "05:00" `
   -RecurEvery "Day"

重要

メンテナンスの期間は、5 時間以上である必要があります。 メンテナンスの繰り返しDay に設定する必要があります。

-MaintenanceScope OSImage を使用すると、そのメンテナンス構成がゲスト OS に対する更新をコントロールするために確実に使用されているかを確認できます。

同じ名前の構成を別の場所に作成しようとすると、エラーが発生します。 構成名は、リソース グループに対して一意である必要があります。

Get-AzMaintenanceConfiguration を使用して、使用可能なメンテナンス構成に対してクエリを実行できます。

Get-AzMaintenanceConfiguration | Format-Table -Property Name,Id

仮想マシン スケール セットをメンテナンス構成に関連付ける

仮想マシン スケール セットは、メンテナンス構成のリージョンとサブスクリプションに関係なく、任意のメンテナンス構成に関連付けることができます。 メンテナンス構成にオプトインすると、スケール セットに対する新しい OS イメージの更新が、次に実行可能なメンテナンス期間に自動的にスケジュールされます。

New-AzConfigurationAssignment を使用して、仮想マシン スケール セットをメンテナンス構成に関連付けます。

New-AzConfigurationAssignment `
   -ResourceGroupName $RGName `
   -Location $location `
   -ResourceName $vmss `
   -ResourceType VirtualMachineScaleSets `
   -ProviderName Microsoft.Compute `
   -ConfigurationAssignmentName $config.Name`
   -MaintenanceConfigurationId $config.Id

OS の自動アップグレードを有効にする

メンテナンス コントロールを使用する仮想マシン スケール セットごとに、OS の自動アップグレードを有効にすることができます。 仮想マシン スケール セットでの OS の自動アップグレードの有効化については、「Azure 仮想マシン スケール セットによる OS イメージの自動アップグレード」を参照してください。

次のステップ