Guest

アプリケーション ネットワーキング サービス

ロード・バランシング

注意: 本製品は既に生産⁄販売を終了しております。


White Paper

ロード・バランシング





サーバのアベイラビリティを向上させるための多機能ソリューション

ネットワーク化されたサーバに対するロード・バランシング・テクノロジーは、ビジネスが Web サイトや他のインターネット・コミュニケーションへ拡大されるにつれ、また、企業からアプリケーションやデータが配布されるようになるにつれ、ますます重要になってきました。現在、Cisco LocalDirector は、その優れたロード・バランシング・テクノロジー、予測可能なスケーラビリティ、ハイ・アベイラビリティ機能、サーバ管理機能、セキュリティ機能などにより、ローカル・サーバのトラフィック分散に関連する市場をリードしています。

ロード・バランシング・テクノロジーの歴史

1996 年 7 月に発売開始された Cisco LocalDirector は、業界で最初の商用 IP サーバ用のロード・バランシング製品です。LocalDirector は、圧倒的な評価を受け、発売当初から市場シェアにおいて主導権を握ってきました。

初めに述べたように、LocalDirector は、Web 環境で DNS(Domain Name Service)が行っていた「ラウンドロビン」方式のロード・バランシングに代わるソリューションとして位置付けられています。ラウンドロビンを使用しない場合、DNS では通常、複数のホスト名を 1 つの IP アドレスにマップします。ラウンドロビンを使用すると、DNS では複数の IP アドレスが含まれるリストをランダムに循環させ、そのうちのいずれかを URL(Uniform Resource Locator)に対する DNS クエリにマップします。さらに多くのサーバ・キャパシティが必要な場合、管理者はそのローテーションに IP アドレスを追加し、サーバ・ファームにサーバを追加できます。DNS ラウンドロビン方式によるサーバのスケーリングにおいても、LocalDirector と同様に各サーバへのデータのミラー化を想定しています。

DNS ラウンドロビン方式によるロード・バランシングは、複数のサーバで構成されるサーバ・ファームでは面倒な問題を引き起こします。第 1 の問題はローテーションの結果として生じるシステムの偏りの程度で、個々のサーバに対して不均等で非常に変わりやすく予測不可能な負荷分散が行われます。このシステムの偏りのために、サーバ・システムの潜在的なキャパシティ全体が低下し、企業に対して必要以上のサーバ・キャパシティの投資を強いることになります。

また、DNS のラウンドロビン方式では、TCP 接続、サーバ、またはアプリケーションのステータスに関する情報が保持されないため、アベイラビリティに関する問題も発生します。サーバがクラッシュした場合、DNS ラウンドロビン方式ではクライアントの要求が引き続きこのサーバへ送信され、クライアント側は「server not available」というメッセージを受信します。管理者が手作業で設定を変更することにより、DNS ラウンドロビン方式のローテーションからクラッシュしたサーバ(またはいずれかのサーバ)がはずされた場合でも、DNS では IP アドレスに基づいてクライアントをそのサーバに誘導することがあります。

また、キャッシュされた情報も、DNS ラウンドロビン方式による複数サーバへのアクセスに問題を発生させます。DNS では、冗長性を最小化して効率を最大化するために、すでに取得したデータを「覚えておく」キャッシュ・メカニズムを使用しています。特定の IP マッピングがローテーションからはずされたとき、その情報が残されたままになっているキャッシュがいくつかあります。ただし、これらのキャッシュは、サーバへアクセスできないため、完全な Web ページ、データ・セット、またはアプリケーションをクライアントに配信するのに必要な残りの情報を取得できません。

Cisco LocalDirector:ロード・バランシング以外の機能

Cisco LocalDirector や他のロード・バランシング・テクノロジーでは、DNS ラウンドロビン方式に関連したこれらの問題を解決するだけでなく、複数サーバ環境を管理するより簡便な方法が提供されています。

ネットワークおよびコンピュータの業界紙では、LocalDirector に機能的に類似したネットワーク機器に「ロード・バランサ」という用語を適用しています。さまざまな意味で、この言葉を LocalDirector に当てはめることは不適当です。ロード・バランサは複数のサーバに対してトラフィックの負荷を平等に分散させるものですが、カスタマはロード・バランシング以外の多くの目的で LocalDirector を購入および使用しています。この目的には、LocalDirector のスケーラビリティ、ハイアベイラビリティ、サーバ接続管理、およびサーバセキュリティ機能が含まれています。

サーバ・ファームのスケーリング

ネットワーク管理者は、サーバ・ファーム・システムのスケーリングのために、次の 2 つのアプローチのうちいずれかを選択できます。第 1 のアプローチは、サーバ・ファーム内の個々のサーバの大きさや処理能力を継続的にアップグレードすることです。第 2 のアプローチは、必要とするキャパシティに応じてサーバを徐々に追加することです。いずれのアプローチでも、最後にはサーバ・システムのキャパシティが増加しますが、この文書では、これらの方法の利点および不利点について説明しません。

ほとんどの場合、管理者は、システムにサーバを追加することでキャパシティを増加するスケーリング戦略をとる必要があります。キャパシティの追加の理由としては、予期しないサーバ・トラフィックの急増、サーバの冗長性に対する内部的な要求、および、より高価なサーバへの大規模なアップグレードを行うための予算がないことが考えられます。

マルチサーバ環境が構築されると、キーとなる管理上の問題は、使用可能なキャパシティの使用を最適化するために、トラフィックの負荷をいかに最適に分散させるかということになります。答は簡単です。CPU 稼働率などのキーとなるいくつかの変数を監視するだけです。実際には、シスコのモデルではキーとなる変数は 3 つの種類があります。これらは監視が難しいにもかかわらず、サーバ・システムのキャパシティを最適化するには必ず考慮される必要があります。この 3 つの変数とは、ネットワークの帯域幅、サーバのパフォーマンス(アプリケーションのパフォーマンスなど)、ジョブのサイズです。

システム管理者の目標は、ネットワークの帯域幅とサーバのパフォーマンスを確実に一致または同期させることです。このモデルはパフォーマンスに影響を与える真の原因を明らかにするのに役立つため、管理者は、不十分なネットワーク帯域幅によりパフォーマンスのボトルネックが引き起こされている場合、サーバのパフォーマンスを増やしてしまうという無駄を回避できます。逆に、サーバがボトルネックを引き起こしている場合、ネットワーク帯域幅をアップグレートするという無駄の回避にも、このモデルが役立ちます。帯域幅の強化はサーバのキャパシティを強化するよりも比較的高価です。このため、ネットワークでの帯域幅の空き容量を操作するよりも、サーバ・システムにさらに余裕のあるキャパシティを持たせる方が一般的です。

キャパシティのモデルで考慮する最後の要素は、クライアントがサーバに要求するジョブ・サイズの平均です。トラフィックの負荷とサーバ・システムのキャパシティはキューイング・セオリの法則に照らして分析される必要があるため、ジョブのサイズは重要な項目です。クライアントの通常の要求が小さなテキスト・ファイルである場合、複雑なデータベース・クエリや画像ファイルの要求に比べ、サーバ・システムでより多くのジョブを処理できます。

現在のロード・バランシング・テクノロジーでは、複数サーバ間での負荷の最適化のために、帯域幅、サーバのパフォーマンス、およびジョブ・サイズの 3 つの変数は考慮されません。ただし、このテクノロジーにより、管理者はサーバ・システムの全体のキャパシティを徐々にスケールすることができます。現在のロード・バランシング・テクノロジーでは、管理者が各サーバへの TCP 接続の数を管理でき、これによりスケーラビリティの予測が可能になります。管理者は、サーバへの TCP 接続を徐々に追加し、実際のトラフィック需要を処理するための真のキャパシティをテストできます。サーバが遅くなったり、クラッシュするなど、サーバの動作によって過負荷状態が示されている場合は、さらにキャパシティを追加できます。ロード・バランシング・テクノロジーの予測可能性は、管理者によるサーバのキャパシティを向上させる計画や、サーバ・ファーム・システム増大の管理に役立ちます。

ハイ・アベイラビリティ

重要な ERP(Enterprise Resource Planning)アプリケーションへのアクセスがサーバの問題によって阻害された場合、企業は業務時間の毎分当たり推定で 5000 ドルから 2 万ドルの損害を受けることがあります。利益を生み出す Web サイトへカスタマがアクセスできなくなることに関連する損害は、これらの金額を 20 回から 30 回で簡単に上回ることがあります。これらの損害は企業の収益性に影響を及ぼすだけでなく、ネットワーク管理者の報酬にも影響します。ネットワークやサーバのアップタイムの測定により、実践を重ねることでネットワーク管理者を手助けすることになります。

ロード・バランシング・テクノロジー、特に Cisco LocalDirector のテクノロジーは、必要不可欠な Web サーバ、データベース・サーバ、およびアプリケーション・サーバのハイアベイラビリティを保証する優れたソリューションです。LocalDirector では、サーバ・システムのアップタイムを向上させるために、ネットワークやサーバ・システムのアーキテクチャを管理者が設計できるようにし、冗長性によってサーバやアプリケーションのアベイラビリティを向上させられるようにしています。

LocalDirector は TCP ベースのサービスやアプリケーションと連動する透過的なデバイスであり、サーバ上には特別なソフトウェアを必要としません。異なるサーバ環境向けに個別に移植または記述されたアプリケーション・ソフトウェアを必要とする他のハイアベイラビリティ・テクノロジーに比べ、この透過性は LocalDirector の成功の鍵となっています。クラスタリング・テクノロジーは、使用可能なハイアベイラビリティ・ソリューションの一例ですが、これはサーバ特有のソフトウェアを必要とするため、広く受け入れられるには時間がかかっています。

LocalDirector では、アベイラビリティに関するソリューションの 2 つのコンポーネントが提供されます。サーバとアプリケーションのアベイラビリティと、LocalDirector のアベイラビリティです。LocalDirector では、TCP 接続の状態を監視することにより、サーバとアプリケーションのアベイラビリティが判断されます。任意のサーバが使用不可の場合、LocalDirector ではトラフィックを他のサーバに透過的に誘導します。そのサーバが再び使用可能になると、LocalDirector によりそのサーバへのトラフィックの誘導が再開されます。

LocalDirector にはホットスタンバイやフェールオーバのメカニズムが用意されています。LocalDirector の装置に障害が発生した場合は、他の装置がロード・バランシング処理を引き継ぎます。Telnet のように長時間に及ぶ接続型のアプリケーションに対しても LocalDirector の装置間のフェールオーバはステートフルであり、クライアントがサーバにログインし直す必要はありません。さらに、シスコの HSRP(Hot Standby Router Protocol)をルータに実装することで、サーバ・システムに対する冗長性も実現されます。

ほとんどの管理者は、冗長サーバ、LocalDirector、および他のネットワーク機器を、必要なものを完備したローカルなサイトで使用することにより、アベイラビリティの問題を解決し始めています。同一のサーバ・システムを異なる場所に構築することにより、さらにアベイラビリティを高めることができます。この設計では、Cisco DistributedDirector により複数のサーバ・サイトでのトラフィックの負荷が調整され、そのサイトの内部は Cisco LocalDirector 装置により管理されています。何らかの理由でサーバ・システムに障害が発生した場合、別の場所にある同じサーバ・システムにより、いつでもクライアントの要求が受信および処理されるようになっています。

サーバ接続の管理

LocalDirector は、クライアントとサーバ間のすべての TCP 接続を監視および追跡するステートフルなデバイスです。この監視機能により、LocalDirector ではロード・バランシングの不安定さを減らすことができ、また、障害が発生したサーバを識別して管理者がサーバ・ファームを管理しやすいようにします。ロード・バランシング・テクノロジーを実現するには、サーバ接続の管理が最も重要だと指摘する業界アナリストもいます。

Cisco LocalDirector では、サーバ管理者が、サーバをオフラインにしてアプリケーションをアップグレードし、再度サーバをサービスに戻すという処理を簡単に行える効果的な方法が最初に提供されました。また、管理者は、各サーバに対する TCP 接続の最大数を設定できます。たとえば、管理者が、特定のアプリケーションは、クラッシュするまでに 200 の同時接続を処理できることを理解している場合などです。別の例として、ある企業で特定のアプリケーションに対してライセンスの制限がある場合、LocalDirector により制限を超えないようにすることができます。

LocalDirector でサーバ接続を管理するもうひとつの機能として、RVR(Real-to-Virtual-to-Real)接続があります。RVR により、実サーバは仮想 IP アドレスを使用して、実サーバのグループへアクセスできます。一般的な RVR の適用例としては、2 台の Web サーバと 2 台のデータベース・サーバで構成されたサーバ・ファームがあります。Web サーバの 1 台に対する要求により、LocalDirector で調整されているデータベースのいずれかでの検索が要求されたとします。LocalDirector では、仮想 IP アドレスを使用して、その 2 台のデータベースがアクセス可能になるように、またロード・バランスが行われるようにします。

サーバ接続管理の別の種類は、仮想 IP アドレスにアクセスする送信元 IP アドレスに基づいて、トラフィックをサーバに誘導する LocalDirector の機能です。たとえば、重要なカスタマからの要求は、システム内の他からの要求よりも、高速で強力なサーバへ誘導することができます。このような柔軟性を持つサーバ接続の管理により、LocalDirector では、ネットワーク内の QoS(Quality of Service)に関する機能に類似した機能が提供されます。

セキュリティ

Cisco LocalDirector には、堅固なサーバ・セキュリティ・システムを実現する機能も用意されています。この製品自体は完全な機能を持つファイアウォールではありませんが、LocalDirector のセキュリティ機能は多くのアプリケーションに対して十分な機能を備えています。通常、サーバにはセキュリティ機能がないため、LocalDirector では不正アクセスに対抗できる非常に重要な防御機能が提供されています。LocalDirector のセキュリティ機能を使用すると、複数のセキュリティ・ファイアウォールで守られた環境から、管理者が 1 台または複数のファイアウォールを取りはずすことができます。

LocalDirector 特有のセキュリティ機能により、発信元 IP アドレスおよびポートに基づいたアクセス・トラフィックのフィルタリングができるようになります。LocalDirector では、特定のクラス C アドレスからのトラフィックを許可しないように設定することや、あるいは Web トラフィックでのみサーバに接続できるなど、一般的なポリシに基づいた設定を行うことができます。また、LocalDirector では、実サーバへトラフィックがブリッジされないように、特定のポートにセキュリティを設定できます。LocalDirector の NAT(Network Address Translation)機能では、未登録 IP アドレスを識別することで、インターネットへ接続する際の外部からの攻撃からサーバを守ることができます。また、LocalDirector では、Syn Attack に対する防御も、プロテクション・モードに入る前に応答しない SYN の回数を管理者が設定することにより実現しています。

要約

一般的なロード・バランシング・ソリューション、および特に Cisco LocalDirector では、サーバ・ファーム環境に 4 つの基本的な利点を提供します。その利点は、次のとおりです。

1. さまざまなトラフィックの負荷を管理、スケール、および減少させる機能。

2. サーバ・トラフィックの管理に対する低コスト、容易な実装、ハイアベイラビリティに対応した戦略。

3. クライアントとサーバ間の高度な接続管理が可能。

4. サーバ上のデータやアプリケーションを保護するための、組み込み型で効果的なセキュリティ・システム。


更新日:2001 年 8 月 27 日