Virtual Machine Scale Sets 用のスタンバイ プール (プレビュー)
重要
Virtual Machine Scale Sets 用のスタンバイ プールは、現在プレビュー段階です。 プレビュー版は、追加使用条件に同意することを条件に使用できます。 この機能の一部の側面は、一般公開 (GA) 前に変更される可能性があります。
Virtual Machine Scale Sets 用のスタンバイ プールを使うと、スケールアウト時にスケール セットがプルできる事前プロビジョニング済み仮想マシンのプールを作成して、スケーリングのパフォーマンスを向上させることができます。
スタンバイ プールを使うと、アプリケーションやソフトウェアのインストールや、大量のデータの読み込みなど、さまざまな初期化手順を実行できるので、スケールアウトの時間が短縮されます。 これらの初期化手順は、スケール セットに移動される前のスタンバイ プール内の仮想マシンに対して実行されます。
スケーリング
スケール セットでより多くのインスタンスが必要な場合は、新しいインスタンスを最初から作成するのではなく、代わりにスタンバイ プールの仮想マシンが使われます。 スタンバイ プール内の仮想マシンはプロビジョニング後のすべての手順を既に完了しているので、これにより時間を大幅に節約できます。
スケールダウンして戻すときは、スケールイン ポリシーに基づいてインスタンスがスケール セットから削除され、構成されている最大準備容量を満たすようにスタンバイ プールが補充されます。 いずれかの時点で、スケール セットがスタンバイ プール内のインスタンス数を超えてスケーリングする必要がある場合、スケール セットは既定で標準のスケールアウト方法になり、新しいインスタンスが作成されます。
スタンバイ プールは、構成されている望ましい動作状態に一致する仮想マシンのみをプールから提供します。 たとえば、望ましい動作状態が割り当て解除に設定されている場合、スタンバイ プールは、その現在の電源状態に一致するインスタンスのみをスケール セットに提供します。 仮想マシンが作成中、失敗、または望ましい状態とは異なるその他の状態になっている場合、スケール セットは代わりに既定で新しい仮想マシンの作成に設定されます。
仮想マシンの状態
スタンバイ プール内の仮想マシンは、実行中または割り当て解除の状態に維持できます。
割り当て解除: 割り当てを解除された仮想マシンはシャットダウンされ、関連付けられているディスク、ネットワーク インターフェイス、すべての静的 IP は保持されます。 エフェメラル OS ディスクは、割り当て解除状態をサポートしいません。
実行中: 待ち時間と信頼性の要件が厳しい場合は、実行中状態の仮想マシンを使うことをお勧めします。 実行中状態の仮想マシンは、完全にプロビジョニングされたままになります。
スタンバイ プールのサイズ
スタンバイ プール内の仮想マシンの数は、プールの最大準備容量からスケール セットに現在デプロイされている仮想マシンの数を引いて計算されます。
設定 | 説明 |
---|---|
maxReadyCapacity | プールに作成される仮想マシンの最大数。 |
instanceCount | 現在、スケール セットに既にデプロイされている仮想マシンの数。 |
スタンバイ プールのサイズ | スタンバイ プール のサイズ = maxReadyCapacity – instanceCount 。 |
例
10 個のインスタンスを含む仮想マシン スケール セットと、最大準備容量が 15 のスタンバイ プールでは、スタンバイ プール内のインスタンスの数は 5 つです。
- 最大準備容量 (15) - 仮想マシン スケール セットのインスタンス数 (10) = スタンバイ プール サイズ (5)
スケール セットがインスタンス数を 5 に減らすと、スタンバイ プールのインスタンスは 10 個になります。
- 最大準備容量 (15) - 仮想マシン スケール セットのインスタンス数 (5) = スタンバイ プール サイズ (10)
スタンバイ プール インスタンス
仮想マシンがスタンバイ プール内にある場合、isVmInStandbyPool
パラメーターは true に設定されます。 仮想マシンがスケール セットのプール インスタンスから移動されると、このパラメーターは自動的に false に更新されます。 これは、仮想マシンがトラフィックを受信する準備ができているかどうかを判断する際に役立ちます。
az vm get-instance-view --resource-group myResourceGroup --name myInstance
"extensions": null,
"hyperVGeneration": "V2",
"isVmInStandbyPool": true,
"maintenanceRedeployStatus": null,
"statuses": [
{
"code": "ProvisioningState/succeeded",
"displayStatus": "Provisioning succeeded",
"level": "Info",
"message": null,
"time": "2024-08-02T17:22:46.295536+00:00"
},
{
"code": "PowerState/deallocated",
"displayStatus": "VM deallocated",
"level": "Info",
"message": null,
"time": null
}
],
可用性ゾーン
複数の可用性ゾーンにまたがる仮想マシン スケール セットでスタンバイ プールを使うと、プール内のインスタンスは、仮想マシン スケール セットが使っているのと同じゾーンに分散されます。
いずれかのゾーンでスケールアウトがトリガーされると、プール内でそれと同じゾーン内にある仮想マシンが使われます。 プールされた仮想マシンが残っていないゾーンで仮想マシンが必要な場合、スケール セットは新しい仮想マシンをスケール セットに直接作成します。
価格
ユーザーは、スタンバイ プールにデプロイされたリソースに基づいて課金されます。 たとえば、実行中状態の仮想マシンでは、コンピューティング、ネットワーク、ストレージのコストが発生します。 割り当て解除状態の仮想マシンではコンピューティング コストは発生しませんが、永続ディスクまたはネットワーク構成には引き続きコストが発生します。 そのため、実行中仮想マシンのプールでは、割り当て解除仮想マシンのプールよりコストが高くなります。 仮想マシンの課金について詳しくは、「Azure Virtual Machines の状態と課金状態」をご覧ください。
サポートされていない構成
- Azure Spot インスタンスを使用する仮想マシン スケール セットへのスタンバイ プールの作成またはアタッチ。
- Azure 自動スケーリングが有効な仮想マシン スケール セットへのスタンバイ プールの作成またはアタッチ。
- 障害ドメインが 1 より大きい仮想マシン スケール セットへのスタンバイ プールの作成またはアタッチ。
- 異なるリージョン内の仮想マシン スケール セットへのスタンバイ プールの作成またはアタッチ。
- 異なるサブスクリプション内の仮想マシン スケール セットへのスタンバイ プールの作成またはアタッチ。
- スタンバイ プールが既にある仮想マシン スケール セットへのスタンバイ プールの作成またはアタッチ。
- 均一オーケストレーションを使用する仮想マシン スケール セットへのスタンバイ プールの作成またはアタッチ。
次のステップ
スタンバイ プールを作成する方法を学習する。