Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

ONTAP S3スナップショットの表示と復元

共同作成者 netapp-manini netapp-lenida netapp-dbagwell netapp-bhouser netapp-aaron-holt

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をリストアップできます。

手順
  1. S3 Snapshotをリストアップします。

    vserver object-store-server bucket snapshot show

    クラスタ上のすべてのバケットに対して作成されたS3スナップショットのスナップショット名、Storage VM、バケット、作成時刻、instance-uuidを表示できます。

  2. バケット名を指定して、その特定のバケットに対して作成されたすべての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 スナップショット バケットに対して HeadObjectGetObjectGetObjectTaggingListObjectsListObjectVersionsGetObjectAcl、 `CopyObject`などの読み取り専用 S3 API 操作も実行できます。

メモ `CopyObject`操作は、S3 スナップショット バケットがソース バケットのスナップショットである場合にのみサポートされ、スナップショットの保存先である場合はサポートされません。

これらの操作の詳細については、"ONTAP S3でサポートされる処理"を参照してください。

ONTAPを使用してS3スナップショットからバケットをリストアする

ONTAP 9.18.1以降では、ONTAP CLIを使用してONTAP S3スナップショットからバケット全体を復元できます。復元できるのは、選択したスナップショットが作成された時点で存在していたバケットのバージョンのみです。

手順
  1. バケットを復元するために使用するスナップショットを特定します:

    vserver object-store-server bucket snapshot show
  2. バケットを復元します:

    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`コマンドを使用して、バケット全体、特定のプレフィックスを持つオブジェクト、または単一のオブジェクトを復元できます。
手順
  1. S3ベース バケットのSnapshotを作成します。

    vserver object-store-server bucket snapshot create -vserver <svm_name> -bucket <base_bucket_name> -snapshot <snapshot_name>
  2. 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