

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

# Amazon OpenSearch Service でのインデックススナップショットの作成
<a name="managedomains-snapshots"></a>

Amazon OpenSearch Service でのスナップショットはクラスターのインデックスと状態のバックアップです。*状態*には、クラスター設定、ノード情報、インデックス設定、シャードの割り当てなどが含まれます。

OpenSearch Service のスナップショットには、次のような形式が用意されています。
+ **自動スナップショット**は、クラスターの復元専用です。クラスターのステータスが赤くなった場合や、データが失われた場合に、ドメインを復元するために使用できます。詳細については、「[スナップショットの復元](managedomains-snapshot-restore.md)」を参照してください。OpenSearch Service では、事前設定された Amazon S3 バケットに自動スナップショットを追加料金なしで保存します。
+ **手動スナップショット**は、クラスターの復元、*または*クラスター間でのデータの移行に使用します。手動スナップショットを開始する必要があります。これらのスナップショットは独自の Amazon S3 バケットに保存され、標準の S3 料金が適用されます。セルフマネージド OpenSearch クラスターのスナップショットがある場合、そのスナップショットを使用して OpenSearch Service ドメインに移行できます。詳細については、「[Amazon OpenSearch Service への移行](migration.md)」を参照してください。

すべての OpenSearch Service ドメインで自動スナップショットを取得しますが、頻度は以下の点で異なります。
+ OpenSearch または Elasticsearch 5.3 以降を実行しているドメインでは、OpenSearch Service は 1 時間ごとに自動的にスナップショットを取得し、最大 336 個のスナップショットを 14 日間保持します。時間単位のスナップショットは増分的な性質があるため、中断が少なくなります。また、ドメインの問題が発生した場合に、より最近のリカバリポイントを提供します。
+ Elasticsearch 5.1 以前を実行しているドメインでは、OpenSearch Service は 1 日ごとに指定する時刻に自動でスナップショットを取得し、14 個のスナップショットを 保持しますが、30 日間を超えてスナップショットデータを保持することはありません。

クラスターのステータスが赤になると、クラスターのステータスが維持されている間、すべての自動スナップショットが失敗します。2 週間以内にこの問題を解決しない場合、クラスターのデータは永遠に失われます。トラブルシューティングステップについては、「[赤のクラスター状態](handling-errors.md#handling-errors-red-cluster-status)」を参照してください。

## 前提条件
<a name="managedomains-snapshot-prerequisites"></a>

スナップショットを手動で作成するには、IAM および Amazon S3 を使用して作業する必要があります。スナップショットの取得を試す前に、次の前提条件を満たしていることを確認します。


****  

| 前提条件  | 説明 | 
| --- | --- | 
| S3 バケット | OpenSearch Service ドメイン用の手動スナップショットを保存するための S3 バケットを作成します。手順については、「*Amazon Simple Storage Service ユーザーガイド*」の「[汎用バケットの作成](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html)」を参照してください。<br />次の場所で使用するには、バケットの名前を覚えておいてください。[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/managedomains-snapshots.html) Amazon Glacier ライフサイクルルールをこのバケットに適用しないでください。手動スナップショットは、Amazon Glacier ストレージクラスをサポートしていません。  | 
| IAM ロール | OpenSearch Service に許可を委任する IAM ロールを作成します。手順については、*IAM ユーザーガイド*の「[IAM ロールの作成 (コンソール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html#roles-creatingrole-user-console)」を参照してください。この章の残りの部分では、このロールを `TheSnapshotRole` と呼びます。<br />**IAM ポリシーのアタッチ**<br />次のポリシーを `TheSnapshotRole` にアタッチして、S3 バケットへのアクセスを許可します。[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/managedomains-snapshots.html)<br />ポリシーをロールにアタッチする方法については、「*IAM ユーザーガイド*」の「[IAM ID アクセス許可の追加 (コンソール)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html#add-policies-console)」を参照してください。<br />**信頼関係を編集する**<br />`TheSnapshotRole` の信頼関係を編集して、次の例に示すように、`Principal` ステートメントで OpenSearch Service を指定します。[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/managedomains-snapshots.html)<br />信頼関係を編集する手順については、「*IAM ユーザーガイド*」の「[ロール信頼ポリシーを更新する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-trust-policy.html)」を参照してください。 | 
| アクセス許可 | スナップショットリポジトリを登録するには、`TheSnapshotRole` を OpenSearch Service に渡すことができる必要があります。さらに、`es:ESHttpPut` アクションへのアクセスも必要です。これらの両方の許可を付与するには、リクエストの署名に認証情報が使用されている IAM ロールまたはユーザーに次のポリシーをアタッチします。[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/managedomains-snapshots.html)<br />ユーザーまたはロールが `TheSnapshotRole` を渡すための `iam:PassRole` 許可を持っていない場合、次のステップでリポジトリを登録しようとすると、次の一般的なエラーが発生することがあります。<pre>$ python register-repo.py<br />{"Message":"User: arn:aws:iam::{{123456789012}}:user/{{MyUserAccount}}<br />is not authorized to perform: iam:PassRole on resource:<br />arn:aws:iam::{{123456789012}}:role/{{TheSnapshotRole}}"}</pre> | 

## 手動スナップショットの削除
<a name="managedomains-snapshot-delete"></a>

次のコマンドを実行して、手動スナップショットを削除します。

```
DELETE _snapshot/{{repository-name}}/{{snapshot-name}}
```

## インデックスステート管理を用いたスナップショットの自動化
<a name="managedomains-snapshot-ism"></a>

Index State Management (ISM) [スナップショット](https://opendistro.github.io/for-elasticsearch-docs/docs/im/ism/policies/#snapshot) オペレーションを使用して、経過時間、サイズ、ドキュメント数の変化に基づいてインデックスのスナップショットを自動的にトリガーできます。ISM は、インデックスごとに 1 つのスナップショットが必要な場合に最適です。インデックスグループのスナップショットが必要な場合は、「[Snapshot Management を用いたスナップショットの自動化](managedomains-snapshot-mgmt.md)」を参照してください。

OpenSearch Service で SM を使用するときは、ユーザー独自の Amazon S3 リポジトリを登録する必要があります。`snapshot` オペレーションを使用した ISM ポリシーの例については、「[サンプルポリシー](ism.md#ism-example)」を参照してください。

## スナップショットの Curator の使用
<a name="managedomains-snapshot-curator"></a>

ISM がインデックスとスナップショットの管理に機能しない場合は、代わりに Curator を使用できます。複雑なクラスターでの管理タスクの単純化に役立つ、アドバンストフィルタリング機能が提供されています。[pip](https://pip.pypa.io/en/stable/installing/) を使用して Curator をインストールします。

```
pip install elasticsearch-curator
```

Curator はコマンドラインインターフェース (CLI) または Python API として使用できます。Python API を使用する場合は、従来の [elasticsearch-py](https://elasticsearch-py.readthedocs.io/) クライアントのバージョン 7.13.4 以前を使用する必要があります。opensearch-py クライアントは、サポートされていません。

CLI を使用する場合は、コマンドラインで認証情報をエクスポートして `curator.yml` を次のように設定します。

```
client:
  hosts: search-{{my-domain}}.{{us-west-1}}.es.amazonaws.com
  port: 443
  use_ssl: True
  aws_region: {{us-west-1}}
  aws_sign_request: True
  ssl_no_validate: False
  timeout: 60

logging:
  loglevel: INFO
```