微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Opendistro for Elasticsearch-ISM不会触发作业

如何解决Opendistro for Elasticsearch-ISM不会触发作业

我正在将ISM与AWS Elasticsearch Service v7.8上的opendistro结合使用。我正在尝试建立基本的过渡/删除策略,但该策略似乎未触发。我以为我做错了什么,但似乎无法对其进行追踪...我正在每小时进行一次滚动测试,并在6小时后进行删除...

这是我的ISM政策,我将其恰当地命名为“测试”:

{
    "policy": {
        "policy_id": "test","description": "A test policy","last_updated_time": 1605196195481,"schema_version": 1,"error_notification": null,"default_state": "active","states": [{
                "name": "active","actions": [{
                    "rollover": {
                        "min_index_age": "1h"
                    }
                }],"transitions": [{
                    "state_name": "delete","conditions": {
                        "min_index_age": "6h"
                    }
                }]
            },{
                "name": "delete","actions": [{
                    "delete": {}
                }],"transitions": []
            }
        ]
    }
}

我已经创建了一个模板来维护索引的创建等。这是模板。注意,我要添加过渡别名“ atest”,但policy_id是“ test”。我没有将索引添加到此模板中的任何别名:

PUT /_template/atest
{
    "index_patterns" : [
      "atest-*"
    ],"settings" : {
      "index" : {
        "opendistro" : {
          "index_state_management" : {
            "policy_id" : "test","rollover_alias" : "atest"
          }
        },"analysis" : {
        }
      }
    },"mappings" : {
    },"aliases" : { }
}

然后我使用模板中的索引模式创建索引,并将其添加到我上面定义的过渡别名中:

PUT /atest-000001
{
  "aliases": {"atest": {}}
}

然后我可以在opendistro-ism-config索引中看到该文档:

{
  "_index": ".opendistro-ism-config","_type": "_doc","_id": "T_k8jMI5RvuWRaLp1tY_hg","_version": 2,"_score": null,"_source": {
    "managed_index": {
      "name": "atest-000001","enabled": true,"index": "atest-000001","index_uuid": "T_k8jMI5RvuWRaLp1tY_hg","schedule": {
        "interval": {
          "start_time": 1605200587242,"period": 30,"unit": "Minutes"
        }
      },"last_updated_time": 1605200587242,"enabled_time": 1605200587242,"policy_id": "test","policy_seq_no": 422,"policy_primary_term": 111,"policy": {
        "policy_id": "test","states": [
          {
            "name": "active","actions": [
              {
                "rollover": {
                  "min_index_age": "1h"
                }
              }
            ],"transitions": [
              {
                "state_name": "delete","conditions": {
                  "min_index_age": "6h"
                }
              }
            ]
          },{
            "name": "delete","actions": [
              {
                "delete": {}
              }
            ],"transitions": []
          }
        ]
      },"change_policy": null
    }
  },"fields": {
    "managed_index.last_updated_time": [
      "2020-11-12T17:03:07.242Z"
    ],"policy.last_updated_time": [],"policy.states.actions.notification.destination.last_update_time": [],"policy.error_notification.destination.last_update_time": [],"managed_index.schedule.interval.start_time": [
      "2020-11-12T17:03:07.242Z"
    ],"managed_index.enabled_time": [
      "2020-11-12T17:03:07.242Z"
    ]
  },"sort": [
    1605200587242
  ]
}

在某些时候,我看到托管索引信息从“初始化”变为

{
    "message": "Successfully initialized policy: test"
}

在这一点上,什么都没有发生。在kibana的ISM控制台中,“ atest-000001”行表示“状态”为“活动”,“操作”为“-”,“作业状态”为“正在运行”。这样会持续几天... 我也尝试过:

PUT _cluster/settings
{
  "persistent": {
    "opendistro.index_state_management.enabled" : true
    
  }
}

仍然没有任何触发。我在做什么错了?

解决方法

结果证明这是内部AWS ES事务。更新到R20201117解决了该问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?