中居憲久
nakai****@yes*****
2008年 12月 26日 (金) 10:09:06 JST
中居です。 お疲れ様です。 文中にレスします。 > 1. プロトコルモジュールにするかスケジュールモジュールにするか? > > サンプルはスケジュールモジュールとして実装しています。 > (LVS とあわせて sh としています) > しかし、IP (インターネットプロトコル) でパーシステンス処理をする > という意味ではプロトコルモジュールでもよさそうです。 > ただし、プロトコルモジュールとした場合は、その際に設定する > スケジュールモジュールが意味を持たなくなります。 > (絶対にスケジュールモジュールを通らないため) LVSの実装そのままだとscheduleでも不明瞭になりそうですね(^^;;; sourceipのハッシュ値から接続先を決めるので。 l7vsd的な感じから云えば 1) プロトコルモジュールはclientIPとリアルサーバのEndPointのハッシュマッ プを持つ 2) プロトコルモジュール側で新規IPがきたときにはスケジュールモジュールに 依頼して振り出してもらう。 3) ハッシュマップにヒットするならばそのリアルサーバに接続 このような実装ならばスケジュールモジュールが意味を成すような感じですが。 あとはハッシュマップの要素の寿命を考察する必要もありますか。 > 2. weight が 0 のサーバに振り分けるか? > サンプルは weight が 0 のサーバには振らないようにしています。 > しかし、LVS では weight が 0 のサーバも対象になっています。 > つまり、最初は正常だったサーバが異常になった場合、LVS だと > パーシステンスを重要視して、回復するまで繋がらない仕様、 > 今回のサンプルだと weight が変わった場合にマッピングし直すため、 > 別のサーバに振りなおす仕様。この仕様の場合、正常なサーバへ > 振られていた IP にも影響し別のサーバに振られる可能性があります。 これもsorryが意味を成さなくなりそうですよね。 ただ、モジュールオプションで振り分けるかどうかは決められそうです。 デフォルトは振り分けでも。 以上、簡単ですがどうぞよろしくお願いいたします。