サーバ/インフラ構築入門(1)

9,386 views

Published on

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
9,386
On SlideShare
0
From Embeds
0
Number of Embeds
239
Actions
Shares
0
Downloads
36
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

サーバ/インフラ構築入門(1)

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

×