Skip to content

Enhance rollover API and ILM rollover action to specify max single primary shard size #63026

Open
@dakrone

Description

@dakrone

Currently when configuring either a manual rollover or rollover via ILM, a user can specify "max_size" as one of the rollover conditions. However, this parameter has an ambiguous name that has led to a lot of confusion about how the size is exactly calculated.

We've also discussed how rollover is used as an aid to generate shards of a certain size, so it would be helpful to have a parameter that was independent of the number of primary shards in an index. (for example, max_size: 50gb currently means you'll have 1 50gb shard by default, but if you change the number of primary shards to 2, then you'll end up with 2 25gb shards).

We should introduce a new parameter that is the maximum size of a single primary shard for the index. For example:

max_single_primary_size: 50gb

(that may not end up being the final name, it's just an example). This parameter means that once a single primary shard (any of them) has hit 50gb, the index should be rolled over.

Once we have this new parameter we can:

  • Add support for this parameter to the ILM rollover action
  • Switch our shipped templates that use ILM policies to use this parameter
  • Tell Fleet and other ILM policy installers about the new parameter to have them switch
  • Deprecate the ambiguous max_size parameter and potentially add the existing behavior as a more descriptive name (if we decide we want to keep it)
  • Remove max_size from 8.0+ (as a breaking change)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions