незаконный_аргумент_exception: index.lifecycle.rollover_alias [metricbeat-6.8.4-alias] не указывает на индекс [metricbeat-6.8.4-2020.02.24]

в настоящее время ищу помощь по настройке ilm, я установил шаблон, псевдоним индекса и политику, как показано ниже

PUT metricbeat-6.8.4-alias-000001
{
  "aliases": {
    "metricbeat-6.8.4-alias": {
      "is_write_index": true
    }
  }
}

PUT _template/metricbeat-6.8.4-alias
{
  "index_patterns": ["metricbeat-6.8.4-*"],                 
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 1,
    "index.lifecycle.name": "Delete_Index",      
    "index.lifecycle.rollover_alias": "metricbeat-6.8.4-alias"    
  }
}

но все же возникла ошибка, как показано ниже

illegal_argument_exception: index.lifecycle.rollover_alias [metricbeat-6.8.4-alias] does not point to index [metricbeat-6.8.4-2020.02.24]

Ищете помощь, как правильно настроить ilm? Благодарность


person Yoga Arie    schedule 24.02.2020    source источник


Ответы (2)


Создание псевдонима с политикой жизненного цикла - это трехэтапный процесс.

Elastic предоставляет отличное руководство

Короче:

  1. Создайте политику жизненного цикла, определяющую соответствующие фазы и действия.
  2. Создайте шаблон индекса, чтобы применить политику к каждому новому индексу.
  3. Загрузите индекс как начальный индекс записи.

Я думаю, вы создаете шаблон ПОСЛЕ создания первого индекса. Сначала вы должны создать ilm, затем шаблон, в котором вы указываете, какую политику ilm вы хотите использовать для индексов, и, наконец, создать первый индекс (bootstrap).

Пример в коде:

var indexName = "index_name";
var indexPattern = $"{indexName}-*";
var aliasName = $"{indexName}-alias";
var policyName = $"{indexName}-policy";
var firstIndexName = $"{indexName}-000001";

PUT _ilm/policy/index_name-policy
{
    "policy": {
        "phases": {
            "hot": {
                "actions": {
                    "rollover": {
                        "max_size": "5gb",
                        "max_docs": 10000,
                        "max_age":"2d"
                    }
                }
            },
            "warm": {
                "min_age": "5d",
                "actions": {
                }
            },
            "delete": {
                "min_age": "10d",
                "actions": {
                    "delete": {}
                }
            }
        }
    }
}

PUT _template/index_name-template
{
    "index_patterns": ["{{.IndexPattern}}"],
    "settings": {
        "index.number_of_shards": "1",
        "index.number_of_replicas": "1",
        "index.lifecycle.name": "{{.PolicyName}}", 
        "index.lifecycle.rollover_alias": "{{.AliasName}}" 
    },
    "mappings": {
         "_source": {
            "enabled": true
         },
         "properties": {
            {{Properties}}
        }
    }
}

PUT index_name-000001
{
   "aliases": {
        "{{.AliasName}}":{
            "is_write_index": true 
        }
    }
}

person L.querter    schedule 13.05.2020
comment
Я получаю сообщение об ошибке resource_already_exists_exception после PUT index_name-000001 - person QkiZ; 20.11.2020

Если у вас есть ролловер в политике жизненного цикла, удалите его, а затем удалите псевдоним часть вот так;

до

  "index_patterns": ["this-is-index-*"],                 
  "settings": {
    "number_of_shards": 3,
    "number_of_replicas": 1,
    "index.lifecycle.name": "delete-index-policy",      
    "index.lifecycle.rollover_alias": "this-is-alias-*.*.*" 

после

  "index_patterns": ["this-is-index-*"],                 
  "settings": {
    "number_of_shards": 3,
    "number_of_replicas": 1,
    "index.lifecycle.name": "delete-index-policy"  
person hbceylan    schedule 30.03.2021