

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# スナップショットを使用したコレクションのバックアップ
<a name="serverless-snapshots"></a>

スナップショットは、ディザスタリカバリ機能を提供する Amazon OpenSearch Serverless コレクションのポイントインタイムバックアップです。OpenSearch Serverless は、コレクションのスナップショットを自動的に作成および管理し、ビジネス継続性とデータ保護を確保します。各スナップショットには、インデックスメタデータ (インデックスの設定とマッピング）、クラスターメタデータ (インデックステンプレートとエイリアス）、インデックスデータ (インデックスに保存されているすべてのドキュメントとデータ) が含まれます。

OpenSearch Serverless は、手動設定なしでの 1 時間ごとの自動バックアップ、メンテナンスオーバーヘッドなし、追加のストレージコストなし、偶発的なデータ損失からの迅速な復旧、スナップショットから特定のインデックスを復元する機能を提供します。

スナップショットを使用する前に、以下の重要な考慮事項を理解してください。スナップショットの作成には時間がかかり、瞬時には作成されません。スナップショット作成時の新しいドキュメントや更新は、スナップショットに含まれません。スナップショットは元のコレクションにのみ復元でき、新しいコレクションには復元できません。復元すると、インデックスは元のバージョンとは異なる新しい UUIDs を受け取ります。OpenSearch Serverless で既存のオープンインデックスに復元すると、新しいインデックス名またはプレフィックスパターンが指定されていない場合、そのインデックスのデータが上書きされます。これは OpenSearch コアの動作とは異なります。一度に実行できる復元オペレーションは 1 つだけであり、同じコレクションで複数の復元オペレーションを同時に開始することはできません。アクティブな復元オペレーション中にインデックスを復元しようとすると、オペレーションは失敗します。復元オペレーション中、インデックスへのリクエストは失敗します。

## 必要なアクセス許可
<a name="serverless-snapshots-permissions"></a>

スナップショットを使用するには、データアクセスポリシーで次のアクセス許可を設定します。データアクセスポリシーの詳細については、「[データアクセスポリシーと IAM ポリシーの比較](serverless-data-access.md#serverless-data-access-vs-iam)」を参照してください。


****  

| データアクセスポリシー | API | 
| --- | --- | 
| aoss:DescribeSnapshot | GET /\_cat/snapshots/aoss-automated<br />GET \_snapshot/aoss-automated/snapshot/ | 
| aoss:RestoreSnapshot | POST /\_snapshot/aoss-automated/snapshot/\_restore | 
| aoss:DescribeCollectionItems | GET /\_cat/recovery | 

ポリシーは、次の AWS CLI コマンドを使用して設定できます。

1.  [ create-access-policy](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/create-access-policy.html) 

1.  [ delete-access-policy ](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/delete-access-policy.html) 

1. [ get-access-policy ](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/get-access-policy.html)

1. [ update-access-policy ](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/update-access-policy.html)

アクセスポリシーを作成するための CLI コマンドの例を次に示します。コマンドで、{{サンプル}}コンテンツを特定の情報に置き換えます。

```
aws opensearchserverless create-access-policy \
--type data \
--name {{Example-data-access-policy}} \
--region {{aws-region}} \
--policy '[
  {
    "Rules": [
      {
        "Resource": [
          "collection/{{Example-collection}}"
        ],
        "Permission": [
          "aoss:DescribeSnapshot",
          "aoss:RestoreSnapshot",
          "aoss:DescribeCollectionItems"
        ],
        "ResourceType": "collection"
      }
    ],
    "Principal": [
      "arn:aws:iam::{{111122223333}}:user/{{UserName}}"
    ],
    "Description": "{{Data policy to support snapshot operations.}}"
  }
]'
```

## スナップショットの使用
<a name="serverless-snapshots-working-with"></a>

デフォルトでは、新しいコレクションを作成すると、OpenSearch Serverless は 1 時間ごとにスナップショットを自動作成します。ご自身では特に何もする必要はありません。各スナップショットには、コレクション内のすべてのインデックスが含まれます。OpenSearch Serverless がスナップショットを作成したら、次の手順を使用してスナップショットを一覧表示し、スナップショットの詳細を確認できます。

### スナップショットを一覧表示する
<a name="serverless-snapshots-listing"></a>

以下の手順に従って、コレクション内のすべてのスナップショットを一覧表示し、その詳細を確認します。

------
#### [ Console ]

1. [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/) で Amazon OpenSearch Service コンソールを開きます。

1. 左側のナビゲーションペインで、**サーバーレス**を選択し、**コレクション**を選択します。

1. コレクションの名前を選択して、詳細ページを開きます。

1. **スナップショット**タブを選択すると、生成されたすべてのスナップショットが表示されます。

1. 以下を含むスナップショット情報を確認します。
   + **スナップショット ID** - スナップショットの一意の識別子
   + **ステータス** - 現在の状態 (使用可能、進行中)
   + **作成日時** - スナップショットが作成された日時

------
#### [ OpenSearch API ]
+ 以下のコマンドを使用して、コレクション内のすべてのスナップショットを一覧表示します。

  ```
  GET /_cat/snapshots/aoss-automated
  ```

  OpenSearch Serverless は、以下のようなレスポンスを返します。

  ```
  id                                 status  start_epoch start_time end_epoch  end_time    duration    indexes successful_shards failed_shards total_shards
  snapshot-ExampleSnapshotID1     SUCCESS 1737964331  07:52:11   1737964382 07:53:02    50.4s       1                                             
  snapshot-ExampleSnapshotID2     SUCCESS 1737967931  08:52:11   1737967979 08:52:59    47.7s       2                                             
  snapshot-ExampleSnapshotID3     SUCCESS 1737971531  09:52:11   1737971581 09:53:01    49.1s       3                                             
  snapshot-ExampleSnapshotID4 IN_PROGRESS 1737975131  10:52:11   -          -            4.8d       3
  ```

------

### スナップショットの詳細を取得する
<a name="serverless-snapshots-get-details"></a>

次の手順を使用して、特定のスナップショットに関する詳細情報を取得します。

------
#### [ Console ]

1. [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/) で Amazon OpenSearch Service コンソールを開きます。

1. 左側のナビゲーションペインで、**サーバーレス**を選択し、**コレクション**を選択します。

1. コレクションの名前を選択して、詳細ページを開きます。

1. [**スナップショット**] タブを選択します。

1. スナップショットジョブ ID を選択すると、メタデータ、含まれるインデックス、タイミング情報など、スナップショットに関する詳細情報が表示されます。

------
#### [ OpenSearch API ]
+ スナップショットに関する情報を取得するには、次のコマンドを使用します。コマンドで、{{サンプル}}コンテンツを特定の情報に置き換えます。

  ```
  GET _snapshot/aoss-automated/{{snapshot}}/
  ```

  リクエストの例:

  ```
  GET _snapshot/aoss-automated/{{snapshot-ExampleSnapshotID1}}/
  ```

  レスポンスの例:

  ```
  {
      "snapshots": [
          {
              "snapshot": "{{snapshot-ExampleSnapshotID1-5e01-4423-9833Example}}",
              "uuid": "{{Example-5e01-4423-9833-9e9eb757Example}}",
              "version_id": 136327827,
              "version": "2.11.0",
              "remote_store_index_shallow_copy": true,
              "indexes": [
                  "{{Example-index-0117}}"
              ],
              "data_streams": [],
              "include_global_state": true,
              "metadata": {},
              "state": "SUCCESS",
              "start_time": "2025-01-27T09:52:11.953Z",
              "start_time_in_millis": 1737971531953,
              "end_time": "2025-01-27T09:53:01.062Z",
              "end_time_in_millis": 1737971581062,
              "duration_in_millis": 49109,
              "failures": [],
              "shards": {
                  "total": 0,
                  "failed": 0,
                  "successful": 0
              }
          }
      ]
  }
  ```

------

スナップショットレスポンスには、スナップショットオペレーションの一意の識別子`id`を提供し、現在の状態`SUCCESS`または `status`を返し`IN_PROGRESS`、スナップショットオペレーションの完了にかかった時間`duration`を示し、スナップショットに含まれるインデックスの数`indexes`を返します。

## スナップショットからの復元
<a name="serverless-snapshots-restoring"></a>

スナップショットから復元すると、以前に取得したバックアップからデータが復元されます。このプロセスは、OpenSearch Serverless でのディザスタリカバリとデータ管理に不可欠です。復元する前に、復元されたインデックスには元のバージョンとは異なる UUIDs があり、OpenSearch Serverless の既存のオープンインデックスに復元すると、そのインデックスのデータが上書きされます。ただし、新しいインデックス名またはプレフィックスパターンが指定されていない場合、スナップショットは元のコレクションにのみ復元でき (クロスコレクション復元はサポートされていません）、復元オペレーションはクラスターのパフォーマンスに影響するため、それに応じて計画してください。

バックアップされたインデックスをスナップショットから復元するには、次の手順に従います。

------
#### [ Console ]

1. [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/) で Amazon OpenSearch Service コンソールを開きます。

1. 左側のナビゲーションペインで、**サーバーレス**を選択し、**コレクション**を選択します。

1. コレクションの名前を選択して、詳細ページを開きます。

1. **スナップショット**タブを選択して、使用可能なスナップショットを表示します。

1. 復元元のスナップショットを選択し、**スナップショットから復元**を選択します。

1. **スナップショットから復元**ダイアログで、次の操作を行います。
   + **スナップショット名**で、選択したスナップショット ID を確認します。
   + **スナップショットスコープ**では、次のいずれかを選択します。
     + **コレクション内のすべてのインデックス** - スナップショットからすべてのインデックスを復元する
     + **特定のインデックス** - 復元する個々のインデックスを選択する
   + **Destination** で、復元するコレクションを選択します。
   + (オプション) **名前変更設定**を設定して、復元されたインデックスの名前を変更します。
     + **名前を変更しない** - 元のインデックス名を保持する
     + **復元されたインデックス名にプレフィックスを追加する** - 競合を避けるためにプレフィックスを追加する
     + **正規表現を使用して名前を変更する** - 高度な名前変更パターンを使用する
   + (オプション) 復元が完了したとき、またはエラーが発生したときに通知されるように**通知**設定を構成します。

1. **保存**を選択して復元オペレーションを開始します。

------
#### [ OpenSearch API ]

1. 以下のコマンドを実行して、適切なスナップショットを特定します。

   ```
   GET /_snapshot/aoss-automated/_all
   ```

   スナップショットのリストを絞り込むには、以下のコマンドを実行します。

   ```
   GET /_cat/snapshots/aoss-automated
   ```

1. スナップショットを復元する前に、以下のコマンドを実行して詳細を確認します。コマンドで、{{サンプル}}コンテンツを特定の情報に置き換えます。

   ```
   GET _snapshot/aoss-automated/{{snapshot-ExampleSnapshotID1}}/
   ```

1. 特定のスナップショットから復元するには、以下のコマンドを実行します。

   ```
   POST /_snapshot/aoss-automated/{{snapshot-ID}}/_restore
   ```

   リクエスト本文を含めることで、復元オペレーションをカスタマイズできます。以下に例を示します。

   ```
   POST /_snapshot/aoss-automated/{{snapshot-ExampleSnapshotID1-5e01-4423-9833Example}}/_restore
   {
     "indices": "opensearch-dashboards*,my-index*",
     "ignore_unavailable": true,
     "include_global_state": false,
     "include_aliases": false,
     "rename_pattern": "opensearch-dashboards(.+)",
     "rename_replacement": "restored-opensearch-dashboards$1"
   }
   ```

1. 復元の進行状況を表示するには、以下のコマンドを実行します。

   ```
   GET /_cat/recovery
   ```

------

**注記**  
リクエスト本文を含むコマンドを使用してスナップショットを復元する場合、いくつかのパラメータを使用して復元動作を制御できます。`indices` パラメータは、復元するインデックスを指定し、ワイルドカードパターンをサポートします。スナップショット内のインデックスがない場合でも復元オペレーションを続行する`ignore_unavailable`ように を設定します。`include_global_state` を使用してクラスターの状態を復元するかどうかを判断し、関連付けられたエイリアスを復元するかどうか`include_aliases`を制御します。`rename_pattern` および `rename_replacement`パラメータは、復元オペレーション中にインデックスの名前を変更します。