LoginSignup
1
0

More than 1 year has passed since last update.

AWS FSx for Lustre S3レプリケーションオブジェクトをインポートできない

Last updated at Posted at 2021-06-11

初めに

なぜインポートできないのか理由はわかりません。原因をご存知の方がいらっしゃいましたらご教示頂けますと幸いです。

その後

この記事を書いてから新たなことがわかりました。復号の権限がLustreに与えられていないことが原因である可能性があります。検証出来次第、更新します。2021/06/15


Storage Gateway で同様のことが起き、KMSの権限を付与したところアクセスできました。やはり復号の権限のようです。Lustre でも後日検証してみます。2021/06/15

やってみた

Lustreのストレージ構造は、MDT(Meta Data Target) と OST(Object Storage Target) という2つの構造を持っています。MDT はファイルのメタデータを格納し、OST は実データを格納します。

以下の released exists archived となっている状態のファイルは、S3 から透過的に表示されたファイルであることを意味しています。つまりメタデータのみ Lustre に格納され、実データは Lustre にはありません。

実データを Lustre にインポートする方法は2つあります。

  1. ファイルにアクセスする
  2. lfs hsm_restore というコマンドを実行する
$ sudo lfs hsm_state /mnt/fsx/*
/mnt/fsx/sample.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_2.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_3.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_4.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_5.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_6.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload.txt: (0x0000000d) released exists archived, archive_id:1

1 の方法を実行してみます。

$ cat /mnt/fsx/test_upload.txt
test upload

再度ファイルの状態を確認してみます。test_upload.txt のみ、exists archived という状態に移行しました。これは Lustre に実データが格納されたことを意味します。

/mnt/fsx/sample.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_2.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_3.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_4.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_5.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_6.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload.txt: (0x00000009) exists archived, archive_id:1

次に 2 の方法を実行してみます。

$ sudo lfs hsm_restore /mnt/fsx/sample.txt

標準出力はありませんが、samle.txt の状態が exists archived に移行しました。

$ sudo lfs hsm_state /mnt/fsx/*
/mnt/fsx/sample.txt: (0x00000009) exists archived, archive_id:1
/mnt/fsx/test_upload_2.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_3.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_4.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_5.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_6.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload.txt: (0x00000009) exists archived, archive_id:1

次にレプリケートされたオブジェクトをインポートしてみます。cat でファイルにアクセスすれば(方法 1)、上記のようにファイルの中身を見ることができるはずです。

$ cat /mnt/fsx/test_upload_2.txt
cat: /mnt/fsx/test_upload_2.txt: No data available

ファイルにアクセスできませんでした。次に 2 方法を実行してみます。

$ sudo lfs hsm_restore /mnt/fsx/test_upload_2.txt

再度状態を確認してみます。lfs hsm_restore を実行しても依然として test_upload_2.txt は released exists archived のままです。インポートができませんでした。

$ sudo lfs hsm_state /mnt/fsx/*
/mnt/fsx/sample.txt: (0x00000009) exists archived, archive_id:1
/mnt/fsx/test_upload_2.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_3.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_4.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_5.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload_6.txt: (0x0000000d) released exists archived, archive_id:1
/mnt/fsx/test_upload.txt: (0x00000009) exists archived, archive_id:1

レプリケートされたオブジェクトを直接ダウンロードし、/mnt/fsx にコピーすることは可能です。しかし通常のコピーでは No data available が表示されます。

$ sudo cp test_upload_2.txt /mnt/fsx/
cp: cannot create regular file ‘/mnt/fsx/test_upload_2.txt’: No data available

-f オプションを付けるとコピーすることができます。

$ sudo cp -f test_upload_2.txt /mnt/fsx/

参考記事

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0