Amazon S3 と AWS EC2 をクラウドバックアップストレージとして利用する

Amazonは、クラウド上でコンピューティングおよびストレージサービスを提供しています。Amazon EC2やAmazon S3など、さまざまなAWSサービスを利用して、バックアップデータをクラウドに保存し、データを確実に保護することができます。ただし、これらのサービスは、その仕組みや、保存可能なバックアップデータの種類、保存方法などが異なります。

このブログ記事では、Amazon EC2インスタンスにアタッチされたEBSボリュームやAmazon S3を利用して、バックアップデータを保存する方法について解説します。

注: この記事は、EC2とS3の包括的な比較ではありません。EC2はクラウド上でワークロードを実行するためのクラウドコンピューティングプラットフォームであるためです。その代わりに、EC2のデータを保存するために使用されるElastic Block Storage(EBS)に焦点を当て、S3と比較しています。

NAKIVO for AWS EC2 バックアップ

NAKIVO for AWS EC2 バックアップ

Amazon EC2インスタンスのEC2、AWS S3、およびオンプレミスへのバックアップ。ランサムウェア対策オプション。インスタンスおよびアプリケーションオブジェクトの迅速な復旧。

データバックアップにAWSを利用する理由

によると、 3-2-1バックアップルール重要なデータについては、少なくとも3つのコピーを保持し、そのうち1つはオフサイトに保管する必要があります。Amazon S3やAmazon EC2インスタンス内のEBSボリュームなどのクラウドストレージは、バックアップデータのオフサイトストレージとして利用できます。しかし、それらをどのように、いつ利用すべきでしょうか?まずは、これら2つのAWSサービスがどのような機能を提供しているかを確認してみましょう。

  • Amazon EC2 (Elastic Cloud Computing) インスタンスとは、AWS クラウド上の AWS サーバーおよび AWS データセンター内で実行される仮想マシンです。インスタンスのデータを格納するコンテナは EBS (Elastic Block Storage) ボリュームと呼ばれ、これは仮想ディスクに相当します。

EBSボリューム データ保存の基本単位がブロックであるため、これらはブロックストレージに分類されます。EBSボリュームはインスタンスに接続され、これらのインスタンスの主要なデータを保存します。EBSボリュームには、ハードディスクドライブ(HDD)とソリッドステートドライブ(SSD)のいずれかを選択できます。

  • Amazon S3 (Simple Storage Service) は、AWSのオブジェクトストレージサービスです。データを保存するために使用されるコンテナは"バケット"と呼ばれます。データはブロック形式ではなく、オブジェクトとしてバケットに保存されます。オブジェクトベースのストレージではバージョン管理機能を利用でき、これはデータ復旧に役立つ機能です。

Amazon EC2 を利用したワークロードの復旧

オンプレミスの本番データセンターが利用できなくなった場合、Amazon EC2インスタンスを使用してオンプレミスの仮想マシンをクラウド上で復旧させることができます。このような事態に備えるため、バックアップやレプリカを活用して、オンプレミスのワークロードをクラウドへ移行しておく必要があります。 災害復旧計画.

災害発生時には、バックアップよりもEC2へのレプリケーションが望ましい。レプリカを使用してアプリケーションやサーバーの運用を再開する場合、バックアップを使用する場合よりも時間がかからない(つまり、 RTO)。たとえば、オンプレミスのサーバーやVMからEC2インスタンスへデータベースを複製し、ほぼ瞬時に フェイルオーバー 必要なときは 災害からの復旧.

EC2インスタンスで使用されるEBSボリュームは、高速なブロックストレージを提供します。以下に、バックアップおよび復元におけるEBSボリューム利用のメリットとデメリットをいくつか挙げます。

  • メリット: EBSは、高性能が求められるワークロードに利用できます。あるEBSボリュームから別のEBSボリュームへ、データを高速でコピーすることができます。また、EC2インスタンスのEBSボリュームを使用することで、Amazon S3ストレージを使用する場合よりも優れたデータベースパフォーマンスを実現できます。

ローカル(オンプレミス)のサーバーからデータを転送する必要がある場合、インターネット接続速度がボトルネックとなるため、この場合はAmazon S3を利用するのがより合理的かもしれません。

  • デメリット: 他のEBSボリュームのバックアップにEBSボリュームを使用する場合を除き、EBSは主要なバックアップ先としてコストが高すぎます。特に、EC2インスタンス以外のワークロードにおいてはなおさらです。

AWSにおけるEC2インスタンスのデータ保護

AWSでは、Amazon EC2インスタンスおよびそれらに接続されたEBSボリュームは自動的にバックアップされません。データは、ディスクやサーバーの障害(ハードウェア障害)に備えたデータセンターの冗長性を確保するため、Amazonデータセンター内の同一アベイラビリティゾーンに属するサーバー間でのみ複製されます。

バックアップ機能は提供されていませんが、AWSではEC2インスタンス内のデータを保護するための3つのネイティブ手法を提供しています:

  • EBSスナップショットの作成。 これは、EBSボリューム(暗号化されたEBSボリュームを含む)の復元ポイントを作成する簡単な方法です。スナップショットを使用すると、データを新しいEBSボリュームに復元することができます。次のような論理ボリュームマネージャを使用する場合、 LVM または mdadmサブコンポーネントのボリュームのデータの一貫性と整合性を維持するため、EBSスナップショットを使用する代わりに、ボリュームマネージャー層でバックアップを実行することを検討してください。なお、スナップショットを使用してEBSボリュームを復元する場合、それらのEBSボリュームは事前に準備されたEC2インスタンスにマウントされている必要があります。
  • Amazon Machine Image(AMI)の作成。 AMIとは、オペレーティングシステム、すべての構成設定、およびEC2インスタンスの実行に必要なデータを含むイメージのことです。AMIを使用すると、そのAMIに基づいて新しいEC2インスタンスを作成できます。この方法は、EC2インスタンスの復元やクローン作成に利用されます。なお、新しいAMIを作成するには、まず実行中のEC2インスタンスを停止する必要があります。

この方法は、EBSボリュームのスナップショットを使用する場合と比べて、EBSボリュームのみ(復元処理後に作成されたEC2インスタンスに手動でマウントする必要がある)ではなく、EC2インスタンス全体が復元されるという利点があります。復元に使用するAMIイメージの設定には時間がかかりますが、復元やスケーラビリティの面では優れた効果を発揮します。

  • EC2インスタンスをS3にコピーします。 EBSボリュームに保存されたデータをAmazon S3バケットにコピーすることは、EC2インスタンス内のデータを保護するための代替手段となります。Amazon S3はオブジェクトストレージであり、Amazon EBSはブロックストレージであるため、S3バケット内のファイルを読み書きするにはFUSE(ユーザー空間ファイルシステム)が必要です。FUSEは、EC2インスタンス、仮想マシン、または物理コンピュータ上で動作するオペレーティングシステムにインストールすることで、Amazon S3バケットにアクセスできるようになります。

ただし、データの整合性に関しては、アプリケーション(データベースなど)によって使用中のファイルをS3にコピーすると、データが破損する可能性があります。

Amazon S3 を利用したデータ復旧

Amazon S3 では、バケットに保存されたオブジェクトに対してバージョン管理機能を提供しています。デフォルトでは、Amazon S3 のバージョン管理は無効になっていますが、この機能は簡単に有効にできます。バージョン管理を有効にすると、オブジェクトに変更を加えた後も、以前のバージョンが保持されます。変更内容はオブジェクトの新しいバージョンとして保存され、削除されたオブジェクトも完全に削除されることはありません。

バージョン管理のために Amazon S3 を使用することには、メリットとデメリットがあります。

  • メリット: Amazon S3では、データへのアクセス頻度や取得時間に応じて、価格帯の異なるさまざまなストレージクラスが用意されています。また、Amazon S3のストレージ利用には柔軟な料金体系が採用されており、多くのユーザーにとって手頃な価格設定となっています。詳細については、Amazon S3に関する記事をご覧ください。 AWS S3の仕組み.

Amazon S3では、ストレージの不変性を確保し、オブジェクトが意図しない変更や削除から保護されるよう、オブジェクトロックもサポートされています。このストレージ設定は、 一度書き込み、何度も読み取り (WORM)。

  • デメリット: AWSのWebインターフェースを使って手動でファイルをコピーしたくない場合は、専用のツールが必要になります。また、AWSではAmazon S3からのデータ転送に対してアウトバウンド転送料が課金されます(この料金は、AWSから転送されるデータ量および使用しているストレージティアによって異なります)。

Amazon S3のデータ保護におけるユースケース

Amazon S3をバックアップ先として活用するケースは数多くあります。以下のような用途には、このストレージタイプを選択することを検討してください:

  • EBSボリュームに保存されたデータのコピー。前述の通り、EC2インスタンスで使用されているEBSボリュームをAmazon S3ストレージにコピーすることができます。
  • S3バケット間のデータコピー。
  • オンプレミスで稼働する物理コンピュータおよび仮想マシンに保存されたデータのバックアップ。

Amazon S3 でデータを保護する方法

Amazon S3上のデータを損失から保護するために、さまざまなAWSツールを利用できます。復元のためにS3バケットにオブジェクトの異なるバージョンを保存するには、オブジェクトのバージョン管理を有効にして設定してください。利用可能なツールについては以下をご確認ください:

  • コマンドラインツール. AWS SDK を使用して、ある S3 バケットから別の S3 バケットへオブジェクトをコピーする、または その他のツール. LinuxやWindows向けのその他の人気のあるコマンドラインツールとしては、 s3cmd, s4cmd そして AWS CLI も利用できます。これらのツールのいずれかをインストールして、S3バケットとの間でデータを転送してください。また、復旧目的でバケット間でデータをコピーする際にも、これらのコマンドラインツールを使用できます。

    S3へのバックアップにスクリプトを使用するのは一般的な手法ですが、多大な労力を要します。この手法は、S3バケット、EC2インスタンス、および物理マシンや仮想マシンからのデータバックアップに適用可能です。

    • メリット CLIツールやスクリプトは無料で利用できます。
    • デメリット スクリプトを使用したデータコピーの設定は複雑です。さらに、コピー処理を行う前には、データの整合性を保つために、実行中のアプリケーションを停止し、OS内のボリュームスナップショットなどの機能の使用を中止する必要があります。
  • AWS Storage GatewayAWS Storage Gateway を使用すると、オンプレミスの物理マシンや仮想マシンから Amazon S3 バケットへデータを転送できます。

AWS Storage Gateway は、仮想マシンとして展開されるハイブリッドストレージサービスであり、ファイルへのアクセス高速化のためのキャッシュ機能を提供します。これには3つのタイプがあり、 AWS Storage Gateway:ファイルゲートウェイ、ボリュームゲートウェイ、およびテープゲートウェイ。

ストレージゲートウェイをデプロイすると、SMB、NFS、iSCSI などの標準的な共有プロトコルを使用して Amazon S3 ストレージにアクセスできるようになります。AWS Storage Gateway は、仮想アプライアンスとして提供されており、 VMware vSphere およびHyper-Vプラットフォームに対応しており、Amazon S3の利用サブスクリプションプランをお持ちであれば、無料でダウンロードできます。

AWSへの直接データバックアップソリューション

AWS上でデータを保護する、より効率的で信頼性の高い方法は、AWSとの連携機能を備えたサードパーティ製のデータ保護ソリューションを導入することです。例えば、 NAKIVO Backup & ReplicationNAKIVOのソリューションは、以下の機能をサポートする汎用的なデータ保護ソリューションです:

  • Amazon EC2のバックアップ. EC2インスタンスの定期的なバックアップと復元(EBSおよびS3への保存)。新しいEC2インスタンスを作成・設定したり、復元されたEBSボリュームを手動でマウントしたりする必要はありません。ファイルやアプリケーションオブジェクトが必要になった時点で、すぐに復元を開始できます。
  • Amazon EC2のレプリケーションAWS上で重要なEC2インスタンスをレプリケートし、データ復旧シナリオや災害復旧計画に合わせてEC2レプリカを活用することで、高いRTOを実現します。
  • Amazon S3へのバックアップMicrosoft Hyper-V および VMware vSphere の仮想マシン、物理 Windows および Linux マシン、EC2 インスタンスを Amazon S3 バケットにバックアップします。AWS Storage Gateway を導入することなく、Amazon S3 バケットへの直接バックアップが可能です。S3 バケット内に、専用の Amazon S3 バックアップリポジトリが作成されます。
  • Amazon EC2へのバックアップEC2インスタンス上にバックアップリポジトリを作成し、データセンターとEC2インスタンスが使用するネットワーク間のネットワーク接続を設定して、データをEC2インスタンスにバックアップすることができます。

NAKIVO Backup & Replication AWSへのバックアップ設定をより迅速かつ便利で信頼性の高いものにする、一連の便利な機能を提供します。これらの機能には、以下のものが含まれます:

  • 不変性をサポートするAmazon S3ストレージ 意図しないデータ変更(偶発的なものやランサムウェアによるものを含む)からデータを保護するためのバックアップ先として利用できます。
  • サイト復旧 定義された条件やアクションに基づいて、EC2インスタンスやその他の仮想環境向けの災害復旧ワークフローを自動化およびオーケストレーションできます。Site Recovery機能を使用すれば、複雑な災害復旧シナリオも容易に実装できます。
  • ジョブのスケジューリングバックアップジョブは、自動的に実行されるようにスケジュール設定できます。 柔軟な保持設定 さまざまな復旧シナリオに対応できるよう、複数の復旧ポイントを保持できます。
  • アプリケーション対応型バックアップ データの整合性を保つ上で重要です。 NAKIVO Backup & Replication Windows ベースのマシンでは、VSS(ボリューム シャドウ コピー)などの機能を使用して、アプリケーション(たとえば、データベース サーバーなど)が Active Directory (サーバーなど)がファイルへの書き込み操作を実行します。
AWS S3への直接バックアップ | NAKIVO

AWS S3への直接バックアップ | NAKIVO

シンプルなAmazon S3連携とランサムウェア対策のための不変性オプションにより、単一障害点を回避します。自動バックアップ階層化と即時復旧機能も備えています。

People also read