web-dev-qa-db-ja.com

EBSボリュームまたはスナップショットをファイルにダウンロードする

EBSボリューム/スナップショットをファイルにダンプ/保存したり、localLinuxファイルシステムにマウントしたりする方法はありますか?

私は this old threadthis script のみを見つけました。これはS3経由で保存するつもりであり、非常に信頼できるとは思えません。 this online-tool も見つけましたが、うまくいきませんでした。利用可能なリージョンがすべて含まれているわけではありません。

私はrsyncベースのソリューションを求めていません。

EBSを。imgまたは。isoファイルとしてdd形式で直接ダウンロードできますか?

6
Suncatcher

AWSは、EBSボリュームを構成する実際のブロックデバイスをダウンロードまたは抽出する方法を提供していません。コピーを取得する標準的な方法はrsyncを使用することですが、これを行うにはブロックレベルの方法が必要なので、 この記事 が役立つかもしれません。

つまり、上記のリンクが消えた場合は、両端でnetcatddを使用します。

送信側(ボリュームが接続されているEC2インスタンス):

dd bs=16M if=/dev/sda|bzip2 -c|nc receiver.example.net 19000

レシーバー(PC、バックアップサーバーなど):

nc -l 19000|bzip2 -d|dd bs=16M of=/path/to/my/volume.img

ブロックレベルデバイスのコンテンツ全体を16MBのbzip圧縮されたチャンクでポート19000を介して転送しますが、代わりにsshを介して実行することもできますが、パフォーマンス統計によると、はるかに遅くなります。当然、この方法でもセキュリティ面を考慮する必要があります。ブロックデバイスに機密データが含まれている場合は、代わりにSSHまたはVPNトンネルを使用して暗号化することを強くお勧めします。転送速度の低下は妥当なトレードオフです。

もう1つ注意すべき点は、ファイルシステムはメモリにキャッシュできるため、イメージが破損する可能性があることです。上記を実行する前にボリュームをアンマウントして(ただし、インスタンスに接続したままにします)、ファイルシステムの整合性を確保します。

スナップショットのコピーを取得するには、そのスナップショットからボリュームを作成し、インスタンスに接続してから、上記を実行する必要があります。スナップショットのデータにアクセスする他の方法はありません。

6
dannosaur

このサイトを試してみてください。 winscpのようなFTPクライアントを使用します。 https://asf.alaska.edu/how-to/data-recipes/moving-files-into-and-out-of-an-aws-ec2-instance-windows/

1
Avikash