阿里云Elasticsearch 7.10日志增强版(Indexing Service)将索引构建写入部分全部托管在云端的Elasticsearch集群中,以满足海量时序日志数据的快速写入要求。本文介绍如何通过索引管理功能实现云端索引管理。
使用限制
仅阿里云Elasticsearch 7.10日志增强版实例支持在Elasticsearch控制台使用索引管理功能。
说明 非日志增强版实例,如果要使用索引管理功能,可以登录Kibana控制台,进入Management页面使用Kibana的索引管理功能进行索引管理。由于不同版本的Kibana操作页面有差异,进入索引管理页面的路径均不同,使用时可以参考对应版本的Kibana官方文档。Elasticsearch 7.10版本进入Kibana索引管理页面的路径为:Management > Stack Management > Data > Index
Management。
注意事项
- 阿里云Elasticsearch 7.10日志增强版Indexing Service默认为所有索引开启云端写入托管(系统索引除外)。集群中的数据流Data Stream索引以及非Data Stream数据集的独立索引均默认在云端服务进行写入托管。
- Indexing Service按照写入托管索引总大小和写入流量进行按量计费,业务上建议使用数据流(Data Stream)和索引生命周期管理(ILM)滚动策略实现云端托管空间最优化。
- Indexing Service场景,索引处于托管状态,不兼容ILM Action中的shrink操作,建议ILM取消shrink配置或取消托管后再执行shrink操作,详细信息请参见ILM-shrink。
- Indexing Service日志增强版实例与用户集群进行数据同步时,依赖于apack/cube/metadata/sync任务(可通过
GET _cat/tasks?v
命令获取该任务信息),不建议手动清理该任务。如果被清理,请尽快使用POST /_cube/meta/sync
命令恢复,否则会影响业务写入。
操作步骤
相关API
- 取消索引托管。
POST /<yourIndexName>/_cube/unfollow
强制取消索引托管:取消托管过程中索引需完成段合并后才会结束托管,段合并耗时一般与segment数量、数据写入情况及数据量等有关系,如果耗时较长,对于内核版本为1.6及以上的日志增强版实例可通过如下命令,强制取消索引托管。POST /<yourIndexName>/_cube/unfollow?force=true
<yourIndexName>:需要替换为您实际的索引名称。重要- 取消/强制取消索引托管API无法批量取消索引托管,频繁取消索引托管,对托管服务影响较大,建议不要频繁操作。
- 仅内核版本为1.6及以上的日志增强版实例支持强制取消索引托管。对于内核版本低于1.6的实例,可升级内核版本,具体操作请参见升级版本。
- 获取托管状态信息。
GET /<yourIndexName>/_cube/stats
<yourIndexName>:需要替换为您实际的索引名称。
- 获取集群托管到Indexing Service的整体状态。
GET /_cube/stats
- 将快照恢复到Indexing Service实例。
例如将my_backup仓库中,snapshot_1快照中的index_1索引数据恢复到Indexing Service实例中,示例如下。说明 实际使用时,您需要将对应信息替换为您实际的信息。
POST /_snapshot/my_backup/snapshot_1/_restore { "indices": "index_1", "ignore_index_settings": [ "index.apack.cube.following_index" ] }
- 手动触发数据流Rollover。
POST <yourDatastreamName>/_rollover
<yourDatastreamName>:需要替换为您实际的数据流名称。