首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将elasticsearch别名指向当前索引,并从索引模板中删除旧索引中的别名?

如何将elasticsearch别名指向当前索引,并从索引模板中删除旧索引中的别名?
EN

Stack Overflow用户
提问于 2019-09-17 12:30:39
回答 1查看 4.2K关注 0票数 1

在我们的应用程序中,我们每天创建elasticsearch索引,索引模式是index-。(例如,指数-17-09-2019年)。但是我们的应用程序通过一个别名访问索引,别名指向当前索引。现在,通过cron作业附加和删除带有索引的别名。是否可以通过索引模板来完成,因为我们正在避免cron作业。我们可以通过索引模板使用索引附加别名,但我不确定是否可以将别名与旧索引分离,并通过索引模板将其添加到新索引中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-17 12:53:00

这可以通过内置索引生命周期管理(ILM)来完成。您的应用程序将向索引别名发送数据,ILM将处理其余部分。

这里是对如何实现它的描述,但基本上您需要:

1.创建ILM作业

代码语言:javascript
运行
复制
PUT /_ilm/policy/my_policy
{
  "policy": {
    "phases": {
      "hot": {
        "actions": {
          "rollover": {
            "max_age": "1d"
          }
        }
      }
    }
  }
}

2.使用附加的ILM策略创建索引模板

代码语言:javascript
运行
复制
PUT _template/my_template
{
  "index_patterns": ["test-*"], 
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 1,
    "index.lifecycle.name": "my_policy", 
    "index.lifecycle.rollover_alias": "test-alias" 
  }
}

3.通过创建init索引启动进程

代码语言:javascript
运行
复制
PUT test-000001 
{
  "aliases": {
    "test-alias":{
      "is_write_index": true 
    }
  }
}

这将帮助您每天在没有外部CRON作业的情况下创建新索引。您还可以扩展您的策略,稍后扩展到例如在滚转后7天后删除旧指数

希望这能有所帮助。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57974267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档