创建及管理OpenSearch索引策略
本文介绍如何创建和管理OpenSearch集群的生命周期索引策略。
背景信息
OpenSearch的ISM(Index State Management)是一个索引状态管理插件,支持通过索引使用期限、索引大小或文档数等信息的变化来自动触发周期性的管理操作。通过ISM插件可以自定义索引策略,实现自动处理索引的滚动或删除,以优化集群搜索性能或降低存储成本。ISM的使用流程:
- 创建生命周期策略:在OpenSearch Dashboards创建索引的生命周期策略Policy。
- 索引关联生命周期策略:将索引关联上创建的生命周期策略,生成索引策略。
- 管理索引策略:支持对索引策略进行策略修改、重启和变更。
ISM更多功能请参见索引管理官方介绍。
不同版本的OpenSearch Dashboards页面可能有所差异,请以实际操作环境为准。本文以OpenSearch Dashboards 1.3.6版本作为示例。
创建生命周期策略
- 登录云搜索服务管理控制台。
- 在左侧导航栏,选择“集群管理 > OpenSearch”。
- 在集群列表,选择目标集群,单击操作列的“Dashboards”,登录OpenSearch Dashboards。
- 在OpenSearch Dashboards左侧导航栏选择“Index Management”,进入索引管理页面 。
- 右侧单击“Create policy”,创建索引策略。在Configuration method对话框中,选择“JSON editor”,单击“Continue”进入创建索引策略页面。
- “Policy ID”:自定义策略名称。
- “Define policy”:基于策略示例,配置自定义策略。
图1 配置策略
如下示例中,创建一个名字为“policy1”的策略,其中“ism_template”部分用于指定需要绑定的索引。在此策略创建以后,新创建的以“test”开头的索引会自动与该策略关联。
PUT _plugins/_ism/policies/policy1 { "policy": { "description": "an example policy", "default_state": "hot", "states": [ // 省略state部分 ], "ism_template": { "index_patterns": [ "test*" ], "priority": 100 } } }
- 单击“Create”完成索引策略的创建。
索引关联生命周期策略
- 在OpenSearch Dashboards的“Index Management”页面,选择“Indices”。
- 在Indices列表中选择您要附加策略的一个或多个索引。
- 单击右上角的“Apply policy”,在弹窗中选择要关联的“Policy ID”。
图2 添加引用策略图3 选择索引策略
- 单击“Apply”,完成索引关联策略。
当索引关联策略后,ISM会默认创建一个每5分钟运行一次的作业,用于执行策略操作、检查条件并将索引转换为不同的状态。
管理索引策略
- 在OpenSearch Dashboards的“Index Management”页面,选择“Managed Indices”,进入索引策略管理列表。
此处会展示当前集群已配置的索引策略。
- 在索引策略管理列表,管理策略。
- 当索引的策略状态异常时,可以勾选状态异常的索引,单击“Retry policy”,可以重试策略。
- 当需要更新索引的策略时,可以勾选索引,单击“Change policy”进入变更策略页面,更新策略后,单击“Change”变更策略。
- 当需要解除索引的策略时,可以勾选索引,单击“Remove policy”,在弹窗确认后单击“Remove”该索引将被解除策略。
具体使用可参考索引管理官方介绍。