Missing Alias On Rollover

Versions (relevant - OpenSearch/Dashboard/Server OS/Browser):
Opensearch-2.12.0
Dashboard-2.12.0
RHEL-8.8
Microsoft Edge-128.0.2739.67

The issue:
I am experiencing the “Missing rollover_alias index setting [index=tomcat-000004]” error while rolling over the index. I’ve configured an alias named “tomcat_write” and make Logstash index the logs to “tomcat_write”. I am able to manually rollover my latest index (tomcat-000003 for example), the manual rollover action works fine and creates next indice tomcat-000004 and sets “is_write_index: true” for only the latest index but the rollover action does not work by itself.

Any help is appreciated,

Thanks.

Configuration:

index_template
{
  "index_templates": [
    {
      "name": "tomcat_template",
      "index_template": {
        "index_patterns": [
          "tomcat-*"
        ],
        "template": {
          "settings": {
            "index": {
              "opendistro": {
                "index_state_management": {
                  "rollover_alias": "tomcat_write"
                }
              }
            }
          }
        },
        "composed_of": []
      }
    }
  ]
}
rollover_policy
{
    "id": "rollover",
    "seqNo": 90019,
    "primaryTerm": 3,
    "policy": {
        "policy_id": "rollover",
        "description": "manage log rotation",
        "last_updated_time": 1727735539094,
        "schema_version": 21,
        "error_notification": null,
        "default_state": "hot",
        "states": [
            {
                "name": "hot",
                "actions": [
                    {
                        "retry": {
                            "count": 3,
                            "backoff": "exponential",
                            "delay": "1m"
                        },
                        "rollover": {
                            "min_index_age": "1h",
                            "copy_alias": false
                        }
                    }
                ],
                "transitions": [
                    {
                        "state_name": "delete_state",
                        "conditions": {
                            "min_index_age": "2h"
                        }
                    }
                ]
            },
            {
                "name": "delete_state",
                "actions": [
                    {
                        "retry": {
                            "count": 3,
                            "backoff": "exponential",
                            "delay": "1m"
                        },
                        "delete": {}
                    }
                ],
                "transitions": []
            }
        ],
        "ism_template": [
            {
                "index_patterns": [
                    "tomcat*"
                ],
                "priority": 100,
                "last_updated_time": 1727726583376
            }
        ]
    }
}
alias
{
  "tomcat-000003": {
    "aliases": {
      "tomcat_write": {
        "is_write_index": false
      }
    }
  },
  "tomcat-000004": {
    "aliases": {
      "tomcat_write": {
        "is_write_index": true
      }
    }
  },
  "tomcat-000001": {
    "aliases": {
      "tomcat_write": {
        "is_write_index": false
      }
    }
  },
  "tomcat-000002": {
    "aliases": {
      "tomcat_write": {
        "is_write_index": false
      }
    }
  }
}

Relevant Logs or Screenshots:


The rollover alias is either declared in the index template or when you assign the ISM template using the gui.

If you set it in the index template it is in the settings section:

    "settings": {
        "number_of_shards": 1,
        "number_of_replicas": 1,
        "plugins.index_state_management.rollover_alias": "cuss_heartbeat"
    },

Thanks,
I’ve resolved the issue by setting the rollover alias in settings.