Skip to content

[Internal]: Document Fleet ILM policy picker for integration namespaces #7701

Description

@vishaangelova

Description

Document the Fleet UI/API feature that lets users assign an ILM policy to an integration namespace from Data retention settings in the integration policy editor.

This feature requires opt-in for dedicated namespace index templates ({namespace}@custom / namespace index templates). It is Stack-only (the UI control is not rendered on Serverless).

Related product work:

Why this is a separate docs issue

Namespace customization docs (#6545) and the overlapping-template tutorial (#7683) do not cover the ILM policy picker. The picker:

  • Has its own release note (release_note:feature)
  • Is unavailable on Serverless
  • Overlaps with / may update the existing ILM tutorial Scenario 3 (manual index-template cloning for namespace-specific ILM)

Suggested documentation targets

Page Action Why
New page or section under Fleet data streams (ILM / retention) Document assigning an ILM policy per (package, namespace) after namespace opt-in (UI + API) Users discover the picker from the policy editor; need to understand it is namespace-scoped, not policy-scoped
reference/fleet/data-streams-namespace-custom.md Follow-up when this ILM docs work lands: add a short note on the composed_of example that assigning an ILM policy inserts a Fleet-managed component template named {type}-{dataset}@namespace.{namespace} between {namespace}@custom and the data-stream @custom, plus a link to the new ILM docs Users who inspect templates after using Data retention settings will see an extra entry that the current opt-in-only example does not show. Deferred so we do not link to docs that do not exist yet.
reference/fleet/data-streams-ilm-tutorial.md / data-streams-scenario3.md Update Scenario 3 (or add a new scenario) to prefer the UI picker when available, and keep the clone-based path as legacy/fallback Scenario 3 currently teaches cloning index templates to get namespace-specific ILM

Feature details (for authors)

Already captured in product PR / outcome; keep docs aligned with:

  • Stored on the package installation as namespace_customization_settings: { [namespace]: { ilm_policy?: string } }
  • Fleet-managed component template per (data stream, namespace): {type}-{dataset}@namespace.{namespace} with index.lifecycle.name, referenced from the namespace index template composed_of between {namespace}@custom and {type}-{dataset}@custom
  • UI: ILM dropdown in Data retention settings, gated on namespace opt-in, manage_ilm, and non-serverless
  • API: PUT kbn:/api/fleet/epm/packages/<pkg> with namespace_customization_settings (clear with {} for that namespace)

Additional behavior from #258053 / #275197 that authors should cover (not already implied by the bullets above):

  • Shared setting: two package policies for the same package and namespace share one ILM assignment; different namespaces can use different policies
  • Rollover: Fleet triggers a best-effort async rollover (fleet:sync_ilm_policy); changes apply to new backing indices after rollover, not retroactively to existing ones
  • Create policies first: users must create ILM policies in Stack Management; the picker does not create them inline
  • Non-goals for this feature (and docs): per–data-stream ILM in the Fleet UI, DSL support, inline ILM creation
  • Precedence: if a user also sets index.lifecycle.name on the data-stream @custom template, that still wins over the Fleet-managed namespace ILM component template
  • Known product caveat (check before documenting opt-out): kibana#280422 (open) — error when turning off dedicated namespace templates after an ILM was selected; document opt-out carefully until fixed

Which deployment methods does this change impact?

Elastic On-Prem and Cloud (Stack). Not available in the Serverless UI.

What Elastic Stack release is this request related to?

9.5

Point of contact

Main contact: @jillguyonnet

Stakeholders: @elastic/fleet

Docs owner / follow-up from: @vishaangelova (opened as follow-up while documenting #6545)

Metadata

Metadata

Assignees

Labels

9.5Team:SKIIssues owned by the SKI Docs Team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions