可用性セットの概要

適用対象: ✔️ Linux VM ✔️ Windows VM

注意

幅広い機能を備えた高可用性のために、お客様がフレキシブル オーケストレーション モードの仮想マシン スケール セットを選択することをお勧めします。 仮想マシン スケール セットを使用すると、VM インスタンスを一元的に管理、構成、更新でき、需要または定義されたスケジュールに応じて VM インスタンスの数を自動的に増減できます。 可用性セットでは、高可用性のみが提供されます。

この記事では、Azure 仮想マシン (VM) の可用性機能の概要について説明します。

可用性セットとは

可用性セットは VM の論理グループであり、関連する VM が同時にダウンする相互関係のある障害の可能性を削減します。 可用性セットでは、信頼性を向上するために VM を異なる障害ドメインに配置します。特に、リージョンが可用性ゾーンをサポートしていない場合に役立ちます。 可用性セットを使用する場合は、可用性セット内に 2 つ以上の VM を作成します。 可用性セットで 2 つ以上の VM を使用すると、高可用性アプリケーションに役立ち、99.95% の Azure SLA を満たします。 可用性セットの使用に追加のコストはなく、作成する VM インスタンスごとに支払うのみです。

可用性セットでは、可用性ゾーンと比較して VM から VM への待機時間が向上します。これは、可用性セット内の VM が近接して割り当てられるためです。 可用性セットには、考えられる多くの障害に対する障害分離機能があり、単一障害点を最小限に抑え、高可用性を提供します。 可用性セットも、データセンター ネットワーク障害など、特定の共有インフラストラクチャ障害の影響を受けやすく、複数の障害ドメインに影響を与える可能性があります。

可用性セットよりも信頼性を高めるには、可用性ゾーンを使用します。 可用性ゾーンでは、各 VM が複数のデータセンターにデプロイされているため、信頼性が最も高く、電源、ネットワーク、冷却の損失を個々のデータセンターで防ぐことができます。 ワークロードの信頼性を最優先する場合は、複数の可用性ゾーンに VM をレプリケートします。

可用性セットのしくみ

基盤となる Azure プラットフォームにより、可用性セット内の各仮想マシンに更新ドメイン障害ドメインが割り当てられます。 各可用性セットは、最大 3 個の障害ドメインと 20 個の更新ドメインを使って構成できます。 これらの構成は、可用性セットが作成された後は変更できません。 更新ドメインは、仮想マシンと、同時に再起動できる基礎となる物理ハードウェアのグループを示しています。 5 つの更新ドメインを含む 1 つの可用性セット内に 5 つを超える仮想マシンが構成されている場合、6 番目の仮想マシンは最初の仮想マシンと同じ更新ドメインに配置され、7 番目は 2 番目の仮想マシンと同じ更新ドメインに配置され、それ以降も同様になります。 計画的メンテナンス中は、更新ドメインの再起動が順番に処理されない場合がありますが、一度に再起動される更新ドメインは 1 つのみです。 再起動された更新ドメインには、別の更新ドメインでメンテナンスが開始されるまでに、復旧するための時間として 30 分が与えられます。

障害ドメインは電源とネットワーク スイッチを共有する仮想マシンのグループを定義します。 既定で、可用性セット内に構成された仮想マシンは、最大 3 つの障害ドメイン間で分散されます。 仮想マシンを可用性セットに配置しても、アプリケーションがオペレーティング システムやアプリケーションの障害から保護されるわけではありませんが、潜在的な物理ハードウェア障害、ネットワーク障害、または電力の中断の影響を低下させることができます。

さまざまなコンピューティング クラスターが障害ドメインに分けられ、それらの障害ドメイン内に複数の更新ドメインがあることを示す図

VM もディスクの障害ドメインに合わせて配置されます。 この配置により、1 つの VM に接続されたすべてのマネージド ディスクが同じ障害ドメイン内に確実に存在することになります。

管理対象の可用性セットには、マネージド ディスクを持つ VM だけを作成できます。 マネージド ディスクの障害ドメインの数はリージョンによって異なり、マネージド ディスクの障害ドメインはリージョンあたり 2 つまたは 3 つになります。 次のコマンドを使用すると、リージョンごとの障害ドメインの一覧を取得できます。

az vm list-skus --resource-type availabilitySets --query '[?name==`Aligned`].{Location:locationInfo[0].location, MaximumFaultDomainCount:capabilities[0].value}' -o Table

特定の状況下では、同じ可用性セット内の 2 つの VM で障害ドメインが共有される場合があります。 共有された障害ドメインを確認するには、可用性セットに移動し、 [障害ドメイン] 列をクリックします。 VM をデプロイしたタイミングで、次のシーケンスが完了すると、共有された障害ドメインが作成される可能性があります。

  1. 最初の VM をデプロイします。
  2. 最初の VM を停止するか割り当てを解除します。
  3. 2 つ目の VM をデプロイします。

このような状況では、2つ目の VM の OS ディスクが最初の VM と同じ障害ドメインに作成される可能性があるため、2つの VM は同じ障害ドメインに配置されます。 この問題を回避するために、デプロイ間で VM を停止または割り当て解除しないことをお勧めします。

ディスクおよび VM の障害ドメインがどのように配置されているかを示す図。

次のステップ

ベスト プラクティスに関する情報については、Azure の可用性のベスト プラクティスに関するページをご覧ください。