マシン構成の修復オプション

開始する前に、マシン構成の概要ページを参照することをお勧めします。

重要

Azure 仮想マシンには、マシン構成拡張機能が必要です。 すべてのマシンに対して大規模な拡張を展開するために、次のようなポリシー イニシアティブを割り当ててください: Deploy prerequisites to enable guest configuration policies on virtual machines

マシン構成パッケージを使って構成を行うには、Azure VM ゲスト構成拡張のバージョン 1.26.24 以降、または Arc エージェントのバージョン 1.10.0 以降が必要です。

AuditIfNotExists および DeployIfNotExists を使用するカスタム マシンの構成ポリシー定義は、一般公開 (GA) サポート状態です。

マシン構成で修復を管理する方法 (設定)

マシン構成では、マシン内で変更を配信する定義にポリシー結果 DeployIfNotExists が使用されます。 ポリシー割り当てのプロパティを設定して、評価で構成を自動的またはオンデマンドで配信する方法を制御します。

このドキュメントのビデオ チュートリアルを利用できます

マシン構成の割り当ての種類

ゲストの割り当ての作成時に使用できる割り当ての種類は 3 つあります。 このプロパティは、DeployIfNotExists をサポートするマシン構成定義のパラメーターとして使用できます。

assignmentType プロパティでは大文字と小文字が区別されます

割り当ての種類 動作
Audit マシンの状態は報告されますが、変更は行われません。
ApplyAndMonitor マシンに 1 回適用され、変更が監視されます。 構成がドリフトして NonCompliant になった場合は、修復がトリガーされない限り、自動的に修正されません。
ApplyAndAutoCorrect マシンに適用されます。 ドリフトした場合、マシン内のローカル サービスは次の評価で修正されます。

新しいポリシー割り当てが既存のマシンに割り当てられると、ゲストの割り当てが自動的に作成され、最初に構成の状態が監査されます。 監査では、修復が必要なマシンを決定するために使用できる情報が得られます。

オンデマンド修復 (ApplyAndMonitor)

既定では、マシン構成の割り当てはオンデマンド修復シナリオで操作します。 構成が適用され、その後、準拠からドリフトすることが許可されます。

ゲスト割り当てのコンプライアンス状態は、次のどちらでもない限り、Compliant です。

  • 構成の適用中にエラーが発生する
  • 次の評価中にマシンが目的の状態でなくなった場合

これらの条件のいずれかが満たされると、エージェントによって状態が NonCompliant として報告され、自動的に修復されません。

この動作を有効にするには、マシン構成の割り当ての assignmentType プロパティApplyandMonitor に設定します。 マシン内で割り当てが処理されるたびに、Test メソッドで $true が返された場合は各リソースについて Compliant が、このメソッドで $false が返された場合は NonCompliant がエージェントによって報告されます。

継続的修復 (autocorrect)

マシン構成では、継続的修復の概念がサポートされています。 マシンが構成のコンプライアンスからドリフトした場合、次回の評価時に構成が自動的に修正されます。 エラーが発生しない限り、マシンでは構成の状態が常に Compliant として報告されます。 継続的修復を使用する場合、ドリフトが自動的に修正された時間を報告する方法はありません。

この動作を有効にするには、マシン構成の割り当ての assignmentType プロパティApplyandAutoCorrect に設定します。 マシン内で割り当てが処理されるたびに、各リソースについて Set メソッドが自動的に実行され、Test メソッドにより false が返されます。

修復を無効にする

assignmentType プロパティが Audit に設定されている場合、エージェントではマシンの監査のみが実行され、準拠していない場合に構成の修復は試みられません。

カスタム コンテンツの修復を無効にする

カスタム コンテンツ パッケージの割り当ての種類プロパティをオーバーライドするには、マシンに CustomGuestConfigurationSetPolicy という名前のタグを追加し、値を disable にします。 このタグを追加すると、Microsoft によって提供される組み込みコンテンツではなく、カスタム コンテンツ パッケージの修復だけが無効になります。

Azure Policy の強制

Azure Policy の割り当てには、新しいリソースと既存のリソースの動作を決定する必須のプロパティである強制モードが含まれています。 構成をマシンに自動的に適用するかどうかを制御するには、このプロパティを使用します。

既定では、強制は Enabled に設定されています。 新しいマシンのデプロイ時に、Azure Policy によって構成が自動的に適用されます。 また、カテゴリ Guest Configuration 内のポリシーを持つ Azure Policy 割り当てのスコープ内のマシンのプロパティが更新されるときにも、構成が適用されます。 更新操作には、タグの追加や変更など、Azure Resource Manager で発生するアクションが含まれます。 更新操作には、ディスクのサイズ変更や接続などの仮想マシンの変更も含まれます。

Azure のマシン リソースに変更が発生したときに構成を修復する必要がある場合は、強制を有効のままにします。 マシン内で発生した変更では、Azure Resource Manager のマシン リソースが変更されない限り、自動修復はトリガーされません。

強制が Disabled に設定されている場合は、修復タスクで動作が変更されるまで、構成の割り当てによってマシンの状態が監査されます。 既定では、マシン構成定義によって assignmentType プロパティAudit から ApplyandMonitor に更新され、構成が 1 回適用されて、修復がトリガーされるまで再度適用されません。

オプション: 既存のすべてのマシンを修復する

Azure portal から Azure Policy の割り当てを作成する場合は、[修復] タブの [修復タスクの作成] というラベルのチェック ボックスを利用できます。 このチェック ボックスをオンにすると、ポリシーの割り当ての作成後、NonCompliant に評価されるリソースが、修復タスクによって自動的に修正されます。

マシン構成に対するこの設定の効果は、ポリシーを割り当てることにより、多数のマシンに構成をデプロイできることです。 また、準拠していないマシンに対して修復タスクを手動で実行する必要がありません。

Azure Policy の外部で手動で修復をトリガーする

更新によってリソースのプロパティが変更されない場合でも、ゲスト割り当てのリソースを更新することで、Azure Policy エクスペリエンスの外部で修復を調整できます。

マシン構成の割り当てが作成されると、complianceStatus プロパティPending に設定されます。 マシン構成サービスは、5 分ごとに割り当ての一覧を要求します。 マシン構成の割り当ての complianceStatusPending で、その configurationModeApplyandMonitor または ApplyandAutoCorrect の場合、マシン内のサービスによって構成が適用されます。

構成の適用後、動作をコンプライアンスの状態の報告のみでドリフトを許可するようにするか、自動的に修正されるようにするかが、構成モードによって決定されます。

設定の組み合わせについて理解する

~ Audit ApplyandMonitor ApplyandAutoCorrect
強制の有効化 状態の報告のみ 構成は VM の作成時に適用され、更新時に再適用されるが、それ以外の場合はドリフトが許可される 構成は VM の作成時に適用され、更新時に再適用され、ドリフトが発生した場合は次の間隔で修正される
強制の無効化 状態の報告のみ 構成が適用されるが、ドリフトが許可される 構成が VM に適用され、作成または更新されて、ドリフトが発生した場合に次の間隔で修正される

次のステップ