[AWS,VPCの復習!]構造・冗長化について[EC2とサーバーの違い,BCP]
メンターさんの解説がめちゃくちゃわかりやすかったので、まとめておく。
AWSの構造とシステムの冗長化について
システムを構築するとき、すべてを二重化(冗長化)するのが基本!
これは、障害が発生してもサービスを継続できるようにするため。
たとえば、ECサイトで決済中にサーバーが落ちたら、大問題になる!
そのため、AWSではマトリョーシカのように多層構造でバックアップを用意 しておく。
⬇️図にするとこんな感じ。(字が汚くてすみません…)
EC2の冗長化
AWSでは、EC2(仮想サーバー)を2つ以上用意し、片方がダウンしてももう片方で対応できるようにする。
上記図だと、AとBの2種類のEC2インスタンスがある。
もし、Aが震災などで使えなくなっても、Bで対応させることでシステムを継続できる。
この時、待機しているEC2(Bインスタンス)の状態は、プロジェクトの要件やコストによって変わる。
冗長化の種類 | 特徴 |
---|---|
アクティブ-スタンバイ | Aが動作中、Bは待機(障害時にBが起動) |
アクティブ-アクティブ | AもBも同時に動作し、負荷を分散 |
コールドスタンバイ | Bは完全停止(障害発生時に手動で起動) |
ホットスタンバイ | Bは常に起動していて、すぐ切り替え可能 |
📌 金融系システムなどでは、重要な処理ほど「ホットスタンバイ」や「アクティブ-アクティブ」が使われる! (でもその分コスト(電気代など維持費)がかかる)
この辺の内容は、基本情報でもでてきた。
EC2とサーバーの違いは?
EC2は仮想サーバー。EC2とサーバーはイコールと考えていい。
サーバーは、冷蔵庫くらい大きいサイズの物理コンピュータ。
それを1つの会社で管理するのは、電気代・空調設備・物理的な設置スペース・ハードウェアの保守管理…など、すごいコストがかかる!
クラウドインフラは、その物理サーバーを用意しなくても、画面をポチポチ(AWSのマネジメントコンソールを数クリック)するだけで、EC2インスタンス(サーバー)を立ち上げることができる。
AWSのEC2は、物理サーバーの管理コストを削減しつつ、柔軟にサーバーを運用できる のが特徴。
項目 | 物理サーバー | EC2(仮想サーバー) |
---|---|---|
設置場所 | 企業のデータセンター | AWSのクラウド上 |
管理コスト | 電気代・空調・メンテナンスが必要 | AWSがインフラを管理するため不要 |
導入スピード | 購入・設置に時間がかかる | 数クリックで即座に作成可能 |
スケール(拡張性) | 物理的な増設が必要 | 必要に応じてすぐ増やせる |
耐障害性 | ハードウェア障害時にダウン | マルチAZ構成で高可用性 |
📌ポイント
- 物理サーバーは、設置や運用コストがかかるが、カスタマイズ性が高い
- EC2は、管理コストを抑えつつ、オンデマンドで拡張できる
サーバとは何か、なんとなくでしか理解してないので、このポストを見た時「ウッ…💦」となりました。
クラウドインフラの利点
クラウドの登場によって、サーバーを「買う」時代から「借りる」時代へと変わっていった。
物理サーバーを用意することなく、AWSのEC2を使えば、誰でも簡単にサーバーを立ち上げられる時代になった。
✅ クラウドのメリット
- 物理サーバーの管理が不要(電気代・空調・スペースの削減)
- 必要なときに必要な分だけサーバーを作成・削除できる
- オンプレミス環境よりも柔軟にスケール可能
📌例えば…
- ECサイトの負荷が急増したら、EC2インスタンスを自動で増やして対応
- 開発環境を短期間だけ作りたいとき、EC2をすぐに立ち上げて使う
- 障害時にも、別のリージョンやAZで即座に復旧可能
リージョンとAZ(アベイラビリティゾーン)の分散
AWSでは、東京(ap-northeast-1)や大阪(ap-northeast-3)などのリージョン(地域)を選択できる。
また、リージョン内には複数のアベイラビリティゾーン(AZ) があり、それぞれ独立したデータセンターになっている。
✅ 銀行などの重要なシステムでは、以下のような構成が一般的
(銀行はオンプレミスが多いらしい)
- 本番環境(アクティブ) → 東京リージョン
- 予備環境(待機系) → 大阪リージョン
📌これにより、東京全体で災害が発生しても、大阪でシステムを復旧できる!
AZの識別番号
ap-northeast-1a
ap-northeast-1b
ap-northeast-1c
📌同じリージョン内でも、AZが分かれているため、片方のデータセンターが障害を起こしても、もう片方で運用可能!
BCP(Business Continuity Plan:事業継続計画)
AWSのようなクラウド環境では、BCP(事業継続計画)を考えたシステム設計が重要 になる。
これは、システムが障害や災害に遭っても、業務を継続できるようにするための計画のこと。
📌「BCP」は、基本情報技術者試験でも登場する重要な概念!
Discussion