Index.lifecycle.rollover_alias [metricbeat] does not point to index [metricbeat-XXX]

Dear all,
I have a problem with a rollover for a metric beat index.
I created a ILM Policy I setup metric beat to send data as follow:

   setup.ilm.check_exists: false
   setup.ilm.overwrite: true
   setup.ilm.enabled: true
   setup.template.overwrite: true
   setup.ilm.pattern: "{now/d}-000001"
   setup.ilm.policy_name: "metricbeat-test"

GET /metricbeat-*/_ilm/explain

I have:

"metricbeat-7.9.0" : {
     "index" : "metricbeat-7.9.0",
     "managed" : true,
     "policy" : "metricbeat-test",
     "lifecycle_date_millis" : 1609840383887,
     "age" : "12.53m",
     "phase" : "hot",
     "phase_time_millis" : 1609840385090,
     "action" : "rollover",
     "action_time_millis" : 1609840468717,
     "step" : "ERROR",
     "step_time_millis" : 1609841067798,
     "failed_step" : "check-rollover-ready",
     "is_auto_retryable_error" : true,
     "step_info" : {
       "type" : "illegal_argument_exception",
       "reason" : "index.lifecycle.rollover_alias [metricbeat] does not point to index [metricbeat-7.9.0]",
       "stack_trace" : """java.lang.IllegalArgumentException: index.lifecycle.rollover_alias [metricbeat] does not point to index [metricbeat-7.9.0]
   at org.elasticsearch.xpack.core.ilm.WaitForRolloverReadyStep.evaluateCondition(WaitForRolloverReadyStep.java:114)
   at org.elasticsearch.xpack.ilm.IndexLifecycleRunner.runPeriodicStep(IndexLifecycleRunner.java:174)
   at org.elasticsearch.xpack.ilm.IndexLifecycleService.triggerPolicies(IndexLifecycleService.java:327)
   at org.elasticsearch.xpack.ilm.IndexLifecycleService.triggered(IndexLifecycleService.java:265)
   at org.elasticsearch.xpack.core.scheduler.SchedulerEngine.notifyListeners(SchedulerEngine.java:183)
   at org.elasticsearch.xpack.core.scheduler.SchedulerEngine$ActiveSchedule.run(SchedulerEngine.java:216)
   at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
   at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
   at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
   at java.base/java.lang.Thread.run(Thread.java:832)
"""
     },
     "phase_execution" : {
       "policy" : "metricbeat-test",
       "phase_definition" : {
         "min_age" : "0ms",
         "actions" : {
           "rollover" : {
             "max_size" : "50gb",
             "max_age" : "30d"
           }
         }
       },
       "version" : 616649,
       "modified_date_in_millis" : 1609840384048
     }
   }

Does anyone have a solution or a hint?
best regards

You can resolve that with a request like this one;


PUT /metricbeat-7.9.0/_alias/metricbeat

But that doesn't look right as you don't have a counter attached to the underlying index name.

I'll do this and I'll send a feedback soon
thanks for your time

I have an error

{
  "error" : {
    "root_cause" : [
      {
        "type" : "invalid_alias_name_exception",
        "reason" : "Invalid alias name [metricbeat], an index exists with the same name as the alias",
        "index_uuid" : "rGsnNTnYTjG5sBVi_R4dnA",
        "index" : "metricbeat"
      }
    ],
    "type" : "invalid_alias_name_exception",
    "reason" : "Invalid alias name [metricbeat], an index exists with the same name as the alias",
    "index_uuid" : "rGsnNTnYTjG5sBVi_R4dnA",
    "index" : "metricbeat"
  },
  "status" : 400
}

I'm trying to configure metricbeat as client and associate it with an ILM, I did it with filebeat and it's works but with filebeat I have and index as follow

filebeat-7.9.0-2020.12.17-000009

filebeat-version-date-XXXXXX
with metricbeat I have only,
metricbeat-version