最近、(というより少し前から)ロードバランサーという言葉を聞くようになりました。
負荷分散ということで一度ロードバランサーにアクセスさせ、その後の処理を振り分けるといったイメージです。
バックエンドのサーバーはいくつかあると思うのですが、ロードバランサーは1つですよね?
そもそもアクセスのゲートウェイ部分であるロードバランサーにアクセスが集中してダウンするということは無いのでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
一口にロードバランサーと言っても色んな種類があり、ハードとして独立したアプライアンスだったり、仮想的なアプライアンスだったり、汎用的なLinuxサーバ上で作っていたりと様々です。値段も色々ですが、商用製品にはそれぞれどれぐらいまでのアクセスを裁くことができるかという性能値が公表されています。一般的に値段が高い製品ほど性能値が上で、安い製品は下です。ですので、想定されるアクセス数に合わせて製品を買うようにします。
もし、性能値以上のアクセスが来た場合でも、しっかりした作りの商用製品のものはそれによってロードバランサーそのものがダウンするということは滅多にありません。ただし、応答が遅くなったり、一部については応答できなくなったりします。その場合でも、機器自体が固まるというわけでは無く、管理者は性能過多であることが確認できますので、より高性能なものに変えることを検討する必要があります。
ハードウェアの故障やソフトウェアのバグ等によりロードバランサーでもダウンすることはあります。企業の場合は、そのような場合に備えてロードバランサーも2台以上用意して冗長化します。冗長化する方法は色々あるのですが、一般的なものはActive-Standby構成という方法です。二つの機器の内両方が起動しているのですが、負荷分散サービスを提供しているのは常に片方のみでサービス提供用のIPアドレスを持っています。もう片方は常に動いている方を確認し、もし、ダウン等が発生した場合は、即座にもう片方が持っていたIPアドレスでも通信できるようにし、負荷分散サービスを提供し始めます。こうして、たとえダウンしても、サービス全体が停止しないようにします。
他にもDNSラウンドロビンと組み合わせたり、DNSを短く切り替える、相手によって変更する等の方法で一つのロードバランサーに集中させないようにしたりと、ロードバランサー自体を分散化させる方法があります。ただそこまで必要なのは大手のサイトぐらいでしょう。
投稿2016/04/02 06:46
総合スコア21737
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
こんにちは。
Webサイトには、想定以上のアクセスが集中した場合にも安定した通信とサービスの提供が求められます。
この課題に対処するために開発されたのがロードバランサです。具体的には複数の Webサーバにアクセスを分散させ、通信を維持し、サービスを提供します。
ただし、たんに Webサーバへの負荷を分散させるだけであれば、(DNSサーバの設定を工夫して、ひとつのホスト名への名前解決に複数の IPアドレスを使って応答することで Webサーバへのアクセスを分散させる)DNSラウンドロビンという方法もあります。
そう考えると、わざわざ高価なロードバランサを導入する必要はなさそうです。それにもかかわらず、ロードバランサが普及しているのは、サービスダウンを回避する仕組みがあるからです。
ロードバランサは、配下にある Webサーバが正常に稼働しているかどうかつねに監視していて、なんらかの異常が検知されたサーバには処理を割り振らず、べつの正常なサーバに割り振るという重要な役割も担っています。
つまり、こうした冗長化により、アクセスの集中にも(一部の)サーバダウンにもロードバランサは対応できるようになっているのです。
ここで、ご質問の件です。
高度な機能を搭載し、さまざまな機器を冗長化することができるロードバランサももちろん無敵なわけではありません。膨大な量のアクセスによりロードバランサ自体がダウンし、Webサイト全体が停止状態に陥ることはあり得るのです。
そのため、かなりのアクセスが想定される Webサイトの場合には、(設計当初から)ロードバランサを複数台用意し、いずれかが障害を起こしてもサービスが継続できるよう冗長化が施されているケースが増えています。
以上、ご参考いただければ幸いです。
投稿2016/04/02 06:40
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。