負荷分散とスケーリング

Google Cloud Platform(GCP)では、インスタンスのグループを対象とした負荷分散と自動スケーリングを行うことができます。

負荷分散

GCP では、サーバー側で負荷分散が行われるため、受信したトラフィックを複数の仮想マシン インスタンスに分散できます。負荷分散には、次の利点があります。

  • アプリケーションのスケーリング
  • 大量のトラフィックへの対応
  • ヘルスチェックによる正常でない仮想マシン インスタンスの検出と自動的な除外。正常な状態に復帰したインスタンスは自動的に元どおりに追加されます。
  • 最も近い位置にある仮想マシンへのトラフィックの振り分け

GCP の負荷分散では、転送ルールリソースを使用して特定の種類のトラフィックを比較し、ロードバランサに転送します。たとえば、IP アドレス 192.0.2.1 のポート 80 宛てのトラフィックが転送ルールに一致すると、そのトラフィックがロードバランサに転送され、正常に動作している仮想マシンの複数のインスタンスに送信されます。

GCP 負荷分散はマネージド サービスです。このため、コンポーネントに冗長性があり、高い可用性を実現しています。負荷分散のコンポーネントに障害が発生すると、そのコンポーネントは直ちに自動的に再起動または交換されます。

GCP では、容量、用途、構成方法が異なる複数の負荷分散を行うことができます。詳細については、負荷分散をご覧ください。

自動スケーリング

Compute Engine は自動スケーリングの機能を備えています。この機能では、負荷の増減に基づき、インスタンスのグループに対して自動的に仮想マシンの追加と削除が行われます。この機能により、トラフィックの増加をアプリケーション側で円滑に処理でき、リソースに対するニーズが減少した状況下では該当の費用を削減できます。自動スケーリングのポリシーを定義しておけば、オートスケーラーで測定した負荷に基づいて自動スケーリングが行われます。

ポリシー

オートスケーラーによって仮想マシンをスケーリングする際に使用できるさまざまなポリシーが用意されています。目的に合わせて適切なポリシーを選択します。オートスケーラーを作成するとき、少なくとも 1 つのポリシーを指定する必要があります。オートスケーラーで複数のポリシーを使用すると、グループ内の仮想マシンの数が最も多くなるポリシーに基づいてインスタンス グループがスケーリングされます。

以降のセクションでは、自動スケーリングのポリシー全般について説明します。特定の自動スケーリング ポリシーを設定する方法の詳細については、それぞれのポリシーのドキュメントをご覧ください。

CPU 使用率

CPU 使用率は、実行可能な自動スケーリングの中で最も基本的なものです。このポリシーはオートスケーラーに対して、仮想マシンのグループによる CPU 使用率の平均値をモニタリングし、グループに対して仮想マシンの追加または削除を行うことで、目的の使用率を維持するよう指示します。これは CPU の使用率が高いものの、その値に変動が発生することがある構成に効果的です。

詳細については、CPU の使用率に基づくスケーリングをご覧ください。

負荷分散の処理能力

負荷分散の処理容量に基づいてスケーリングを行うようオートスケーラーを設定すると、オートスケーラーによってインスタンス グループの処理容量がモニタリングされ、仮想マシンの処理容量の過不足に応じてスケーリングが行われます。

インスタンスの処理容量は、使用率または 1 秒あたりのリクエスト数に基づいて、ロードバランサのバックエンド サービスで定義できます。

詳細については、HTTP(S) 負荷分散に基づくスケーリングをご覧ください。

Stackdriver Monitoring の指標

Stackdriver Monitoring の指標をエクスポートまたは使用する場合は、特定の指標のデータを収集して目的の使用率水準に基づくスケーリングを行うように自動スケーリングをセットアップします。Stackdriver Monitoring に用意されている標準の指標に基づいてスケーリングできるほか、独自に作成したカスタム指標によるスケーリングも可能です。

詳細については、Stackdriver Monitoring の指標に基づくスケーリングをご覧ください。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Compute Engine ドキュメント