View a markdown version of this page

Aurora プロビジョンドスケーリング実行ブロック - Amazon Application Recovery Controller (ARC)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Aurora プロビジョンドスケーリング実行ブロック

カテゴリ: データベーススケーリング

リージョンを切り替えると、レプリケート先リージョンの Aurora プロビジョニングデータベースがレプリケート元リージョンよりも小さなインスタンスクラスを実行している可能性があり、本番トラフィックを処理するためのコンピューティング容量が不足している可能性があります。Aurora プロビジョンドスケーリング実行ブロックは、レプリケート先インスタンスをレプリケート元インスタンスクラスに合わせて自動的にスケーリングし、トラフィックが到着した時点でデータベースが本番稼働負荷を完全に処理できるようにします。

主な利点

  • 自動容量マッチング: リージョンスイッチは、ソースインスタンスクラスを読み取り、ターゲットインスタンスを一致するようにスケーリングするため、フェイルオーバー後にプロビジョニング不足のデータベースが本番トラフィックを受信するリスクがなくなります。

  • 必要に応じてインスタンスを作成する: 送信先インスタンスがまだ存在しない場合、リージョンスイッチは正しいインスタンスクラスでインスタンスを作成します。

  • クロスファミリーインテリジェンス: 送信元インスタンスタイプが送信先リージョンで使用できない場合、リージョンスイッチは同じ vCPU とメモリを持つ同等以上のインスタンスタイプを自動的に選択するため、インスタンスタイプの互換性マッピングを自分で維持する必要はありません。

どのようなときに使うか

Aurora でプロビジョニングされたインスタンスがトラフィックが移行する前に本稼働キャパシティーにある必要がある復旧計画。

  • アクティブ/パッシブ Aurora グローバルデータベース: セカンダリリージョンは、書き込みトラフィックを受信する前にスケールアップする必要がある、より小さい (より高速な) リーダーインスタンスを実行します。

  • コスト最適化スタンバイリージョン: コストを節約するために、スタンバイリージョンで意図的に小さなインスタンスを実行し、フェイルオーバー中に自動的に適切なサイジングを行う必要があります。

Aurora プロビジョンドスケーリングと代替方法の比較

この実行ブロックがないと、リージョンを切り替える前に、手動で、またはカスタムオートメーションを使用して、送信先データベースの容量を確認する必要があります。

アプローチ 長所/短所
1 Aurora プロビジョンドスケーリングブロック 完全に自動化され、クロスファミリーマッピングを処理し、リージョンスイッチオーケストレーションと統合された欠落しているインスタンスを作成します
2 手動スケーリング タイミングとインスタンスの選択を完全に制御できますが、プレッシャーの下では低速でエラーが発生しやすいため、インシデント発生時のオペレーターの可用性が必要です。
3 スクリプトによる自動化 (Lambda/SSM) カスタマイズ可能なロジック。構築、テスト、保守が必要。リージョンスイッチシーケンスと統合されていない。ネイティブプラン評価を活用できない
4 事前プロビジョニング (常に一致) フェイルオーバー遅延ゼロ。スタンバイリージョンのコストが 2 倍になり、アクティブ/パッシブアーキテクチャでは無駄になる

Aurora プロビジョンドスケーリングブロックは、リージョンスイッチ復旧プランの統合ステップとして、検証済みの自動キャパシティスケーリングが必要な場合に適しています。

仕組み

計画の実行中に Aurora プロビジョンドスケーリング実行ブロックが実行されると、リージョンスイッチは、次の順序でソースインスタンスのインスタンスクラスと一致するようにターゲットインスタンスをスケーリングします。

  • ターゲットインスタンスが存在するが available状態になっていない場合、リージョンスイッチは、先に進む前にインスタンスが使用可能になるまで待機します。

  • ターゲットインスタンスが存在しない場合、リージョンスイッチはソースインスタンスのインスタンスクラスを使用してターゲットクラスターにインスタンスを作成します。

  • ターゲットインスタンスが存在する場合、リージョンスイッチはそれが予想されるクラスターに属していることを検証し、インスタンスクラスを比較します。

  • 両方のインスタンスが同じファミリーにあり、ターゲットが小さい場合、リージョンスイッチはソースクラスと一致するようにターゲットインスタンスを変更します。

  • インスタンスが異なるファミリーにある場合、またはターゲットのサイズが既に大きい場合、スケーリングは実行されません。

  • ソースインスタンスタイプがターゲットリージョンに存在しない場合、リージョンスイッチは、同じまたは複数の vCPU とメモリを持つ別のインスタンスタイプを選択します (作成オペレーションと変更オペレーションの両方)。

  • リージョンスイッチは、availableステータスに達するまでターゲットインスタンスをポーリングし、ステップを完了としてマークします。

注記

リージョンスイッチはスケールアップのみを行います。送信先インスタンスがすでに送信元と同じかそれ以上の場合、変更は行われません。

設定

重要

実行ブロックを設定する前に、プランの実行ロールに正しい IAM ポリシーが設定されていることを確認してください。詳細については、「Aurora プロビジョンドスケーリング実行ブロックのサンプルポリシー」を参照してください。

Aurora プロビジョンドスケーリング実行ブロックを設定するには、次の値を入力します。

  • ステップ名: 名前を入力します。

  • ステップの説明 (オプション): ステップの説明を入力します。

  • グローバルクラスター識別子: Aurora グローバルクラスターの識別子を入力します。

  • リージョンのクラスター ARN: プラン内の各リージョンの Aurora データベースクラスター ARN を入力します。

  • リージョンのインスタンス ARN: プラン内の各リージョンの Aurora データベースインスタンス ARN を入力します。

  • タイムアウト: タイムアウト値を入力します。

次に、[ステップを保存] を選択します。

プラン評価の一環として評価されるもの

リージョンスイッチがプランを評価すると、リージョンスイッチは Aurora プロビジョンドスケーリング実行ブロックの設定とアクセス許可に対していくつかのチェックを実行します。リージョン切り替えは、以下が正しいことを確認します。

  • どちらのインスタンス ARNs正しい形式です。

  • インスタンスが少なくとも 1 つ存在します。

  • 既存のインスタンスは、予想されるクラスターに属します。

  • 両方のクラスター ARNs は適切に形成され、存在します。

  • どちらのクラスターも、指定されたグローバルクラスターのメンバーです。

リージョンスイッチは、プランの IAM ロールに Aurora プロビジョンドスケーリングに必要なアクセス許可があることも検証します。リージョン切り替え実行ブロックに必要なアクセス許可の詳細については、「Aurora プロビジョンドスケーリング実行ブロックのサンプルポリシー」を参照してください。

Aurora プロビジョンドスケーリング実行ブロックを適切に機能させるには、正しい IAM アクセス許可が不可欠です。これらの検証のいずれかが失敗した場合、リージョン切り替えは問題があることを示す警告を返し、アクセス許可または設定の問題を解決するのに役立つ特定のエラーメッセージを提供します。

関連リソース