ONTAP S3スナップショットの表示と復元
ONTAP 9.16.1以降では、S3クライアントからバケットのS3スナップショット データを表示および参照できます。ONTAP 9.18.1以降では、S3スナップショット バケットにONTAP CLIからネイティブにアクセスできるようになりました。さらに、S3スナップショットからS3クライアント上の単一のオブジェクト、オブジェクト セット、またはバケット全体を復元できます。
-
ONTAP CLIでバケット スナップショットのリストア操作をネイティブに実行するには、クラスタ内のすべてのノードでONTAP 9.18.1以降が稼働している必要があります。ONTAP 9.18.1以降では、S3ブラウザは不要になりましたが、これらの操作は引き続きサポートされます。
-
特定のバケットに対して一度に実行できるスナップショット リストア操作は 1 つだけです。
ONTAP 9.16.1以降、ONTAP S3スナップショット機能は、手動およびスケジュールによるスナップショットの作成と削除、S3バケットのスナップショット ポリシー、S3クライアントベースのスナップショット参照など、ONTAP S3バケットの基本的なスナップショット機能を提供します。
ONTAP 9.18.1以降では、ネイティブのONTAPスナップショット リストアのサポートが追加され、ONTAP管理者はS3ブラウザを使用せずにポイントインタイム リストア機能を利用できるようになります。スナップショットには現在のバケット バージョンのみがキャプチャされます。バージョン履歴はキャプチャされず、S3スナップショット リストア操作ではリストアされません。
S3 Snapshotのリストアップと表示
S3 Snapshotの詳細を表示して比較し、エラーを特定できます。ONTAP CLIを使用すると、S3バケットに作成されたすべてのSnapshotをリストアップできます。
-
S3 Snapshotをリストアップします。
vserver object-store-server bucket snapshot show
クラスタ上のすべてのバケットに対して作成されたS3スナップショットのスナップショット名、Storage VM、バケット、作成時刻、instance-uuidを表示できます。
-
バケット名を指定して、その特定のバケットに対して作成されたすべてのS3スナップショットの名前、作成時刻、instance-uuidを表示することもできます。
vserver object-store-server bucket snapshot show -vserver <svm_name> -bucket <bucket_name>
S3 Snapshotコンテンツの参照
環境内で障害や問題が発生した場合には、エラーを特定するために、S3バケットのSnapshotのコンテンツを参照できます。また、S3 Snapshotを参照して、リストアの対象にするエラーのないコンテンツを特定することもできます。
S3スナップショットは、S3クライアントにスナップショットバケットとして提供されます。スナップショットバケット名は `<base_bucket_name>-s3snap-<snapshot_name>`という形式です。 `ListBuckets`S3 API操作を使用して、ストレージVM内のすべてのスナップショットバケットを確認できます。
S3 スナップショット バケットはベース バケットのアクセス ポリシーを継承し、読み取り専用操作のみをサポートします。削除および書き込みベースの操作は禁止されています。ベース バケットへのアクセス権限がある場合は、S3 スナップショット バケットに対して HeadObject、 GetObject、 GetObjectTagging、 ListObjects、 ListObjectVersions、 GetObjectAcl、 `CopyObject`などの読み取り専用 S3 API 操作も実行できます。
|
|
`CopyObject`操作は、S3 スナップショット バケットがソース バケットのスナップショットである場合にのみサポートされ、スナップショットの保存先である場合はサポートされません。 |
これらの操作の詳細については、"ONTAP S3でサポートされる処理"を参照してください。
ONTAPを使用してS3スナップショットからバケットをリストアする
ONTAP 9.18.1以降では、ONTAP CLIを使用してONTAP S3スナップショットからバケット全体を復元できます。復元できるのは、選択したスナップショットが作成された時点で存在していたバケットのバージョンのみです。
-
バケットを復元するために使用するスナップショットを特定します:
vserver object-store-server bucket snapshot show
-
バケットを復元します:
vserver object-store-server bucket snapshot restore start -vserver <storage VM name> -bucket <bucket name> -snapshot <snapshot name>
S3クライアントを使用してS3バケットのスナップショットからデータをリストアする
ONTAPでバケット全体を復元するだけでなく、S3cmdやS3 BrowserなどのS3クライアントを使用して、S3スナップショットから単一のオブジェクト、オブジェクトのセット、またはバケット全体を復元することもできます。
`aws s3 cp`コマンドを使用して、バケット全体、特定のプレフィックスを持つオブジェクト、または単一のオブジェクトを復元できます。
-
S3ベース バケットのSnapshotを作成します。
vserver object-store-server bucket snapshot create -vserver <svm_name> -bucket <base_bucket_name> -snapshot <snapshot_name> -
Snapshotを使用してベース バケットをリストアします。
-
バケット全体を復元します。スナップショット バケット名を `<base_bucket_name>-s3snap-<snapshot_name>`の形式で使用します。
aws --endpoint http://<IP> s3 cp s3://<snapshot-bucket-name> s3://<base-bucket> --recursive -
プレフィックスを持つディレクトリ内のオブジェクトを復元します:
dir1aws --endpoint http://<IP> s3 cp s3://<snapshot-bucket-name>/dir1 s3://<base_bucket_name>/dir1 --recursive -
`web.py`という名前の単一のオブジェクトを復元します:
aws --endpoint http://<IP> s3 cp s3:// <snapshot-bucket-name>/web.py s3://<base_bucket_name>/web.py
-