English |
日本語
Top |
Ultra Monkeyについて |
ミラー情報 |
履歴 |
連絡先 |
2.0.1リリース
ニュース・アーカイブ |
ドキュメント |
Ultra Monkey L7 [offsite]
2.0.1 :
Linux Virtual Server |
Heartbeat |
Ldirectord |
インストール |
トポロジ
Linux Virtual Server
Linux Virtual Server(LVS)は、着信TCP/IP接続とUDP/IPデータグラムを実サーバに多重化することを可能にします。接続制御のこのメカニズムは、レイヤ4スイッチングとも呼ばれます。
仮想サービスへのパケットはLinux Directorによって受信されます。スケジューリング・アルゴリズムが、そのパケットの送り先となる実サーバを決定します。これが決定すると、その接続内の後続のパケットも同じ実サーバに送られます。このようにして、接続の整合性が保たれます。また、オプションで、サービスを永続としてマークすることができます。これが行われた場合、同一ホストからのすべての接続が同じ実サーバに転送されます。これは、エンドユーザを常に同じ実サーバへ誘導してデータ接続の整合性を確保する必要のある、FTPなどのアプリケーションで役立ちます。
仮想サービス
Linux Directorでは、仮想サービスはIPアドレスとポートとプロトコル、またはファイアウォール・マークで定義されます。
- IPアドレスとポートとプロトコル:
仮想サーバは次のように指定します。
- IPアドレス:エンドユーザがサービスへのアクセスに使用するIPアドレス
- ポート:エンドユーザが接続するポート
- プロトコル:UDPまたはTCP
- ファイアウォール・マーク:
パケットは、ipchains(1)を使って、32ビットの符号なしの値でマークされます。Linux Virtual Serverはこのマークを利用して、仮想サービスに宛てて送られたパケットを示し、それらを適切にルーティングします。これは、同じ実サーバで、連続したIPベースの仮想サービスが大量に必要な場合や、異なるポート間で永続性をグループ化する場合にに特に役立ちます。たとえば、特定のエンドユーザが、HTTPでもHTTPSでも同じ実サーバに送られるようにしたい場合などです。
スケジューリング・アルゴリズム
仮想サービスには、着信接続を実サーバに割り当てるのに使用するスケジューリング・アルゴリズムが割り当てられます。スケジューリング・アルゴリズムにはさまざまなものがあります。
-
最小コネクション(Least-Connection):
-
負荷に応じた最小コネクション(Weighted Least-Connection):
-
ラウンドロビン(Round-Robin):
すべての実サーバに均等に接続を割り振ります。
-
負荷に応じたラウンドロビン:
-
場所に応じた最小コネクション(Locality-Based Least-Connection):
-
場所に応じた最小コネクション、レプリケーションあり(Locality-Based Least-Connection with Replication):
-
送信先ハッシュ(Destination-Hashing):
-
送信元ハッシュ(Source-Hashing):
パケットの転送
Linux Virtual Serverは、Network Address Translation(NAT)、IP-IPカプセル化(トンネリング)、およびダイレクト・ルーティングの3種類のパケット転送方法をサポートしています。
-
ダイレクト・ルーティング:
エンドユーザからのパケットを、直接実サーバに転送する方法です。IPパケットは変更されないので、実サーバが、仮想サーバのIPアドレス宛てのトラフィックを受け入れるよう設定する必要があります。このためには、ダミー・インターフェイスを使うか、または仮想サーバのIPアドレス宛てのトラフィックをローカルポートにリダイレクトするパケット・フィルタリングを行います。実サーバはエンドユーザに直接応答を送信できます。つまり、ホストベースのレイヤ4スイッチが使われている場合、それをリターン・パス上に置くことはできません。
-
IP-IPカプセル化:
IP-IPカプセル化(トンネリング)は、あるIPアドレス宛てのパケットを、同じネットワークまたは別のネットワーク上のほかのアドレスにリダイレクトできるようにします。レイヤ4スイッチングにおいては、この挙動はダイレクト・ルーティングとよく似ていますが、パケットを転送する際、ただethernetフレームを操作するのではなく、IPパケットにカプセル化する点が異なります。トンネリングの主な利点は、実サーバが別のネットワーク上にあっても構わないということです。
-
Network Address Translation:
Network Address Translation(NAT)は、パケットの送信元/送信先のポート/アドレスを操作してネットワークをマップする方法です。これが最もよく使われるのがIPマスカレードです。IPマスカレードは、RFC 1918のプライベート・ネットワークからインターネットへのアクセスを可能にするためにしばしば使われる手法です。レイヤ4スイッチングにおいては、エンドユーザからパケットを受け取ると、送信先のポートとIPアドレスが、選択された実サーバのものに書き換えられます。返信パケットがレイヤ4スイッチング・デバイスを通る際にマッピングが解除されるので、エンドユーザは予想どおりの送信元から返信を受け取ることができます。
実サーバ
実サーバは仮想サーバに属し、IPアドレス、ポート(さらに、負荷に応じた最小コネクション/ラウンドロビンのアルゴリズムが使われている場合は、負荷)で定義されます。一般的には、実サーバのポートは仮想サービスのポートと同じでなければなりません。ファイアウォール・マークの仮想サービスが使われている場合は、着信接続を受信するポートが、実サーバにおいてその接続が転送されるポートになります。つまり、実サーバのポート指定は使われません。実サーバの健康状態は、ldirectordを使って監視できます。
Copyright © 2000-2004,
Horms
Last Updated: Thu Dec 11 14:58:04 2003 +0900
Debian is a registered trademark of Software in the Public Interest, Inc.
Red Hat, the Red Hat Shadowman logo and Fedora are registered trademarks of Red
Hat, Inc.
Linux is a registered trademark of Linus Torvalds.
All other trademarks are the property of their respective owners.