ロードバランサー(負荷分散装置)とは?
ネットワークにおける負荷分散とは、ネットワークトラフィック、コンピューティングワークロード、その他のサービスリクエストを、リソースやサービスのグループに分散させるプロセスのことです。
ネットワークの効率的な運用を考えるとき、企業はスケーラビリティ(サーバーへの同時アクセス可能なクライアント数)とアベイラビリティ(ダウンタイムを最小限に抑えたアクセス)の2つの問題に常に直面します。その解決策として、ネットワークにおけるロードバランシング(負荷分散)があります。汎用サーバーを使用し、送受信の負荷をそれらのサーバーに分散させるのです。
ネットワークにおける負荷分散とは、ネットワークトラフィック、コンピューティングワークロード、その他のサービスリクエストを、リソースやサービスのグループに分散させるプロセスのことです。受信したネットワークトラフィックは、汎用サーバーに分散され、全体のワークロードのバランスをとります。ネットワーク負荷分散の主な利点は、スケーラビリティ、サービスの信頼性の最適化、ネットワークの可用性の向上、および全体的な管理容易性です。
サービスは、ラウンドロビン、最小接続、最速応答などのアルゴリズムに基づいて負荷分散されます。
ネットワーク負荷分散の仕組み
ネットワーク負荷分散装置(ネットワークロードバランサー)は、Webサーバー群のフロントエンドとして機能するため、クライアントからのHTTPリクエストはすべてロードバランサーのIPアドレスで解決されます(後述するアプリケーション配信コントローラーは、より多くの機能を備えています)。ネットワークロードバランサーは、プライベートクラウドに相当するWebサーバー群の中の一つに各リクエストをルーティングします。サーバーのクライアントへの応答は、ロードバランサーが中継します。
ネットワークでの負荷分散の優れた点は、クライアントに対して透過的であることです。クライアントが関心を持つのは、通信相手となるエンドポイント1つだけだからです。
ネットワークにおける負荷分散の価値とは?
ネットワークの負荷分散を実施することで、複数のサービスの問題を解決することができます。
- スケーラビリティ: 企業が成長し、より多くの送受信容量が必要になった場合、ネットワークロードバランサーの登録リストに汎用Webサーバーを追加するだけですぐにネットワークのパフォーマンスが向上します。
- 高可用性(HA): 何らかの理由でサーバーに障害が発生した場合、高可用性負荷分散は直ちにその障害を検知し、そのサーバーへのリクエスト送信を停止します。
- メンテナンス性: バックエンドサーバーの修理や更新が必要な場合は、ネットワークロードバランサーの登録から削除し、復旧させることができます。
- セキュリティ: ロードバランサーの「セキュリティ堅牢化」は、管理するWebサーバーを保護するために、重要な機能となっています。この機能は、複雑なウェブアプリケーションを実行し、無数の潜在的な脆弱性に直面しているサーバー群にセキュリティを実現します。
シングルポイント・オブ・フェイラー(シングルポイント障害)の問題の回避
ネットワークロードバランサーは、Webサーバーの高可用性問題を解決するものですが、ロードバランサー自体にも冗長性が必要です。そうでなければ、シングルポイント障害になってしまうからです。
フェイルオーバーとは、あるネットワークロードバランサーから別のネットワークロードバランサーへ、両方のロードバランサーが同じグループのウェブサーバーをフロントエンドとするように切り替えることです。これは、障害時にプライマリネットワークのロードバランサーからスタンバイにトラフィックを切り替えるルーターや、ロードバランサーの機能で実現できます。とはいえ、ルーターにも冗長性が要求されます。
ネットワーク負荷分散ソリューションの成長
ネットワーク負荷分散の最初の実装では、専用ハードウェアが使用され、非常に高いパフォーマンスと高い可用性を持つという利点がありました。デメリットは、コストが高いことと、ハードウェアが物理的なソリューションであるため、ソフトウェア定義ネットワーク(SDN)やソフトウェア定義データセンター(SDDC)環境への移行と相容れないことです。
これらの課題から、現在、各社はネットワークにおける負荷分散を行うためにさまざまな技術を利用していますが、以下にその方法を説明します。
サーバー負荷分散
サーバーロードバランサーは、アプリケーションのワークロードを複数のサーバーに分散させるハードウェアまたは仮想ソフトウェアアプライアンスで、アプリケーションの可用性、サーバーリソースの柔軟な拡張性、バックエンドサーバーとアプリケーションシステムの健全性を確保します。
グローバルサーバー負荷分散
高性能なウェブサービスを大規模に提供しようとする場合、ネットワークレイテンシを最小限に抑え、世界各地のエンドユーザーとの接続のレスポンスタイムを改善することが必要です。大企業では、地理的に分散した複数のデータセンターがその解決策となります。グローバルデータセンターでは、クラウド負荷分散やマルチクラウド負荷分散とも呼ばれるグローバルサーバー負荷分散(GSLB)が必要となります。
GSLBは、地理的に様々な場所にあるデータセンター群にネットワークトラフィックを分散する技術です。各データセンターは同様のアプリケーションサービスを提供し、クライアントのトラフィックは、それぞれのクライアントに最適なパフォーマンスを持つサイトに誘導されます。GSLBは各サイトの健全性と応答性を監視し、サーバーの負荷分散と同様に、最適な応答時間のサイトにトラフィックを誘導します。GSLBは、自動スケーリング、地域および地域間のフェイルオーバー、集中管理により、マルチクラウドおよびマルチリージョン環境を処理します。
災害復旧のサポートは、GSLB の主要な使用例です。例えば、DDoS攻撃によってデータセンターのサービス性能が低下した場合、GSLB はトラフィックを完全に機能する別のデータセンターに転送し、顧客の視点からはサービスの中断を最小限に抑えることができます。
ファイアウォール負荷分散
複雑なネットワーク機器を拡張し、ノンストップ運用を保証するためには、多くのセキュリティファイアウォールシステムを導入する必要があります。強固なファイアウォールインフラはネットワーク・セキュリティの基礎ですが、ファイアウォール負荷分散を適切に行わなければ、最善のソリューションを最適化することはできません。可用性の高いファイアウォールは、ネットワークを保護し、ビジネスの継続性を確保する上で非常に重要です。ネットワーク・アーキテクチャには、ファイアウォール防御の高可用性を保証し、需要の増加に対応するために容易に拡張できるネットワーク負荷分散ソリューションが含まれている必要があります。
仮想負荷分散
仮想ロードバランサーは、プライベートクラウド、パブリッククラウド、ハイブリッドクラウド(マルチクラウド)のいずれであっても、SDN環境で動作するソフトウェアアプリケーションです。仮想ネットワークロードバランサーは設定や管理の柔軟性があり、ハードウェアベースのソリューションよりも低コストで利用できます。もちろん、仮想ロードバランサーの性能は、基盤となるハードウェアの性能と同等です。
DNSサーバー負荷分散
大規模またはミッションクリティカルなインフラストラクチャのDNSサーバーは、通常、DNSサーバーのクラスタ上でDNSサービスを展開します。一般的に、このDNSサーバー群は、サーバー負荷分散システムの背後にあります。このアーキテクチャは、標準的なDNSフェイルオーバーメカニズムの欠点を克服し、パフォーマンスを大幅に向上させます。
アプリケーション配信コントローラー
アプリケーション配信コントローラー(ADC)は、アプリケーションの信頼性、高速化、アプリケーションサーバーのサービスを提供するネットワークサーバーで、サーバーの負荷分散に SSLオフロード、セキュリティファイアウォールサービス、アプリケーションファイアウォールシステム、DDoS対策、サービスチェーンなどの機能が追加されます。
A10のソリューション
A10 Thunder® Application Delivery Controller (ADC)を含むA10の製品は、ネットワーク負荷分散とアプリケーション配信における専門知識に基づいて構築されています。A10の製品は、サーバーの可用性を確保し、脆弱なアプリケーションを保護し、コンテンツ配信を加速させます。さらに、A10の製品は優れた処理能力と優れたコスト効率を提供し、加入者あたりのコストは従来のネットワークベンダーに比べて通常10倍から100倍も低くなっています。
A10 Thunder ADCプラットフォームの中核は、ネットワークの負荷分散方法、ヘルスチェック、アジャイルトラフィックコントロールを活用したフルプロキシL4-7負荷分散によるアプリケーションの可用性、aFleX®スクリプトなどの幅広いオプションに対応しています。