Skip to content

Commit

Permalink
Add note about ILM and Snapshots (#36023)
Browse files Browse the repository at this point in the history
This commit documents how Index Lifecycle Management
interacts with snapshot/restore, and documents a workaround
for situations in which ILM should not immediately resume
managing an index after it is restored.
  • Loading branch information
gwbrown authored Nov 30, 2018
1 parent ea7ea51 commit d765296
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 0 deletions.
35 changes: 35 additions & 0 deletions docs/reference/ilm/ilm-and-snapshots.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
[role="xpack"]
[testenv="basic"]
[[index-lifecycle-and-snapshots]]
== Restoring Snapshots of Managed Indices

beta[]

When restoring a snapshot that contains indices managed by Index Lifecycle
Management, the lifecycle will automatically continue to execute after the
snapshot is restored. Notably, the `min_age` is relative to the original
creation or rollover of the index, rather than when the index was restored. For
example, a monthly index that is restored partway through its lifecycle after an
accidental deletion will be continue through its lifecycle as expected: The
index will be shrunk, reallocated to different nodes, or deleted on the same
schedule whether or not it has been restored from a snapshot.

However, there may be cases where you need to restore an index from a snapshot,
but do not want it to automatically continue through its lifecycle, particularly
if the index would rapidly progress through lifecycle phases due to its age. For
example, you may wish to add or update documents in an index before it is marked
read only or shrunk, or prevent an index from automatically being deleted.

To stop lifecycle policy execution on an index restored from a snapshot, before
restoring the snapshot, <<start-stop-ilm,lifecycle policy execution can be
paused>> to allow the policy to be removed.

For example, the following workflow can be used in the above situation to
prevent the execution of the lifecycle policy for an index:

1. Pause execution of all lifecycle policies using the <<ilm-stop,Stop ILM API>>
2. Restore the snapshot.
3. Perform whatever operations you wish before resuming lifecycle execution, or
remove the lifecycle policy from the index using the
<<ilm-remove-policy,Remove Policy from Index API>>
4. Resume execution of lifecycle policies using the <<ilm-start,Start ILM API>>
2 changes: 2 additions & 0 deletions docs/reference/ilm/index.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -64,4 +64,6 @@ include::update-lifecycle-policy.asciidoc[]

include::error-handling.asciidoc[]

include::ilm-and-snapshots.asciidoc[]

include::start-stop-ilm.asciidoc[]

0 comments on commit d765296

Please sign in to comment.