首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何防止碎片从热节点转移到温暖或冷节点?

如何防止碎片从热节点转移到温暖或冷节点?
EN

Stack Overflow用户
提问于 2020-10-29 07:57:04
回答 2查看 2.6K关注 0票数 0

我有什么

  • Elasticsearch (7.7.0)集群(amazon/:1.8.0 Docker映像)
    • 一个主节点
    • 一个协调节点
    • 带有node.attr.data=hot的两个数据节点
    • 一个带有node.attr.data=warm的数据节点

我想要什么:防止碎片分配和重新定位从热数据节点到温暖(未来寒冷)数据节点。

我试过什么

我已经为所有索引模板设置了"index.routing.allocation.require.data": "hot",所以新创建的索引不会分配给任何热点数据节点。这个很好用。

无论如何,我不能限制碎片从热节点迁移到温暖。目前,我正在使用"cluster.routing.allocation.exclude._ip" : "warm data node ip"来防止从热数据节点迁移到温暖的数据节点。但是我能在这个过滤器中使用ILM吗?

我也试过

代码语言:javascript
运行
复制
PUT _cluster/settings
{
  "transient": {
    "cluster.routing.allocation.awareness.attributes": ["data"]
  }
}

PUT _cluster/settings
{
  "transient": {
    "cluster.routing.allocation.awareness.force.data.values": ["hot"]
  }
}

然后删除"cluster.routing.allocation.exclude._ip"过滤器。无论如何,碎片正在从热数据节点重新定位到温暖的数据节点。我遗漏了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-10-29 14:27:38

我必须更新我的旧切口的设置:

代码语言:javascript
运行
复制
PUT my-index/_settings
{
  "index.routing.allocation.require.data": "hot"
}

如果索引模板被更新,则在特定索引模板下的索引将不会被更新。

票数 0
EN

Stack Overflow用户

发布于 2020-10-29 08:42:22

我想你错过了ILM政策中的分配意识。你的温暖阶段定义应该有

代码语言:javascript
运行
复制
"allocate": {
   "require": {
        "data": "warm"
    }
}

将其从您的定义中删除,它将解决您的问题。

对于我来说,最好的文章是https://www.elastic.co/blog/implementing-hot-warm-cold-in-elasticsearch-with-index-lifecycle-management,你会发现一个完整的例子,那就是“优化你的ILM策略以适应热、温、冷”。

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

https://stackoverflow.com/questions/64587026

复制
相关文章

相似问题

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