■ 構築問題 第十八問
おね〜さんと、
ほげたんのっ!!
3 Minutes Networking、
Step by Step !!
前回はリバースプロキシを使って、Webサーバへの負荷を軽減させたりセキュリティをアップしたり、したわけね。
通常の外部へのキャッシュじゃなくて、外部からのキャッシュだからリバースなんだね。
そゆこと。じゃ、もう1問負荷分散にからんだ問題を。
まだ負荷分散ってあるんだ?
そりゃもう。負荷分散はネットワークで絶対考えなきゃいけないことなんだからね。
Webサーバの負荷を分散しなさい
[FigureSS18-01:第十八問]
- 現在のネットワーク構成は第十四回の問題と同じとする
- Webサーバへのアクセスの負荷を軽減する
- Webサーバは会員制ページを使用しており、その認証が必要である
- 会員制ページへのアクセスが最近増大しつつある
会員制ページ?
そう。
もしかして、今回の問題これがキーワード?
というか、前の問題から変わってるところはそこなんだから、そこがキーワード以外になりえないでしょ?
■ 構築問題 第十八問 解答
え〜っと、会員制ページ。そこの利用が増大…。
会員制ページってことは、会員じゃないと入れないってことね。
うん、それはさすがにわかるよ。
「認証が必要」って問題文にもあるし。
ってことは、何を使うの?
認証プロトコル。それと…認証を暗号化するための、SSL?
そうそう。SSLよね。HTTPS使わずして、会員制ページなんて今時考えられないもの。
SSLを使った状態で、負荷分散/軽減といえば?
SSLでの負荷分散/軽減……。
……、SSLアクセラレータ !!
うん。ページの暗号化/復号化を行うHTTPSは、サーバの処理能力を大幅に喰らい尽くすといわれてるわね。
「喰らい尽くす」って、なんか男前な表現するね、おね〜さん。
(ギロリ)
う、うん。うんうんうんうん。
喰らい尽くすよね、SSLの処理は。一説によると、サーバの処理が1/100ぐらいになるとかならないとか。
よって、サーバの処理能力を軽減するために、SSLアクセラレータを導入するわけね。
おーけーおけー。配置して。
こんな感じ?
[FigureSS18-02:ほげたんの解答]
うんうん、アプライアンス型のSSLアクセラレータね。カード型もあって、サーバのスロットに追加する形になるわよね。
イメージ的には、「SSLを行うリバースプロキシ」でいいのかな?
う〜ん、あってるかあってないか微妙なところね〜。
暗号・復号化と、ポートの付け替えを行うのがその役割なんだけどね。
[FigureSS18-03:SSLアクセラレータの役割]
HTTPS(ポート443)できた要求を、復号化して、HTTP(ポート80)に変えてWebサーバに渡すんだね。
そういうことよね。ポイントとしては、まぁ、いくつかあるんだけど。
まず、SSLアクセラレータは処理能力を維持するために、限界セッション数が決められてるのがほとんどなの。
へぇ。限界セッション数を超えた場合はどうするの?
カスケード接続して次のアクセラレータに流すの。例えば、100セッションが最大だとすると、こう。
[FigureSS18-04:SSLアクセラレータのカスケード接続]
限界セッション数だけ処理して先送りするんだ。
へ〜。これがSSLアクセラレータのカスケード接続かぁ。
そゆこと。これにより、SSL処理をさらに負荷分散することになるわけね。
並列じゃなくて、直列に配置するんだね。なんか、面白いよね。
そう言われればそうかも。普通、負荷分散といえば、並列よね。
あぁ、そうそうそう、追加問題。
追加?
Webサーバも負荷分散したいから。ロードバランサを置いて?
サーバ2台に負荷分散ね。
うぇ? ロードバランサ?
えっと……ココ?
[FigureSS18-05:SSLアクセラレータとロードバランサ]
なんでこの位置なの?
なんでって、それはSSLアクセラレータの前に置いたら、分散しないから。
じゃあ、アクセラレータが2台だったら? こうでもいいってこと?
[FigureSS18-06:SSLアクセラレータとロードバランサ・2]
いい……んじゃないかな?
ポイントは、ロードバランサの割り振り方式とセッション維持ね。
割り振り方式? セッション維持?
特にセッション維持。
セッション維持ってあれだっけ。同じセッションの間は同一のサーバへ割り振るって奴だっけ。
そう。その方法は?
IPアドレスとか、Cookieとかで判別する?
うん。IPアドレスは割り振り法としては弱いわよね。Cookieはいいけど、SSLだとCookieは暗号化されてしまっているのでロードバランサは読み取れないのよ。
あぅ。そりゃまずいね。
なので、SSLアクセラレータで復号後に、振り分けを行う必要があるの。だから、バランサはアクセラレータの後ろになるってことね。
なるほど。
まぁ、SSLのセッションIDを使うっていう手もあるから、一概には言えないけどね。
あと、SSLアクセラレータ+ロードバランサっていうアプライアンスもあるから、そっちを使うとか。
セッションIDは暗号化されてないんだっけ?
されてないわよ。SSLのヘッダ部にあるからね。
他にもアプリケーションデータの部分の何かを使用する場合は、バランサよりアクセラレータを前に持っていくことがポイントね。
中身を読み取れるように、だね。
そゆこと。配置をよく考えること。必然性のない配置はないってことね。
了解だよ。
じゃ、また次回。 おね〜さんと、
ほげたんのっ!!
3 Minutes Networking、
Step by Step !! でした〜〜〜っ!!
まったね〜〜〜!!