Share
Embed
Transcript
29 slides
-
◆目次 1. イントロダクション 2. Design for Failure 3. リージョンとアベイラビリティゾーン(AZ)とは 4.
冗長構成 マルチリージョン構成について - AWSの災害復旧(DR)戦略 マルチAZ構成について - 4/15の東京リージョンAZ障害に触れながら… 5. まとめ Design for Failure - リージョンとAZについて - 3 -
◆イントロダクション Design for Failure - リージョンとAZについて - 4 レジリエンスの分野は、奥が深すぎるので 本日はその一端の、さらに上澄みだけをご紹介します。。
ご興味を持っていただいた話があれば 是非ご自身で深堀りしていただければ幸いです。 -
◆Design for Failure Design for Failure - リージョンとAZについて - 5
(出典)AWS Well-Architected Framework Part1 Blackbelt -
◆Design for Failure Design for Failure - リージョンとAZについて - 6
障害が発生することを前提に システム設計を行いましょう -
◆リージョンとアベイラビリティゾーン(AZ)とは Design for Failure - リージョンとAZについて - 7 リージョン •
地理的に分かれた、データセンター群の集合 • 最低3つのAZによって構成 • それぞれのリージョンは独立していて 法律や規制、災害対策のために分離されている (出典)AWS グローバルインフラストラクチャ | AWS -
◆リージョンとアベイラビリティゾーン(AZ)とは Design for Failure - リージョンとAZについて - 8 アベイラビリティゾーン(AZ) •
1つ以上のデータセンターのまとまり • 互いに高速かつ冗長化されたNWで接続 • 電源・ネットワークなどが物理的に分離 • 最大60マイル(約100km)離れている (出典)re:Invent 2023: AWSバックボーンで変革するグ ローバルネットワーク - Cloud WANとSiteLink活用事例 -
◆各AWSサービスの提供カテゴリ 9 我らが白鳥さんのブログを 是非ご覧ください!! (出典) AWSにおけるリージョンとアベイラビリティーゾーンへ の理解を深める | コラム |
クラウドソリューション| サービス|法人のお客さま|NTT東日本 AWS は、障害分離境界に応じて、 ゾーン、リージョン、グローバルという 3つの異なるカテゴリのサービスを運用しています • ゾーンサービス:EC2、EBSなど • リージョンサービス:S3、DynamoDBなど • グローバルサービス:IAM、CloudFrontなど -
◆各AWSサービスの提供カテゴリ 10 我らが白鳥さんのブログを 是非ご覧ください!! (出典) AWSにおけるリージョンとアベイラビリティーゾーンへ の理解を深める | コラム |
クラウドソリューション| サービス|法人のお客さま|NTT東日本 AWS は、障害分離境界に応じて、 ゾーン、リージョン、グローバルという 3つの異なるカテゴリのサービスを運用しています • ゾーンサービス:EC2、EBSなど • リージョンサービス:S3、DynamoDBなど • グローバルサービス:IAM、CloudFrontなど 各サービスについて どのレベルの冗長構成が必要なのか? そもそもユーザ側で冗長構成を取る必要があるのか? -
◆マルチリージョン構成について - AWSの災害復旧(DR)戦略 Design for Failure - リージョンとAZについて - 13
(出典) AWS でのディザスタリカバリ (DR) アーキテクチャ、パートI:クラウドでのリカバリの戦略 | Amazon Web Services ブログ -
◆マルチリージョン構成について - AWSの災害復旧(DR)戦略 Design for Failure - リージョンとAZについて - 14
(出典) AWS でのディザスタリカバリ (DR) アーキテクチャ、パートI:クラウドでのリカバリの戦略 | Amazon Web Services ブログ -
◆マルチリージョン構成について - AWSの災害復旧(DR)戦略 Design for Failure - リージョンとAZについて - 15
バックアップと復元 ウォームスタンバイ パイロットライト アクティブ/アクティブ -
◆マルチリージョン構成について - AWSの災害復旧(DR)戦略 Design for Failure - リージョンとAZについて - 16
過去に投稿したブログを ご覧ください!! (出典) そのDR対策、本当に大丈夫? - Backup & Restore戦略への提案 #AWS – Qiita -
◆そもそもマルチリージョン構成が必要なのか Design for Failure - リージョンとAZについて - 17 (出典) AWS
re:Invent 2022 - Multi-Region design patterns and best practices (ARC306) - YouTube 要件の明確化が最初のステップ: •「マルチリージョンが必要」と言われるが、本当に必要かは要件次第 •全てのアプリケーションがマルチリージョンを必要とするわけではない マルチリージョンは技術だけの問題ではない: •コストや複雑性も伴うため、ビジネスとの合意形成が不可欠 •「ティア0(プラチナ)」のような分類を通じて、 ダウンタイムによる損失やブランド毀損のリスクを明確化する •たとえば「5分停止するといくらの損失になるのか?」などの 定量的基準が鍵 -
◆話題になりましたね① 22 (出典) AWS障害が発生したアベイラビリティーゾーン「apne1-az4」ってどこ? 世にも奇妙な物語@AWS「あなたが使っているAWSアベイラビリティゾーン(略称AZ)-Aと、私が使っているAZ-Aは、違う世界かもしれない」 AZ名(us-east-1aなど)と AZ ID(use1-az1など)の 紐づけはAWSアカウントごとに異なる 【注意!!】
マルチアカウント環境では 知らないうちにAZ間の通信コストが 発生していたり (0.01USD/GB) AZ障害の発生時の社内の コミュニケーションで困ったり… -
◆そこまで神経質にならなくてもいいですが 気になる方は… 23 (出典) 異なる AWS アカウント間の VPC で一貫したアベイラビリティーゾーンを使用する -
AWS 規範ガイダンス GitHub - aws-samples/multi-account-az-mapping AZ名とAZ IDの紐づけを 各アカウントのパラメータストアに格納 リソース作成時にCloudFormationを利用し AZの指定を パラメータストアの値を参照して行う -
◆ゾーンシフトという選択肢もあります 25 (出典) 2AZ 構成の ALB でゾーンシフトを試してみた | DevelopersIO ゾーンシフトを用いたクロスゾーン負荷分散
| Amazon Web Services ブログ グレー障害に備える 〜ベストプラクティスとApplication Recovery Controller Zonal Shift~ #AWS – Qiita Route 53 Application Recovery Controller のゾーンシフト を試してみた #AWS - Qiita ゾーンシフトで特定のAZへの トラフィックを一時的に遮断 2AZでも使えるが、1AZですべての トラフィックを捌けるかは考える必要がある -
◆AZごとに対応しているインスタンスタイプが異なることも 26 (出典) Availability Zone によって利用可能な EC2 インスタンスタイプは 異なります -
サーバーワークスエンジニアブログ AZ別に提供されているEC2インスタンスタイプの一覧を出力する PowerShellスクリプト #AWS – Qiita EC2作成時に 処理が失敗することも 使いたいインスタンスタイプが 明確になっているときは 全てのAZで利用可能か 事前に確認しておくのがよい -
◆マルチリージョンでもマルチAZでも、ちゃんと訓練しておきましょう! 27 (出典) AWS Fault Injection Service を使用して、 マルチリージョンおよびマルチ AZ
アプリ ケーションの耐障害性を実証する | Amazon Web Services ブログ 戻しを含めて 考えておくのが大事 本番ワークロードでの 利用はやめておくのが無難 -
◆まとめ • AWSのデータセンターは、「リージョン」「アベイラビリティゾーン(AZ)」でグルーピングされており 障害分離境界として機能します • ビジネスインパクトを踏まえて要件を明確にし、それに応じて冗長構成を検討しましょう • 冗長構成の設計は難しい!!(資格試験のようにはいかない) ※素直にAWSさんに相談してみるのもいいと思います •
障害訓練もしておきましょう!! Design for Failure - リージョンとAZについて - 28