投稿日:2004年06月03日 作成鷹の巣

No.16279 Webサーバ2台で負荷を軽減する場合、バーチャルホストの設定内容は?



Webサーバ2台で負荷を軽減する場合、バーチャルホストの設定内容は?

No.16279 投稿時間:2004年06月03日(Thu) 20:29 投稿者名:松本 URL:

はじめまして。
使い方がわからずどなたかご教授願えたらと思い投稿させていただきます。

webサーバを構築し(www.test.net)、2台目のパソコン(www1.test.net)にバーチャルホストでアクセスさせたいと思っております。メインはwww.test.netですので、httpd.confにバーチャルホストとして記入すればいいのかと思うのですが・・・。
<VirtualHost 192.168.0.5>~~~~~~~~~</VirtualHost>ここの書き方はどのようにしたらいいのでしょうか?
もしかしたら、この方法も間違っているのかも知れないのですが・・・。
最初にやってみたいと思ったのは、webサーバを2台で負荷を軽減できないかと思います。
どなたかよろしくお願いします。


Apacheのバーチャルホストの書き方の例。

No.16283 投稿時間:2004年06月03日(Thu) 21:38 投稿者名:がる URL:

> webサーバを構築し(www.test.net)、2台目のパソコン(www1.test.net)にバーチャルホストでアクセスさせたいと思っております。メインはwww.test.netですので、httpd.confにバーチャルホストとして記入すればいいのかと思うのですが・・・。
> <VirtualHost 192.168.0.5>~~~~~~~~~</VirtualHost>ここの書き方はどのようにしたらいいのでしょうか?
> もしかしたら、この方法も間違っているのかも知れないのですが・・・。
> 最初にやってみたいと思ったのは、webサーバを2台で負荷を軽減できないかと思います。
> どなたかよろしくお願いします。

Apacheのバーチャルホストの書き方ですね。(最低限こんなくらいかな?
httpd.conf .. Apache2.0
<VirtualHost 192.168.0.5:80>
ServerAdmin webmaster@test.net
DocumentRoot /home/httpd/www/html/
ServerName www.test.net
ErrorLog /home/httpd/www/log/error_log
CustomLog /home/httpd/www/log/access_log common
</VirtualHost>
あとは、カスタマイズしてください。

webサーバを2台ということは、グローバルアドレス2個いりますので。(ポート別に分けるのなら別ですが・・


グローバルアドレス2個は必須ではないです。

No.16287 投稿時間:2004年06月03日(Thu) 23:44 投稿者名:三島 URL:

> webサーバを2台ということは、グローバルアドレス2個いりますので。(ポート別に分けるのなら別ですが・・

他のレスにあるようにdelegateやmod_proxyなどでグローバルアドレス2個は必須ではないです


負荷を軽減という前提でdelegateやmod_proxyは有効になりますか?

No.16289 投稿時間:2004年06月04日(Fri) 00:41 投稿者名:がる URL:

> > webサーバを2台ということは、グローバルアドレス2個いりますので。(ポート別に分けるのなら別ですが・・
> 他のレスにあるようにdelegateやmod_proxyなどでグローバルアドレス2個は必須ではないです

負荷を軽減という前提でグローバルアドレス2個をもつよりも、
delegateやmod_proxyは有効になりますか?

間違っていれば、すみません、技術不足です。


ホスト名を変えて、2台目のパソコンにアクセスさせることはできるのでしょうか?

No.16292 投稿時間:2004年06月04日(Fri) 09:55 投稿者名:松本 URL:

がるさん、三島さんありがとうございます。

バーチャルホストの書き方についてはわかりました~。ありがとうです。

私が行いたいのは、1台のパソコンにアクセスが多いため、2台目にアクセスを分散したいのですが・・・。
www.test.netは1台目のパソコンにアクセスさせて、www1.test.netは2台目のパソコンにアクセスさせることはできるのでしょうか?2台ともルーターでつながっており、ローカルでは192.168.0.4と192.168.0.5のIPになります。
または、www.test.netのアクセスで、http://www.test.net/papaにアクセスがあった場合は、2台目のパソコンにアクセスをするような方法でもいいです。

あまり詳しくないので、質問の仕方もこれでいいのかわからないのですが、どなたかよろしくお願いします。


帯鯖さんの回答を参考に

No.16294 投稿時間:2004年06月04日(Fri) 11:24 投稿者名:サバンナ URL:

帯鯖@名古屋さんの投稿
http://sakaguch.com/PastBBS/0032/B0016240.html#No16264

ここに答えがすべて書いてあります。(最後の2行)

mod_proxy ではCGIが重い場合等は有効ですが、今回の場合当てはまりません。


他にも案があればよろしくお願いします。

No.16298 投稿時間:2004年06月04日(Fri) 17:48 投稿者名:松本 URL:

ありがとうございます。

やはり一番手っ取り早いのはグローバルを複数もらってやるのが一番みたいですね。
一つのグローバルではやはり難しいですか・・・。
負荷を軽減する方法って他にないですかね?2台で負荷が軽減出来ると一番いいのですが・・・。
やはり難しいですね・・・。cisco CSSって高いみたいですから購入するとなると難しいですしね。

ありがとうございました。
もし、他にも案があればよろしくお願いします。


プロバイダの多重化も一案

No.16375 投稿時間:2004年06月10日(Thu) 23:54 投稿者名:帯鯖 URL:

帯鯖@名古屋です。

# ご参照いただき、ありがとうございます。

私も、負荷分散をしたい1人です。

思うのですが、サーバを並列化し、仮想プロキシやL7スイッチで
分岐させたとしても、1本の回線を共有することは変わりません。

少し前の時代では、クライアント側の回線速度はさほど速くなかったので、
1本の物理線で足りていました。が、最近はクライアント側から数十Mbpsで要求が
飛んでくるので、サーバ側の線がすぐに負けてしまいます。
特に、多重時は、顕著なほどレスポンスが悪化します。

じゃあどうすればよいか??

プロバイダを多重にしてみればよいのではないでしょうか?
(私はこれを検討しています。)

例えば、クライアントAが、プロバイダ1経由でサーバXとセッションを張っています。
そこに、クライアントBがリクエストを出しました。


1本の線で負荷分散している場合

クライアントBが、サーバYへセッションを確立した場合、
サーバ単位ではリソース占有率を下げることができますが、同じ線を共有する以上、
クライアントBのほか、クライアントAへのレスポンスタイムは遅くなります。

2本の線で、それぞれサーバを構築した場合

クライアントBが、プロバイダ2経由で、サーバYへセッションを確立したとしても、
クライアントB、クライアントAへのレスポンスタイムは、1本の時と比べて、
さほど変わらないはずです。


「負荷分散」を考える場合、どこでタイムラグが発生しているのかが重要です。

サーバのリソースが限界に近い値で推移する場合は、仮想プロキシやL7スイッチでの
分散が有用ですが、明らかに回線共有による遅延が考えられる場合は、
物理線を多重化する方法で対処が可能かと思います。


> ありがとうございます。
>
> やはり一番手っ取り早いのはグローバルを複数もらってやるのが一番みたいですね。
> 一つのグローバルではやはり難しいですか・・・。
> 負荷を軽減する方法って他にないですかね?2台で負荷が軽減出来ると一番いいのですが・・・。
> やはり難しいですね・・・。cisco CSSって高いみたいですから購入するとなると難しいですしね。
>
> ありがとうございました。
> もし、他にも案があればよろしくお願いします。


|目次|掲示板|過去ログ目次|▲頁先頭|