web-dev-qa-db-ja.com

スナップショットの速度を上げるために何かできることはありますか?

データベースサーバーに3つのSSDEBSボリュームをマウントしています。メインデータボリュームは10TB、ジャーナルボリュームは1TB、3番目のボリュームは100GBです。

3つのボリュームのスナップショットを作成すると、1TBのジャーナルボリュームは、使用されているスペースが約100GBしかない場合でも、10TBのデータボリュームよりもはるかに長い時間がかかります。 (8時間以上経過し、55%しか完了していません。10TBのスナップショットは約2時間後に終了しました)。

プロセスをスピードアップするために私にできることはありますか?

5
chris

EC2がスナップショットを作成するのにかかる時間は、ボリュームが最後のスナップショット以降に確認した変更済みブロックの数に正比例します。あなたのジャーナルの場合、それは書き込み/削除操作のlotを見るので、スナップするのに長い時間がかかるのは当然です。

これらは本当にブロックデバイスであることに注意してください。彼らはあなたのファイルシステムについて何も知りません。ジャーナルボリュームで現在使用されているのは100GBしかないことは事実かもしれませんが、最後のスナップショット以降、そのブロックのすべてが変更されている可能性があります。これらのブロックを占めていたファイルの一部は削除されているため、ファイルシステムでは「使用」されていないように見えますが、ブロックデバイス自体はそれについて何も認識していないため、スナップする必要がありますallデータ。 (余談ですが、これは、ファイルシステムレベルでストレージにクエリを実行できるサーバー側エージェントがなければ、EBSボリュームに保存されているデータ量をAWSが報告できないのと同じ理由です。)

軽減するために、より頻繁にスナップショットを撮ってみることができます。

ただし、1つの質問ですが、なぜそれがどれだけ長くかかるか気にしませんか。 snap createリクエストからAPI呼び出しが返されると、自由にボリュームを使用でき、ブロックデバイスに対するその後の変更はスナップショットに含まれません。

15
EEAA