冗長化
設計レビューの続きです。構成図にWebサーバーが2つ描かれています
「Webサーバーは2台、別々のAZに置きます。1台落ちても止まらないように」
「冗長化」って、何のことだろう…?
冗長化は、同じ役割のものを複数用意して、1つが壊れても全体が止まらないようにすることです。
わざと「余分」を持っておきます。
このページで分かること
- 冗長化は、同じ役割のものを複数用意して、1つが壊れても全体が止まらないようにすること
- 「ここが1つ壊れたら全部止まる」という場所を単一障害点という
- 複数用意しても、同じ場所に置くと一緒に止まる
- データベースも、別のAZに控えを置いて自動で切り替える方法がある(AWSならRDSのマルチAZ)
身近な例えで理解する
エレベーターが2基あるマンションでは、1基が故障や点検で止まっても、もう1基で上の階へ行き来できます。1基しかなければ、止まっている間は階段を使うしかありません。ただし、建物全体が停電すると、2基とも止まります。
- エレベーターサーバー
- 2基ある2台用意する(冗長化)
- 1基が止まっても、もう1基で行き来できる1台が止まっても、もう1台でサービスを続けられる
- 停電すると2基とも止まる同じAZに置くと、AZのトラブルで2台とも止まる
数を増やすだけでなく、「一緒に止まらない」ように別々のAZに分けて置くのが大事です。
ちょっと確認
Q1先輩のひとこと
先輩「Webサーバーは別々のAZに2台置いたけど、DBは1台だけなんだよね」
何が心配?
例えを外して、実際のしくみ
ここからは実際のしくみ
単一障害点
「ここが1つ壊れたら、全部止まる」という場所のことです。サーバーが1台だけ、DBが1つだけ、などがそうです。冗長化は、単一障害点をなくすための工夫です
AZを分ける
このページのまとめ
- 冗長化
- 同じ役割のものを複数用意して、1つ壊れても止まらないようにすること
- 単一障害点
- そこが1つ壊れると全体が止まる場所
- AZを分ける
- 一緒に止まらないよう、別々のデータセンターのまとまりに置くこと
- マルチAZ(RDS)
- 別のAZに控えのDBを置き、自動で切り替える構成
先輩のひとことの意味
先輩「Webサーバーは2台、別々のAZに置きます。1台落ちても止まらないように」
「Webサーバーを冗長化する。しかも同じAZではなく別々のAZに置いて、片方のAZでトラブルがあっても、もう片方で動き続けるようにする」という意味です。どちらに届けるかはロードバランサーが決めます。
練習問題で確かめる
Q24択
次の構成で、単一障害点になっているものは? 「ロードバランサー(複数のAZにまたがって動く) → Webサーバー1台 → DB(マルチAZで、別のAZに控えあり)」
参考資料
ご意見・「これで例えて!」を募集しています
ご意見・ご感想・質問・間違いのご指摘など、何でもお気軽にお寄せください。「この言葉も例えで説明してほしい」「こんな例えなら分かりやすい」という声をもとに、新しいページや例えを作ります。
- 説明してほしいITの言葉
- 例えてほしい場面(部活・アルバイト・家事など)
- 分かりにくかったところ・間違いのご指摘
意見箱は準備中です。