教程:实现索引状态管理过程的自动化 - 亚马逊 OpenSearch 服务
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

教程:实现索引状态管理过程的自动化

本教程演示如何实施自动执行日常索引管理任务的 ISM 策略,并将其应用于索引和索引模式。

通过 Amazon OpenSearch Service 中的索引状态管理(ISM),您可以自动执行定期索引管理活动,从而避免使用其他工具来管理索引生命周期。您可以创建一个策略,根据索引期限、大小和其他条件自动执行这些操作,所有这些操作都在您的 Amazon OpenSearch Service 域中完成。

OpenSearch Service 支持三个存储层:用于主动写入和低延迟分析的默认“热”状态,用于存储高达 3 PB 只读数据的 UltraWarm,以及用于无限长期存档的冷存储。

本教程提供在每日索引中处理时间序列数据的使用案例示例。在本教程中,您将设置一个策略,该策略在 24 小时后自动拍摄每个附加索引的快照。然后,该策略会在两天后将索引从默认的热状态迁移至 UltraWarm 存储,并在 30 天后迁移至冷存储,最后在 60 天后删除索引。

先决条件

步骤 1:配置 ISM 策略

首先,在 OpenSearch 控制面板中配置 ISM 策略。

  1. 在 OpenSearch Service 控制台中的域控制面板中,导航到 OpenSearch 控制面板 URL,然后使用您的主用户名和密码登录。URL 遵循此格式:domain-endpoint/_dashboards/

  2. 在 OpenSearch 控制面板中,选择 Add sample data(添加示例数据)并将一个或多个示例索引添加到您的域。

  3. 打开左侧导航面板,然后依次选择 Index Management(索引管理)、Create policy(创建策略)。

  4. 将策略命名为 ism-policy-example

  5. 将默认策略替换为以下策略:

    { "policy": { "description": "Move indexes between storage tiers", "default_state": "hot", "states": [ { "name": "hot", "actions": [], "transitions": [ { "state_name": "snapshot", "conditions": { "min_index_age": "24h" } } ] }, { "name": "snapshot", "actions": [ { "retry": { "count": 5, "backoff": "exponential", "delay": "30m" }, "snapshot": { "repository": "snapshot-repo", "snapshot": "ism-snapshot" } } ], "transitions": [ { "state_name": "warm", "conditions": { "min_index_age": "2d" } } ] }, { "name": "warm", "actions": [ { "retry": { "count": 5, "backoff": "exponential", "delay": "1h" }, "warm_migration": {} } ], "transitions": [ { "state_name": "cold", "conditions": { "min_index_age": "30d" } } ] }, { "name": "cold", "actions": [ { "retry": { "count": 5, "backoff": "exponential", "delay": "1h" }, "cold_migration": { "start_time": null, "end_time": null, "timestamp_field": "@timestamp", "ignore": "none" } } ], "transitions": [ { "state_name": "delete", "conditions": { "min_index_age": "60d" } } ] }, { "name": "delete", "actions": [ { "cold_delete": {} } ], "transitions": [] } ], "ism_template": [ { "index_patterns": [ "index-*" ], "priority": 100 } ] } }
    注意

    ism_template 字段会自动将策略附加到与指定 index_patterns 之一匹配的任何新创建的索引。在这种情况下,为所有以 index- 开头的索引。您可以修改此字段以匹配您的环境中的索引格式。有关更多信息,请参阅 ISM 模板

  6. 在策略的 snapshot 部分,将 snapshot-repo 替换为您为域注册的快照存储库的名称。您还可以选择替换 ism-snapshot,该名称是创建快照时的名称。

  7. 选择 Create(创建)。现在,State management policies(状态管理策略)页面上会显示该策略。

步骤 2:将该策略附加到一个或多个索引

现在,您已创建策略,请将其附加到集群中的一个或多个索引。

  1. 转至 Hot indicies(热索引)选项卡并搜索 opensearch_dashboards_sample,其中列出了您在步骤 1 中添加的所有示例索引。

  2. 选择所有索引并选择 Apply policy(应用策略),然后选择您刚刚创建的 ism-policy-example 策略。

  3. 选择 Apply(应用)。

在索引切换不同的状态时,您可以在 Policy managed indices(策略管理索引)页面上监控索引。