Amazon S3でデータのバックアップを作成する必要がありますか?


16

S3で200 GBの製品イメージをホストしています(これが私のプライマリファイルホストです)。

そのデータを別の場所にバックアップする必要がありますか、それともS3はそのまま安全ですか?

S3バケットをEC2インスタンスにマウントしてから、夜間のrsyncバックアップを作成する実験を行っています。問題は、約300万ファイルであるため、異なるrsyncニーズを生成するのに時間がかかることです。バックアップの完了には、実際に約3日かかります。

これをより良くする方法はありますか?(必要な場合でも?)

回答:


5

私はこれについて研究してきましたが、十分面白いです。

S3へのバックアップは、最終的な一貫性のために、地域によっては失敗する可能性があります。基本的な警告は、これを十分に行うと、サーバー間でAmazonが同期するバックグラウンドでのファイルシステムの魔法により、ある時点でファイルのオープンまたは検索エラーが発生するため、バックアップが信頼できない場合があることです。

別の方法で保存する必要があるかどうかは、リスク管理に依存します。Amazonがデータを保持することを信頼していますか?

何かを失ったり、ストレージシステムに大きな障害が発生したりする可能性があります。彼らはあなたのデータを失ったらそれがあなたの問題だと明記する条項を契約に持っていることは間違いありません。彼らのものではありません。また、データが他の場所に格納されているのを見ると、データがそれで何をするのかわかりません。法執行機関はあなたのデータが欲しいですか?他の誰かがアクセスしたことさえ知らないかもしれません。

あなたはそれを信頼していますか?データがビジネスにとって重要ではなく、このリスクを受け入れても構わない場合は、オフサイトストレージにダウンロードする必要はありません。Amazonのストレージサーバーでデータが安全であるというリスクがない場合は、定期的に自分のストレージにダンプするよう手配する必要があります。

言い換えれば、これはあなたのリスク許容度とビジネスのニーズに依存するため、これに対する直接的な答えはないと思います。多くの人々は、クラウドでのストレージだけで収入を完全に信頼するわけではありません。個人的には少し警戒心があります...

これをより良くするために、議論と研究で検討すべき別のアプローチは、データを保存し、EC2インスタンスにアタッチし、そこにデータを保存するのに十分な大きさのEBSボリュームを作成し、次にボリュームをアンマウントし、そのデータをS3に保存することです。ボリュームファイル自体をS3に保存するか、コンテンツに保存するかを調査していますが、ストレージコストを節約するためにEBSインスタンスを削除できます。

編集すると、その逆ではなく、S3からEC2インスタンスに保存していることが再読されます(最終的な一貫性の問題がまだ問題を引き起こす可能性があるかどうかはわかりませんが)。バックアップとしてEC2インスタンスにデータを保存しようとしていますか?コスト面ではそれは健全な戦術ではないと思います。そのような種類のデータの長期保存とVM時間を考慮すると、物事をローカルドライブにバックアップする方が安くなる場合があります。ドライブコストを使用すると、バックアップとしてデータをローカルディスクにコピーできます。

Amazonとそのストレージを信頼することについての警告を引き続き保持します。すべてをAmazon S3に保持し、冗長性を高めたい場合は、リージョン間でS3バケットを複製し、1つのリージョンに影響する停止がある場合、それらすべてをノックアウトしないでください。あなたは願っています。しかし、何でも可能です。

それは、データをどれだけ評価するか、そのデータに対してどれだけ支払う意思があるか、そしてどの程度のリスクを許容したいかにかかっています。


ご回答ありがとうございますが、誤解されたと思います。私はプライマリストレージとしてS3を使用しています(そこから直接cdnとしてファイルをホストしています)。そこで私の質問は、ファイルがそこに安全かどうか、またはそれらのバックアップを何らかの形で作成する必要があるかどうか(別のS3バッカーまたはEC2インスタンスにある可能性があります)?
-Chrille

編集時に追加されました。
バートシルバース

うーん、たぶんローカルバックアップの方が安全でしょう。S3とEC2が同じハードウェアを共有しているかどうかを知っていますか?失敗すると、S3とEC2の両方のバックアップが失われますか?EC2にバックアップを作成する2つの理由は次のとおりです。(1)EC2とS3の間で転送料金が発生しません。毎週ローカルで200 GBをコピーすると、かなりのコストがかかります。(2)S3で災害が発生した場合、EC2インスタンスを非常に迅速に変換して、代わりにバックアップのイメージを共有できました。しかし、ローカルバックアップにも多くの利点があることを
理解してい

正直なところ、Amazonのハードウェアがどのようにバックグラウンドでセットアップされているのかわかりません。私が知っていたとしても、彼らが将来それを変更しないという保証はありません。
バートシルバース

4

これを行うにはs3cmd を使用s3cmd syncしました。動作は少しrsyncに似ており、S3と選択した別のLinuxシステムとの間でディレクトリ全体をプッシュおよびプルできます。

s3cmd sync実行中のEC2インスタンス、または独自の開発者ワークステーション(またはストレージサーバー)にアクセスできなかった理由はわかりません。

VPCインスタンスを設定し、VPC内の小さなノードにバックアップサーバーの役割を割り当て、Amazonのネットワーク内とローカルサブネット内の両方にIPを割り当てることができます。


私の懸念は、彼が自分の財務で決定しなければならないのは、その種のデータを保存するためにEC2インスタンスとEBSスペースを維持するコストであり、代わりに数百ドルでローカルの外部ハードドライブに保存することです。お金は振込手数料を可能にした場合、私はちょうどローカルドライブにダウンロードし、同期中に定期的にすることを続けるだろう(また、あなたのソリューション与えられたの一部だった。)
バートSilverstrim

AmazonのEC2は、特にエンタープライズレベル、または単純なもの以外の何かをしたい場合、用語の尺度によって安くはありません。それが気に入らなければ、おそらくあなたのためではないでしょう。
トム・オコナー

@BartSilverstrim:AWS内の転送は無料ではありませんか?もしそうなら、EC2にコピーするほうがローカルよりも安いかもしれません。とにかく24時間年中無休でEC2インスタンスを実行しているので、コストがかかるのはEBSスペースだけです。
-Chrille

2

私のアドバイスは、あなたのデータはあなたの責任であり、アマゾンのものではないということです。データの損失がそれほど大した問題でない場合は、独自のバックアップを行わないでください。もしそうなら、私と同じように(少なくとも)安価なJBODに独自のバックアップを取ります(そして定期的に検証します)。

データが失われた日、Amazonがデータに対してどの程度の責任を引き受けるかを知ることができます。


0

余裕があれば(私のように)私のサーバーにすべてのデータを保存して、Amazon s3から取得します。したがって、何らかの理由でAmazonがダウンした場合(木材に触れた場合)、サーバーからすべてのデータを即座に取得できます。私のサーバーから、ローカルドライブに毎月バックアップを作成します。私のウェブサイトは2TBを超えています。


あなたの推薦が何であるか、それは少し不明瞭だと思います。サーバーは何でどこにありますか?
カスペルド

0

これは古いスレッドですが、Googling S3バックアップ時に最初に表示されるので、追加することを考えました...

これについて自分で調べてみると、Rclone https://rclone.org/を発見しましたこれは、クラウドファイルストレージサービス間でコピーし、それらのほとんどをサポートするように設計されたrsync-ishソフトウェアです。所属していないので、まだ使用していないので、良いか悪いかは言えませんが、誰かに役立つかもしれないと思いました。

クラウドでホストされたファイル(S3、Googleストレージ、Rackspaceクラウドファイルなど)の「オフサイト」バックアップを行うホストサービスの機会があるように思えます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.