スケーラブルで整合性のあるEC2バックアップ:EBSスナップショット対 AMI [N2WS Backup & Recovery]


EC2インスタンスのバックアップ手順で、Amazon Machine Images(AMI)の作成とEBSスナップショットの使用の違いは、常に議論の話題となります。AMIは、新しいEC2インスタンスを起動するために必要なデータを保持し、同じベースラインインスタンスの自動プロビジョニングをサポートできるゴールデンイメージを保持するために使用されます。逆に、EBSスナップショットは、Amazon S3に格納されている特定の時点からのEBSボリュームのバックアップです。


EBSスナップショットの仕組み


EBSスナップショットがAMIよりも優れたインスタンスバックアップソリューションを作成する主な理由は2つあります:

  1. スケーラビリティ-私たちの顧客、私たちの実際の経験から、大量のAMIの並行作成が失敗するでしょう。大量のAMIの並行作成が失敗することについて、公式のAWSからのコメントを見つけることはできませんでしたが、AMIの大量作成は推奨されていはいません。EBSスナップショットでは、50個のスナップショットを並行して生成することが成功することが判明しました。一方、イメージ作成、スケジューリング、および結果的に長時間にわたって作成を実行することで、解決策が提供される可能性があります。私たちのプラットフォームは、AMIの作成に関連するような失敗はほとんどなく、1日に何百ものEBSスナップショットを生成します。
  2. 整合性-AMIの作成が始まる正確な時点を、私たちは制御できません。 AMIの下で、AWSはスナップショットを作成します。 これらのスナップショットが作成される時点を制御することは不可能であるため、それらの整合性はありません。 AMIの作成は、インスタンスを再起動してもしなくても行うことができます。
  • 再起動は本番環境では受け入れられず、高い頻度(つまり1時間ごと)でイメージが作成されることが予想される場合は、確かに実行可能な選択肢ではありません。 これらの環境は24時間体制で利用可能である必要があり、問題の原因となるダウンタイムは残ります。
  • 再起動せずにAMIを作成した場合、AMIが実行された時点が不明確であるため、整合性が問題になる可能性があります。 その結果、インスタンスがリストアされるときに問題が発生する可能性があります。 インスタンス内で多くのトランザクションが発生しても整合性が問題になりますが、リストア操作は正常です。

重要なアプリケーションのバックアップには整合性のあるスナップショットが必要です。この場合、EBSスナップショットが適しています。 スナップショットの実行中は、開始時刻がわかります。 さらに、スナップショットが開始される前に静止およびデータ読み取りロックを実行して、開始後すぐにロックを解除することができます。 ロックの解放は、データベースを数秒以上ロックすることができないため、スナップショットの大きな利点です。 イメージ作成では、正確なバックアップ時間が不明なので、システムロックが解除されるまでに長い待ち時間が発生するか、ロックが実行されないとイメージが矛盾する可能性があります。

EC2インスタンスリカバリ

リカバリは時々実行される操作ですが、バックアップは常に実行する必要があり、頻繁に実行する必要があります。 ただし、スナップショットからのEC2インスタンス復元のプロセスは、使用されているオペレーティングシステムによって異なります。 LinuxインスタンスでEBSスナップショットを使用すると、イメージを簡単に作成でき、新しいインスタンスを起動することができます。 この余分な手作業の手順は、一般に、CPMなどの自動バックアップソリューションでは問題になりません。 ただし、Windowsでの、AWSではルートデバイス(c:\volume)のスナップショットからAMIを作成することはできません。 これは、ボリュームを切り替えることで克服することができます。これは、手動で行うことはできますが、自動バックアップソリューションを使用すると容易になります。


N2WS Backup & RecoveryはEBS&RDSスナップショットに基づくEC2のエンタープライズクラスのバックアップソリューションです。 これは、LinuxサーバーおよびWindowsサーバー上のアプリケーションの整合性のあるバックアップをサポートします。


(注) 現在CPMはN2WS Backup & Recoveryへ製品名が変わっています。

関連トピックス

コメントを残す

メールアドレスが公開されることはありません。

 

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください