Amazon OpenSearch Service 用のコールドストレージ - Amazon OpenSearch Service (Amazon Elasticsearch Service の後継サービス)

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

Amazon OpenSearch Service 用のコールドストレージ

コールドストレージでは、アクセス頻度の低いデータや履歴データを Amazon OpenSearch Service ドメインに保存し、他のストレージ層よりも低コストでオンデマンドで分析できます。古いデータに対して定期的な調査や法医学分析を行う必要がある場合は、コールド・ストレージが適しています。コールド・ストレージに適したデータの実際的な例としては、アクセス頻度の低いログ、コンプライアンス要件を満たすために保存する必要があるデータ、履歴価値のあるログなどがあります。

SIMIRALUltraWarmストレージでは、コールドストレージは Amazon S3 によってバックアップされます。コールドデータを照会する必要がある場合は、既存の UltraWarm ノードに選択的にアタッチできます。コールドデータの移行とライフサイクルは、手動で、またはインデックス状態管理ポリシーを使用して管理できます。

Prerequisites

コールドストレージには、次のような前提条件があります。

  • コールドストレージには、OpenSearch または Elasticsearch バージョン 7.9 以降が必要です

  • OpenSearch Service ドメインでコールドストレージを有効にするには、同じドメインで UltraWarm も有効にする必要があります。

  • コールドストレージを使用するには、ドメインに専用マスターノード

  • ドメインでデータノードに T2 または T3 インスタンスタイプが使用されている場合、コールドストレージを使用することはできません。

  • ドメインがきめ細かなアクセスコントロールの場合、管理者以外のユーザーはmappedcold_managerロールを使用して、コールドインデックスを管理します。

注記

-cold_managerロールが既存の OpenSearch Service ドメインに存在しない可能性があります。ダッシュボードにロールが表示されない場合は、次の操作を行う必要があります。を手動で作成する

アクセス許可の設定

既存の OpenSearch Service ドメインでコールドストレージを有効にすると、cold_managerロールが定義されていない可能性があります。ドメインがきめ細かなアクセスコントロールに設定されている場合、コールドインデックスを管理するには、管理者以外のユーザーはこのロールにマップする必要があります。を手動で作成するにはcold_managerロールを使用するには、以下のステップを実行します。

  1. OpenSearch ダッシュボードで、セキュリティを選択し、アクセス許可

  2. 選択アクショングループの作成をクリックし、次のグループを設定します。

    グループ名 アクセス許可
    cold_cluster
    • cluster:monitor/nodes/stats

    • cluster:admin/ultrawarm*

    • cluster:admin/cold/*

    cold_index
    • indices:monitor/stats

    • indices:data/read/minmax

    • indices:admin/ultrawarm/migration/get

    • indices:admin/ultrawarm/migration/cancel

  3. 選択ロールおよびロールの作成

  4. ロールにという名前を付けます。cold

  5. を使用する場合クラスターの権限] で、[cold_clusterグループを作成します。

  6. を使用する場合索引に」と入力します。*

  7. を使用する場合インデックスアクセス権] で、[cold_indexグループを作成します。

  8. [Create] を選択します。

  9. ロールの作成が完了したら、マッピング先をコールドインデックスを管理する任意のユーザーまたはバックエンドロールに適用します。

コールド・ストレージの要件とパフォーマンスに関する考慮事項

コールドストレージは Amazon S3 を使用するため、レプリカ、Linux 予約済み領域、Amazon ES 予約済み領域など、ホットストレージのオーバーヘッドは発生しません。コールドストレージには、コンピューティング容量がアタッチされていないため、特定のインスタンスタイプはありません。コールドストレージには、任意の量のデータを格納できます。のモニタリングColdStorageSpaceUtilizationメトリックスを使用して、使用しているコールドストレージ領域の量を確認します。

コールドストレージ料金表

UltraWarmストレージと同様に、コールドストレージでは、データストレージに対してのみお支払いいただきます。コールドデータには計算コストはなく、コールドストレージにデータがない場合、課金されることはありません。

コールドストレージとウォームストレージ間でデータを移動する場合、転送料金は発生しません。インデックスがウォームストレージとコールドストレージ間で移行される間、引き続きインデックスのコピーを 1 つだけお支払いいただきます。移行が完了すると、インデックスは移行先のストレージ階層に従って課金されます。コールドストレージ料金の詳細については、「」を参照してください。Amazon OpenSearch Service の料金表

コールドストレージの有効化

コールドストレージを使用するドメインを作成するには、コンソールを使用する方法が最も簡単です。ドメインの作成中に、コールドストレージを有効にする。同じプロセスは、既存のドメインでも機能します。の前提条件。ドメインの状態がProcessingアクティブの場合、コールドストレージは数時間利用できない場合があります。

また、 を使用することもできますAWS CLIまたは設定 API/をクリックして、コールド・ストレージを有効にします。

CLI コマンドの例

以下のようになりますAWS CLIコマンドは、3 つのデータノード、3 つの専用マスターノード、3 つの専用マスターノード、3 つの専用マスターノード、2 つのウォームドメインを作成します。

aws opensearch create-domain \ --domain-name my-domain \ --engine-version Opensearch_1.0 \ --cluster-config ColdStorageOptions={Enabled=true},WarmEnabled=true,WarmCount=4,WarmType=ultrawarm1.medium.search,InstanceType=r6g.large.search,DedicatedMasterEnabled=true,DedicatedMasterType=r6g.large.search,DedicatedMasterCount=3,InstanceCount=3 \ --ebs-options EBSEnabled=true,VolumeType=gp2,VolumeSize=11 \ --node-to-node-encryption-options Enabled=true \ --encryption-at-rest-options Enabled=true \ --domain-endpoint-options EnforceHTTPS=true,TLSSecurityPolicy=Policy-Min-TLS-1-2-2019-07 \ --advanced-security-options Enabled=true,InternalUserDatabaseEnabled=true,MasterUserOptions='{MasterUserName=master-user,MasterUserPassword=master-password}' \ --region us-east-2

詳細については、「」を参照してください。AWS CLIコマンドリファレンス

設定 API リクエスト例

設定 API に対する次のリクエストは、3 つのデータノード、3 つの専用マスターノード、3 つの専用マスターノード、5 つの専用マスターノードのドメインを作成します。

POST https://es.us-east-2.amazonaws.com/2021-01-01/opensearch/domain { "ClusterConfig": { "InstanceCount": 3, "InstanceType": "r6g.large.search", "DedicatedMasterEnabled": true, "DedicatedMasterType": "r6g.large.search", "DedicatedMasterCount": 3, "ZoneAwarenessEnabled": true, "ZoneAwarenessConfig": { "AvailabilityZoneCount": 3 }, "WarmEnabled": true, "WarmCount": 4, "WarmType": "ultrawarm1.medium.search", "ColdStorageOptions": { "Enabled": true } }, "EBSOptions": { "EBSEnabled": true, "VolumeType": "gp2", "VolumeSize": 11 }, "EncryptionAtRestOptions": { "Enabled": true }, "NodeToNodeEncryptionOptions": { "Enabled": true }, "DomainEndpointOptions": { "EnforceHTTPS": true, "TLSSecurityPolicy": "Policy-Min-TLS-1-2-2019-07" }, "AdvancedSecurityOptions": { "Enabled": true, "InternalUserDatabaseEnabled": true, "MasterUserOptions": { "MasterUserName": "master-user", "MasterUserPassword": "master-password" } }, "EngineVersion": "Opensearch_1.0", "DomainName": "my-domain" }

詳細については、「Amazon OpenSearch Service 用の設定 API リファレンス」を参照してください。

OpenSearch ダッシュボードでのコールドインデックスの管理

OpenSearch Service ドメインの既存の Dashboards インターフェイスを使用して、ホット、ウォーム、コールドインデックスを管理できます。ダッシュボードを使用すると、CLI や設定 API を使用せずに、ウォームストレージとコールドストレージ間でインデックスを移行し、インデックスの移行ステータスを監視できます。詳細については、「」を参照してください。OpenSearch ダッシュボードでのインデックスの管理

コールド・ストレージへのインデックスの移行

インデックスをコールドストレージに移行するときは、データの時間範囲を指定して、検出を容易にします。インデックス内のデータに基づいてタイムスタンプフィールドを選択するか、開始タイムスタンプと終了タイムスタンプを手動で指定するか、指定しないように選択できます。

Parameter サポートされる値 説明
timestamp_field インデックスマッピングの日付/時刻フィールド。

指定されたフィールドの最小値と最大値が計算され、start_timeおよびend_timeコールドインデックスのメタデータ。

start_time および end_time

以下のいずれかの形式を使用します。

  • strict_date_optional_time. たとえば、yyyy-MM-dd'T'HH:mm:ss.SSSZyyyy-MM-dd などです。

  • エポック時間 (ミリ秒)

指定された値は、start_timeおよびend_timeコールドインデックスのメタデータ。

タイムスタンプを指定しない場合は、?ignore=timestampをリクエストに追加します。

次のリクエストは、ウォームインデックスをコールドストレージに移行し、そのインデックスのデータの開始時刻と終了時刻を提供します。

POST _ultrawarm/migration/my-index/_cold { "start_time": "2020-03-09", "end_time": "2020-03-09T23:00:00Z" }

次に、移行のステータスを確認します。

GET _ultrawarm/migration/my-index/_status

インデックスをウォームストレージからコールドストレージに 10 のバッチで移行できます。同時リクエストは最大 100 です。移行プロセスには次の状態があります。

ACCEPTED_COLD_MIGRATION - Migration request is accepted and queued. RUNNING_METADATA_MIGRATION - The migration request was selected for execution and metadata is migrating to cold storage. FAILED_METADATA_MIGRATION - The attempt to add index metadata has failed and all retries are exhausted. PENDING_INDEX_DETACH - Index metadata migration to cold storage is completed. Preparing to detach the warm index state from the local cluster. RUNNING_INDEX_DETACH - Local warm index state from the cluster is being removed. Upon success, the migration request will be completed. FAILED_INDEX_DETACH - The index detach process failed and all retries are exhausted.

コールド・ストレージへの移行の自動化

「」を使用できます。Index State Managementインデックスが特定の経過時間に達した後、または他の条件を満たした後の移行プロセスを自動化します。フレームワークの使用の詳細については、サンプルポリシーを参照してください。これは、ホットからUltraWarmへのインデックスをコールドストレージに自動的に移行する方法を示しています。

注記

明示的なtimestamp_fieldは、インデックス状態管理ポリシーを使用してインデックスをコールドストレージに移動するために必要です。

コールド・ストレージへの移行のキャンセル

コールドストレージへの移行がキューに入れられているか、失敗状態にある場合は、次の要求を使用して移行をキャンセルできます。

POST _ultrawarm/migration/_cancel/my-index

ドメインできめ細かなアクセスコントロールを使用している場合は、indices:admin/ultrawarm/migration/cancel権限を使用してこの要求を行います。

コールドインデックスのリスト

クエリを実行する前に、コールドストレージ内のインデックスを一覧表示して、詳細な分析のために UltraWarm に移行するインデックスを決定できます。次のリクエストは、すべてのコールドインデックスをインデックス名でソートしてリストします。

GET _cold/indices/_search

Filtering

プレフィックスベースのインデックスパターンと時間範囲のオフセットに基づいて、コールドインデックスをフィルタリングできます。

次のリクエストは、プレフィックスパターンに一致するインデックスをリストします。event-*:

GET _cold/indices/_search { "filters":{ "index_pattern": "event-*" } }

次のリクエストは、start_timeおよびend_timeメタデータフィールド2019-03-01および2020-03-01:

GET _cold/indices/_search { "filters": { "time_range": { "start_time": "2019-03-01", "end_time": "2020-03-01" } } }

Sorting

コールドインデックスは、インデックス名やサイズなどのメタデータフィールドでソートできます。次のリクエストは、サイズ順にソートされたすべてのインデックスを降順にリストします。

GET _cold/indices/_search { "sort_key": "size:desc" }

その他の有効なソートキーは、start_time:asc/desc,end_time:asc/desc, およびindex_name:asc/desc

Pagination

コールドインデックスのリストをページ分割できます。ページごとに返されるインデックスの数をpage_sizeパラメーター (デフォルトは 10)。every_searchリクエストは、コールドインデックスでpagination_idこれは後続の呼び出しに使用できます。

次のリクエストは、_searchリクエストを送信し、次の 100 件の結果を表示します。

GET _cold/indices/_search?page_size=100 { "pagination_id": "je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY" }

コールド・インデックスのウォーム・ストレージへの移行

前のセクションでフィルタリング基準を使用してコールドインデックスのリストを絞り込んだ後、それらを UltraWarm に移行して、データを照会してビジュアライゼーションを作成できます。

次のリクエストは、2 つのコールドインデックスをウォームストレージに移行します。

POST _cold/migration/_warm { "indices": "my-index1,my-index2" }

マイグレーションのステータスを確認し、マイグレーション ID を取得するには、次のリクエストを送信します。

GET _cold/migration/_status

インデックス固有の移行情報を取得するには、インデックス名を含めます。

GET _cold/migration/my-index/_status

インデックスを指定するのではなく、現在の移行ステータス別にインデックスをリストできます。有効な値は、_failed_accepted_all です。

次のコマンドは、単一の移行要求内のすべてのインデックスのステータスを取得します。

GET _cold/migration/_status?migration_id=my-migration-id

ステータス要求を使用してマイグレーション ID を取得します。移行の詳細については、&verbose=true

コールドストレージからウォームストレージにインデックスを移行できるバッチ数は 10 で、同時リクエスト数は最大 100 です。移行プロセスには次の状態があります。

ACCEPTED_MIGRATION_REQUEST - Migration request is accepted and queued. RUNNING_INDEX_CREATION - Migration request is picked up for processing and will create warm indices in the cluster. PENDING_COLD_METADATA_CLEANUP - Warm index is created and the migration service will attempt to clean up cold metadata. RUNNING_COLD_METADATA_CLEANUP - Cleaning up cold metadata from the indices migrated to warm storage. FAILED_COLD_METADATA_CLEANUP - Failed to clean up metadata in the cold tier. FAILED_INDEX_CREATION - Failed to create an index in the warm tier.

スナップショットからのコールドインデックスの復元

連絡先AWS Supportドメイン全体が誤って削除された場合など、自動スナップショットからコールドインデックスを復元する必要がある場合。OpenSearch Service は、コールドインデックスが削除されてから 14 日間保持します。

コールド・ストレージからウォーム・ストレージへの移行のキャンセル

コールドストレージからウォームストレージへのインデックスの移行がキューに入れられているか、失敗状態にある場合は、次の要求でキャンセルできます。

POST _cold/migration/my-index/_cancel

インデックスのバッチ(一度に最大10個)の移行をキャンセルするには、移行IDを指定します。

POST _cold/migration/_cancel?migration_id=my-migration-id

ステータス要求を使用してマイグレーション ID を取得します。

コールドインデックスメタデータの更新

更新できます。start_timeおよびend_timeコールドインデックスのフィールド:

PATCH _cold/my-index { "start_time": "2020-01-01", "end_time": "2020-02-01" }

更新することはできません。timestamp_fieldコールドストレージ内のインデックスの。

注記

OpenSearch ダッシュボードは PATH メソッドをサポートしていません。を使用するcurl,郵便配達人、または他の方法でコールドメタデータを更新します。

コールドインデックスの削除

ISM ポリシーを使用していない場合は、コールドインデックスを手動で削除できます。次のリクエストは、コールドインデックスを削除します。

DELETE _cold/my-index

コールドストレージを無効にする

コールドストレージを無効にする最も簡単な方法は、OpenSearch Service コンソールを使用することです。ドメインを選択し、編集を選択してから、コールドストレージを有効にする

♪AWSCLI または設定 API のColdStorageOptions、設定"Enabled"="false"

コールドストレージを無効にする前に、コールドインデックスをすべて削除するか、ウォームストレージに移行する必要があります。