Upload
toyoshi
View
8.844
Download
1
Embed Size (px)
Citation preview
冗長化とは
• – 冗長化 Redundancy–最低限必要な量より多めに設備を用意しておき、一部の設備が故障してもサービスを継続して提供できるようにシステムを構築するこ
と。e-words.jp - 冗長化
http://e-words.jp/w/E58697E995B7E58C96.html
SPOF(単一障害点)
• Single Point of Failure–その一点に異常が発生すると、システム全体に障害が発生する箇所のこと。
SPOFの例 例: アキレスの踵(かかと)
• ギリシャ神話のアキレスは不死身の肉体を有していたが、踵だけは不死身でなかった。そのため、トロイア戦役でトロイ王子パリスに討たれた。 例: ジークフリートの背中
• ドイツの英雄叙事詩「ニーベルングの歌」の英雄ジークフリートは、竜の血を浴びて不死身の肉体を得たが、背中に菩提樹の葉が張り付いていたため、ここが唯一の弱点となった。 例: 蛮暴狼の背中
• 「闘将 !! 拉麺男」でラーメンマンの幼なじみ蛮暴狼は厳しい修行で筋肉拳を極め、どんな攻撃でも傷つけられない不死身の肉体を手に入れる。しかし少年時代に背中に張り付いた葉っぱが彼の唯一の弱点となった。背中の枯葉に気が付いたラーメンマンに、その部分は鍛えられていないことを見抜かれ、倒される。
素朴なサーバシステム
インターネットインターネットルータ
Webサーバ
SPOF!
予備機の導入(コールドスタンバイ)
インターネットインターネットルータ
Webサーバ
ルータ(予備)
Webサーバ(予備)
ルータが故障!
インターネットインターネットルータ
Webサーバ
ルータ(予備)
Webサーバ(予備)
故障
ルータ(予備)
ルータ(予備)
Webサーバ
ルータ(予備)
サーバが故障!
インターネットインターネット
Webサーバ
ルータ(予備)
ルータ(予備)
ルータ(予備)
Webサーバ
ルータ(予備)
故障
ルータ
Webサーバ(予備)
故障
コールドスタンバイの問題点
• 主系と待機系の環境を全く同じにしておかねばならない–実運用的には困難なことも多い
• 配線の切り替え、機器の起動などでダウンタイム(停止時間)が発生してしまう–深夜に障害が発生したら?
ホットスタンバイ( Active/Stand-By)
インターネット
同期
Webサーバ
Webサーバ(予備)
インターネット
ルータ(予備)
ルータ
フェイルオーバー( Failover)
• フェイルオーバー–主系に障害が発生したときに、自動的に処理を待機系に引き継ぐこと
–ここでは仮想 IPアドレス (VIP/ VurtualIP)を用いる
• ヘルスチェック–主系での障害発生を検出する仕組み–例:
• ICMPによる問い合わせ• HTTP GETによるチェック
VIPによる IPアドレスの引き継ぎ(1)
インターネット
10.0.0.101
10.0.0.102
インターネット
ルータ(予備)
ルータ
VIP:10.0.0.100
ユーザ
VIPによる IPアドレスの引き継ぎ(2)
インターネット
10.0.0.101
10.0.0.102
インターネット
ルータ(予備)
ルータ
VIP:10.0.0.100ユーザ
故障
Active/Stand-By構成の問題点
• フェイルオーバー動作が敷居が高い–実は簡単
• 待機系の導入コストが必要–待機系が待機しているだけなのはもったいない
–負荷分散( Load Balance)を用いてActive/Active構成へ
Webサーバの冗長化(1)DNSラウンドロビン
DNSラウンドロビンとは
• DNSラウンドロビン( DNS Round Robin)– DNSを利用して、一つのサービスに複数台のサーバを割り当てる方法
–問い合わせの度に異なった IPアドレスを返す(とは限らないが)
概念図
x.y.z.1
x.y.z.2
DNS
ユーザ A
www.example.com IN A x.y.z.1
www.example.com IN A x.y.z.2
www.example.com
x.y.z.1
ユーザ B
www.example.com
x.y.z.2
デモ
• デモ
チープな DNSラウンドロビンは高価なロードバランサの座を奪い返
せるか
それは難しい
DNSラウンドロビンの問題点
• サーバの数だけグローバル IPが必要• 均等に分散されるとはかぎらない• ケータイ端末では一つ目の IPが利用できないときでも、 2番目の IPを用いない場合がある
• サーバがダウンしても、そのサーバにアクセスし続けてしまう–少なくともキャッシュが保持されている間は倒
• あくまで負荷分散を目的とした機能
Webサーバの冗長化( 2)IPVSでロードバランサ
IPVS(IP Virtual Server)
• ソフトウェアでロードバランサを実現するためのソフトウェア
• いわゆる L4スイッチ– L4:トランスポート層– 要するに IPアドレスとポード番号の世界
• OSSで無償利用可能!• 最近のディストリビューションなら導入も簡単
こんな構成
Web1:192.168.1.101
Web2:192.168.1.102
ロードバランサ :
192.168.1.100
仮想サーバVIP:10.0.0.100
ユーザ
デモ
• デモ
LVS-NAT
Web1:192.168.1.101
Web2:192.168.1.102
ロードバランサ :
192.168.1.100
仮想サーバVIP:10.0.0.100
ユーザ
必ずロードバランサを経由する。
http →のトラフィック(量)は非対称。 帯域がもったいない
LVS-DSRDirect Server Responce
Web1:192.168.1.101
Web2:192.168.1.102
ロードバランサ :
192.168.1.100
仮想サーバVIP:10.0.0.100
ユーザ
ロードバランサを経由しない。
大量のトラフィックは直接クライアントに。
Webサーバの冗長化( 3)ルータの冗長化 -VRRP
VRRP(Virtual Router Redundancy Protcol)
• ルータ間の冗長構成を実現するためのプロトコル
• こんどやります。