翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
災害対策シナリオ
このセクションでは、単一のアベイラビリティーゾーンまたは AWS リージョンの障害の例を示し、ディザスタリカバリ (DR) のオプションについて説明します。例では、目標復旧時点 (RPO) を 15 分、目標復旧時間 (RTO) を 4 時間としています。
アベイラビリティーゾーン障害
以下のオプションのいずれかを使用して、1 つのアベイラビリティーゾーンの障害から所定のパラメータ (RPO 15 分、RTO 4 時間) の範囲内で復旧できます。
-
最新の Amazon Elastic Compute Cloud (Amazon EC2) イメージバックアップを使用してアプリケーションリカバリをプロビジョニングし、Always On 可用性グループのデプロイまたはログ配布を通じて既存のウォームスタンバイデータベースインスタンスに接続します。
-
SQL Server Always On 可用性グループを 2 つ以上のノードで構成する DR に設定すると、同期コミットモードまたは非同期コミットモードでセカンダリノードへの自動フェールオーバーが可能になるため、データベースをすぐに使用できるようになります。HA セットアップでは、両方のノードで読み取り操作が可能です。このオプションは RTO と RPO の両方の要件を問題なく満たします。SQL Server Standard エディションでは、基本的な可用性グループを使用することもできますが、可用性グループには 1 つのデータベースしか含めることができないため、ノードは 2 つに制限されます。ただし、1 つのリージョン内またはリージョン間で複数の可用性グループを設定できます。この設定では、読み取り操作にアクセスできないセカンダリノードに追加コストがかからないため、コストが削減されます。SQL Server Enterprise エディションは、単一の可用性グループ内のすべてのデータベースに対して完全な機能とフェイルオーバーを提供します。このオプションの例については、以下のアーキテクチャ図を参照してください:
-
DR ソリューションとしての SQL Server のログ配布では、ログバックアップの頻度に応じて、スタンバイサーバーへの手動フェールオーバーが必要です。これは最も安価な DR オプションの 1 つです。プライマリ DR サイトとログシッピングされた DR サイトの SQL Server エディションは一致する必要はありません。このオプションは RPO (5 分ごとにトランザクションログのバックアップを使用) と RTO を満たしていますが、手動のカスタムスクリプトによるメンテナンスが必要です。このオプションの例については、次のアーキテクチャ図を参照してください:
-
-
SQL Server Reporting Services (SSRS) アプリケーションのようにスケールアウトデプロイされたアプリケーションを使用している場合、ロードバランサーはすべてのトラフィックをセカンダリノードにリダイレクトできます。
-
Amazon EC2 ベース AMI をアプリケーションとデータベースサーバーに使用して、インフラストラクチャをプロビジョニングできます。データベースは、そのサイズとバックアップ頻度に応じて、最新のネイティブバックアップ (フルバックアップ、差分バックアップ、トランザクションログバックアップ、5 分ごとのトランザクションログバックアップ) から、または EBS スナップショットを使用して新しいアベイラビリティーゾーンに復元できます。このオプションは RPO と RTO の要件を満たしますが、カスタムスクリプトが必要です。インフラストラクチャのプロビジョニングに必要な時間も考慮する必要があり、RPO と RTO の要件を満たすことは困難です。
-
アプリケーションとデータベースサーバーの両方の Amazon EC2 イメージ (EBS ボリュームを含む) は、新しいアベイラビリティーゾーンで復元できます。最新のバックアップによっては RPO が難しい場合がありますが、このオプションを最新のトランザクションログと組み合わせて要件を満たすこともできます。このオプションは、Windows ボリュームシャドウコピーサービス (VSS) スナップショットをサポートします。
リージョン障害
次のいずれかのオプションを使用して、特定のパラメータ (RPO 15 分、RTO 4 時間) 内の単一の AWS リージョン障害から復旧できます。
-
インフラストラクチャのプロビジョニングには、アプリケーションサーバーとデータベースサーバーにAmazon EC2ベースのAmazon マシンイメージ (AMI)を使用できます。データベースは、そのサイズとバックアップ頻度に応じて、最新のネイティブバックアップ (完全バックアップ、差分バックアップ、または 5 分ごとのトランザクション ログ バックアップ) から新しいリージョンに復元できます。このオプションは RPO と RTO の要件を満たしますが、カスタムスクリプトが必要です。
-
DR ソリューションとしての SQL Server のログ配布では、ログバックアップの頻度に応じて、スタンバイサーバーへの手動フェールオーバーが必要です。これは最も安価な DR オプションの 1 つです。プライマリ DR サイトとログシッピングされた DR サイトの SQL Server エディションは一致する必要はありません。このオプションは RPO (5 分ごとにトランザクションログのバックアップを使用する) と RTO を満たしていますが、手動のカスタムスクリプトによるメンテナンスが必要です。大規模なデータベースは、長い復元時間を必要とします。
-
-
Amazon EC2 AMI をアプリケーションとデータベースサーバーの両方に使用し、新しいリージョンのターゲットに復元できます。RPO は、バックアップのサイズと頻度によります。
-
最新のアプリケーションイメージは AMI を使用して復元できます。5 分ごとに最新のネイティブ差分バックアップまたはトランザクションログバックアップを使用して、RPO を満たすようにデータベースを最新の状態に保つことができます。
-
RTO は、ソースがまだターゲットと同期していない場合の、新しいリージョンへのスナップショットの転送と復元にかかるサイズと時間によって異なります。
-
-
ダウンタイムが最も短い解決策は、2 ノード、3 ノード、または 4 ノードの可用性グループセットアップ (基本、クラシック、または分散) を使用してリモートリージョンにアプリケーションのバックアップイメージを復元し、ウォームスタンバイ SQL Server ノードを設置し、フェールオーバー後にスタンバイデータベースサーバーに接続することです。同期コミットモードのレプリカは RPO 要件を満たしますが、非同期コミットモードのレプリカはトランザクションの量によっては遅延する可能性があります。必要に応じて、分散可用性グループ構成を使用して新しいリージョンのデータベースノードをスケールアウトできます。この構成では、同期コミットモードでも非同期コミットモードでも、リージョンにまたがる 1 つの可用性グループの代わりに 2 つの独立した可用性グループを使用するため、複雑さも軽減され、RTO と RPO の両方の要件を問題なく満たすことができます。また、Standard エディションで SQL Server の基本的な可用性グループを使用することもできます。ただし、サポートするノードは最大 2 つで、複数の可用性グループがサポートされていますが、1 つの可用性グループには 1 つのデータベースしか含めることができないため、制限があります。SQL Server Standard エディションは、1 つのリージョン内またはリージョン間でセットアップできます。このエディションでは、読み取り操作にアクセスできないセカンダリノードには課金されないため、コスト削減が可能になります。SQL Server Enterprise エディションは、すべての機能を提供し、単一の可用性グループフェイルオーバーとしてすべてのデータベースのフェイルオーバーをサポートします。
一般的なユースケース
サイジングの課題として、Amazon EC2 上で実行され、通常のオンライントランザクション処理 (OLTP) ワークロードがある SQL Server アプリケーションの 80% は、その重要度に応じて 3 つのカテゴリのいずれかに分類できます。
-
SQL Server の HA/DR と SQL Server のバックアップ、2 つの同期コミットレプリカと 1 つの非同期コミットモードのレプリカを使用します
-
AWS Backup アプリケーションとデータベースの両方に Amazon EC2 AMI を使用し、Amazon EBS ストレージを使用する、SQL Server バックアップによる HA/DR
-
AWS Backup データベースサーバーの Amazon EC2 ベース AMI、アプリケーションの Amazon EC2 イメージ、Amazon EBS スナップショットを使用した SQL Server バックアップによる HA/DR
次の表に、各カテゴリについての詳細を示します。
SQL Server バックアップによる SQL Server HA/ DR | AWS Backup AMIs、EBS ストレージ、SQL Server バックアップを使用した HA/DR | AWS Backup AMIs、EBS スナップショット、SQL Server バックアップを使用した HA/DR | |
---|---|---|---|
障害発生時のリストアプロセス |
|
|
|
主要リソース |
|
|
|
HA/DR |
HA と DR を提供します |
DR のみを提供します |
DR のみを提供します |
RPO |
フェイルオーバーは SQL Server 可用性グループによって処理されます (DR は手動) |
手動またはカスタムスクリプト |
手動またはカスタムスクリプト |
RTO |
秒から分 |
分から時 |
複数時間 |
SLA が適用されないリスク |
低 |
Medium |
高 |
管理の容易性 |
低 |
Medium |
Medium |
スケーリング |
低 |
Medium |
Medium |
Amazon S3 へのアップロードまたはクロスリージョン転送のファイルサイズ制限 |
N/A ーーウォームスタンバイへの同期コミットモードまたは非同期コミットモードで処理されます |
あり |
あり |
データロス |
ほぼゼロ (プロビジョニングされるワークロードとインフラストラクチャーにより異なる) |
Amazon EC2 バックアップ イメージと SQL Server バックアップの頻度によって異なります。 |
Amazon EC2 バックアップ イメージまたは EBS スナップショットと SQL Server バックアップの頻度によって異なります。 |
コスト |
Medium |
低~中 |
低~中 |