Shohei Azuma
shohe****@pluga*****
2008年 2月 20日 (水) 03:31:25 JST
田沼さま、 先日は新しいソースコード有難うございました。 添付説明通り置き換えました。こちらでテストした範囲では問題なく動作してお ります。 現在、 IF POST THEN HOST1 IF GET THEN HOST2 IF PATTERN THEN HOST3 のように動作しておりますが、 If POST and PATTERN then HOST1 else HOST2 のようなことは可能でしょうか。 多々なる質問、恐縮です。よろしくお願いいたします。 東 -----Original Message----- From: Kouhei TANUMA <clamm****@gmail*****> To: Shohei Azuma <shohe****@pluga*****> Cc: Shinya TAKEBAYASHI <takeb****@nttco*****>, ultra****@lists***** Subject: Re: [Ultramonkey-l7-users 105] Re: “HTTP メソッドベース ロード バランシング” につきまして Date: Sat, 16 Feb 2008 03:22:09 +0900 東さん はじめまして。 田沼と申します。 HTTPメソッドによるバランシングについてですが、既存モジュールを多少変更するだけで 済みそうだったので、ちょっとテストがてらに作成してみました。(httpmethodモジュール) CentOS5 で簡単に確認していますが、バグがあるかもしれません・・・。 正式に実装されてリリースとなるかどうかはわかりませんが、興味がありましたら、 試してみてください。 手順は、添付ファイルの Makefile.am, protomod_httpmethod.c を 1.0.2-1 のソースコードにいれて、 autogen.sh (autogen64,sh), configure, make, make install です。 また、l7directord も変更が必要なので既存と置き換えてください。 設定についてですが、仮想サービスのモジュールに httpmethod モジュールを指定、 --method で振り分ける HTTP メソッドを指定(必須)、振り分ける実サーバを任意数追加です。 詳細は添付の l7directord.cf をご確認の上、適宜変更してください。 ★ 添付の l7directord.cf での振り分け情報 % sudo l7vsadm -K Layer-7 Virtual Server version 1.0.2 Prot LocalAddress:Port ProtoMod Scheduler Reschedule Protomod_key_string SorryAddress:Port Sorry_cc Sorry_flag -> RemoteAddress:Port Forward Weight ActiveConn InactConn TCP moon:80 httpmethod rr 1 --method GET -> sourceforge.net:http Masq 1 0 3 -> sourceforge.jp:http Masq 1 0 3 TCP moon:80 httpmethod rr 1 --method POST -> www.amazon.co.uk:http Masq 1 0 2 -> www.amazon.de:http Masq 1 0 1 TCP moon:80 httpmethod rr 1 --method HEAD -> www.Sony.CO.JP:http Masq 1 0 1 -> www.sony.net:http Masq 1 0 1 TCP moon:80 sessionless rr 1 -> www.mcdonalds.co.jp:http Masq 1 0 1 -> mcdonalds.com:http Masq 1 0 1 ★ この場合の振り分け moon:80 に GET リクエストがきた場合 → sourceforge サーバグループに振り分け moon:80 に POST リクエストがきた場合 → amazon サーバグループに振り分け moon:80 に HEAD リクエストがきた場合 → sony サーバグループに振り分け moon:80 に上記以外のリクエストがきた場合 → mcdonalds サーバグループに振り分け(sessionlessモジュールを利用) なお、URL モジュールで振り分けを行う場合も上記のように同一の VIP:PORT で 複数の仮想サービスを設定することとなります。 また、仮想サービスの追加順序も考慮する必要がありますので気をつけてください。 -- Shohei Azuma <shohe****@pluga*****> PlugandPlayTechCenter -------------- next part -------------- HTMLの添付ファイルを保管しました... Download