Skip to content

Conversation

@daisukebe
Copy link
Contributor

rpk cluster storage restore start now supports --cluster-uuid-override for a UUID override.

redpanda-data/common-go#113 is the rpadmin side of things.
redpanda-data/docs#1513 needs to be updated accordingly once this is merged.

Backports Required

  • none - not a bug fix
  • none - this is a backport
  • none - issue does not exist in previous branches
  • none - papercut/not impactful enough to backport
  • v25.3.x
  • v25.2.x
  • v25.1.x

Release Notes

Features

  • rpk: WCR supports --cluster-uuid-override

nvartolomei
nvartolomei previously approved these changes Jan 6, 2026
cmd.Flags().MarkDeprecated("topic-name-pattern", "Not supported")
cmd.Flags().BoolVarP(&wait, "wait", "w", false, "Wait until auto-restore is complete")
cmd.Flags().DurationVar(&pollingInterval, "polling-interval", 5*time.Second, "The status check interval (e.g. '30s', '1.5m'); ignored if --wait is not used")
cmd.Flags().StringVar(&uuidOverride, "cluster-uuid-override", "", "Cluster UUID to restore from")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe something like "Explicit UUID to restore from (i.e. not latest)"?

Want to make sure this does not confuse readers into thinking they must specify it. And also would be helpful to hint at what default behavior is (if left unset).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed. Thanks for the suggestion!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed it to Explicit cluster UUID to restore from; uses the latest if unset in afc60d4

recovery process until it's finished.`,
recovery process until it's finished.
Use --cluster-uuid-override if the cluster was re-initialized after the backup,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The addition is confusing. The cluster currently running can also be considered as "re-initialized after the backup" from user point of view...

Need a more precise wording.

The command description also looks wrong. This restores more than just topics.

Maybe just link to docs instead where we can be more wordy?

https://docs.redpanda.com/current/manage/recovery-mode/

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@r-vasquez is just linking to https://docs.redpanda.com/current/manage/disaster-recovery/whole-cluster-restore/ in the command description appropriate from rpk pov?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wdyt about this?

Start the cluster restoration process.

This command starts the process of restoring data from a failed cluster with
Tiered Storage enabled, including its metadata, onto a new cluster.
If the wait flag (--wait/-w) is set, the command will poll the status of the
recovery process until it's finished.

Use --cluster-uuid-override if you want to specify a not latest cluster UUID
to restore from. For more information, visit https://docs.redpanda.com/current/manage/disaster-recovery/whole-cluster-restore/.

cc: @Feediver1

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use --cluster-uuid-override if you want to specify a not latest cluster UUID
to restore from.

How about: "Use --cluster-uuid-override if you want to specify an explicit cluster UUID
to restore from"?

If you have the context than this sentence makes perfect sense. Otherwise it is vague (but not misleading) which should make the reader follow to the docs.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@daisukebe yes, it's appropriate. We tend to avoid it as it can be easily changed (the URL) while changing rpk requires a release.

If we can explain all we need in our rpk help text, good, if not, linking is better than having nothing.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good to me. Thanks!

nvartolomei

This comment was marked as off-topic.

@nvartolomei nvartolomei dismissed their stale review January 6, 2026 09:21

didn't mean to approve

@daisukebe daisukebe force-pushed the wcr-support-uuid-overrides branch from 11f708d to afc60d4 Compare January 8, 2026 01:25
@daisukebe daisukebe requested a review from nvartolomei January 8, 2026 01:34
@vbotbuildovich
Copy link
Collaborator

CI test results

test results on build#78675
test_class test_method test_arguments test_kind job_url test_status passed reason test_history
MountUnmountIcebergTest test_simple_remount {"cloud_storage_type": 1} integration https://buildkite.com/redpanda/redpanda/builds/78675#019b9b41-b677-4f83-9d94-27802adc1731 FLAKY 8/11 Test PASSES after retries.No significant increase in flaky rate(baseline=0.2201, p0=0.6818, reject_threshold=0.0100. adj_baseline=0.5256, p1=0.0389, trust_threshold=0.5000) https://redpanda.metabaseapp.com/dashboard/87-tests?tab=142-dt-individual-test-history&test_class=MountUnmountIcebergTest&test_method=test_simple_remount

Copy link
Contributor

@nvartolomei nvartolomei left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm from core perspective 👍

@r-vasquez r-vasquez merged commit ae7e710 into redpanda-data:dev Jan 8, 2026
22 of 26 checks passed
@vbotbuildovich
Copy link
Collaborator

/backport v25.3.x

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants