コンテンツに移動
ネットワーキング

ロードバランサで復元性を向上

2023年5月11日
Google Cloud Japan Team

※この投稿は米国時間 2023 年 5 月 4 日に、Google Cloud blog に投稿されたものの抄訳です。

ロードバランサはクラウド ネットワークのデプロイにおいて最も重要なコンポーネントの一つであり、長年にわたり、ほとんどのネットワーキング サービスの基本となっています。ロードバランサの主な用途の一つは、トラフィックを複数のバックエンドで共有することによって、アプリケーションに冗長性と信頼性を提供することです。ロードバランサは、ユーザー トラフィックをアプリケーションの複数のインスタンスに分散します。負荷を分散することで、アプリケーションにパフォーマンスの問題が起こるリスクを低減します。  

Google Cloud Load Balancing は、完全な分散型ロード バランシング ソリューションです。このソリューションはユーザー トラフィック(HTTP(S)、HTTPS/2 with gRPC、TCP/SSL、UDP、QUIC)を複数のバックエンドに分散させ、輻輳の回避、レイテンシの低減、セキュリティの向上、費用の削減を実現します。Google.com と同じフロントエンド インフラストラクチャ上に構築されており、安定した高いパフォーマンスと低いレイテンシで全世界の数百万の秒間クエリ数をサポートします。最高の信頼性を提供することは、Google Cloud ロードバランサの基本原則です。Google は全体的な信頼性をさらに向上させる方法を見つけるために、Cloud ロードバランサの基礎となるコア エンジニアリングに絶えず投資しています。

Google Cloud ロードバランサは、バックエンドのヘルスチェックや健全なシステムへのトラフィックのリダイレクトを通じて信頼性を提供します。信頼性機能の多くはロードバランサの基盤にネイティブに組み込まれているため、Google のロードバランサに搭載された重要な信頼性機能は自動的にご利用いただけます。しかし、ワークロードに合わせて Cloud ロードバランサの構成やアーキテクチャをカスタマイズできるオプションもあります。ここで提案する信頼性オプションの使用は任意であり、特定のユースケースに合わせて Cloud ロードバランサのデプロイメントを調整する手段として提供されるものです。

具体的には、ワークロードに合わせて Cloud ロードバランサの信頼性を全体的に高めることができる、最近の 2 つの進化について説明します。

1. グローバル外部ロードバランサに組み込まれた追加シャーディング

最初の進化は、次世代型グローバル外部ロードバランサに組み込まれています。このロードバランサは、コア アーキテクチャの一部としてシャーディングを追加しています。ロードバランサ内のシャーディングにより、高度な信頼性がもたらされ、より高いスケーラビリティが実現します。また、シャーディングによりテナントを分離することで、外部で発生しうる問題からワークロードを保護します。この機能は、Google Cloud のフルマネージド ソリューションに組み込まれているため、自動的に有効になっています。こうした信頼性のさらなる向上を体感していただくために、これまでのグローバル外部ロードバランサ(従来)をご利用のお客様には、最新バージョンへのアップグレードを検討することをおすすめします。

2. フェイルオーバー オプションとしてのリージョン外部ロードバランサの利用

最近の進化の 2 つ目は、新しいリージョン外部ロードバランサのリリースです。これを使うことでデプロイの全体的な信頼性をさらに高めることができます。Google Cloud のリージョン ロードバランサは、グローバル ロードバランサから独立し、隔離されています。グローバル ロードバランサは、非常に高い信頼性と可用性を備えています。しかし、アーキテクチャのあらゆるレベルで冗長性を持たせたい場合は、リージョン ロードバランサを Google Cloud のグローバル外部ロードバランサのフェイルオーバー オプションとして使用できます。このケースでは、DNS ソリューションのヘルスチェック オプションを使用して障害が検出された場合に、トラフィックをリージョン ロードバランサのいずれかにリダイレクトさせることができます。次の図は、この機能を表したものです。

https://storage.googleapis.com/gweb-cloudblog-publish/images/LB_Reliability_Figure_1.max-1100x1100.jpg

フェイルオーバー オプションとしてリージョン外部ロードバランサを構成する場合、以下を推奨します。

  1. Google Cloud の次世代型グローバル外部ロードバランサは、リージョン外部ロードバランサとの互換性が最も高いため、プライマリ トラフィックにはこの最新バージョンの外部ロードバランサを使用する。

  2. トラフィックをフェイルオーバーさせるリージョンに、リージョン外部ロードバランサを設定する。リージョン外部ロードバランサは、エンドユーザーのトラフィックに最も適した場所に設置できます。

  3. グローバル トラフィックのヘルスチェック(アクティブまたはパッシブ)を行うよう DNS ソリューションを構成する。障害が検出された場合、リージョン ロードバランサにトラフィックを流すように DNS を構成します。

  4. 障害発生時にトラフィックが正しく処理されることを確認するために、障害が発生していない正常時も、リージョン ロードバランサに少量のトラフィックを転送する。

また、日常的なトラフィックの処理にリージョン ロードバランサのみを使用し、グローバル ロードバランサを使用しない場合でも、他のリージョンのリージョン外部ロードバランサをフェイルオーバー オプションとして使用することもできます。

さらに、リージョン外部ロードバランサの容量予約について Google アカウント担当者に相談し、フェイルオーバーが発生した場合に必要な容量を予約しておくことをおすすめします。

また、Google Cloud ロードバランサの詳細については、Cloud Load Balancing の概要をご覧いただくか、チュートリアルでご確認いただけます。


- プロダクト マネージャー Prakash Daga
投稿先