ONTAP S3 Snapshotの表示とリストア
ONTAP 9.16.1 以降では、S3 クライアントからバケットの S3 スナップショット データを表示および参照できます。 ONTAP 9.18.1 以降では、S3 スナップショット バケットにONTAP CLI を使用してネイティブにアクセスできるようになりました。さらに、S3 Snapshotから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スナップショット リストアのサポートが追加され、S3 ブラウザを使用せずにONTAP管理者にポイントインタイム リストア機能が提供されるようになりました。スナップショットには現在のバケット バージョンのみがキャプチャされます。バージョン履歴はキャプチャされず、S3 スナップショット復元操作によって復元されません。
S3 Snapshotのリストと表示
S3 Snapshotの詳細を表示して比較し、エラーを特定できます。ONTAP CLIを使用すると、S3バケットに作成されたすべてのSnapshotを表示できます。
-
S3 Snapshotを表示します。
vserver object-store-server bucket snapshot show
クラスター上のすべてのバケットに対して作成された S3 スナップショットのスナップショット名、ストレージ VM、バケット、作成時刻、インスタンス UUID を表示できます。
-
バケット名を指定して、その特定のバケットに対して作成されたすべての S3 スナップショットの名前、作成時刻、インスタンス 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> 。ストレージVM内のすべてのスナップショットバケットは、 ListBuckets S3 API 操作。
S3 スナップショット バケットはベース バケットのアクセス ポリシーを継承し、読み取り専用操作のみをサポートします。削除および書き込みベースの操作は禁止されています。ベースバケットにアクセスする権限がある場合は、S3スナップショットバケットに対して読み取り専用のS3 API操作を実行することもできます。 HeadObject 、 GetObject 、 GetObjectTagging 、 ListObjects 、 ListObjectVersions 、 GetObjectAcl 、 そして CopyObject。
|
|
S3 Snapshotバケットでこの `CopyObject`処理がサポートされるのは、ソースバケットのSnapshotである場合のみです。Snapshotのストレージデスティネーションである場合はサポートされません。 |
これらの操作の詳細については、を参照してください"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を使用してベースバケットをリストアします。
-
バケット全体をリストアします。Snapshotバケット名は、の形式で指定し `<base_bucket_name>-s3snap-<snapshot_name>`ます。
aws --endpoint http://<IP> s3 cp s3://<snapshot-bucket-name> s3://<base-bucket> --recursive -
ディレクトリ内のオブジェクトを次のプレフィックスでリストアし `dir1`ます。
aws --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
-