Skip to content

DOC-12561 Continuous backup PITR#4138

Open
ggray-cb wants to merge 28 commits into
release/8.1from
DOC-12561_Continuous_backup_PITR
Open

DOC-12561 Continuous backup PITR#4138
ggray-cb wants to merge 28 commits into
release/8.1from
DOC-12561_Continuous_backup_PITR

Conversation

@ggray-cb

@ggray-cb ggray-cb commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Adds documentation for Continuous backup and point-in-time recovery,

The links in the following changes led to the preview site. You will need the Docs Team credentials on Confluence.

New pages added:

Existing pages updated:

Please review by July 12th.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Adds Couchbase Server 8.1 documentation and reference updates for the new Continuous Backup + Point-in-Time Recovery (PITR) capabilities, including new Learn/Manage pages, navigation entries, and supporting operational reference updates (ports/processes/metrics metadata).

Changes:

  • Introduces new Learn + Manage documentation for continuous backup and PITR, plus example command/log snippets.
  • Updates site navigation and related “new features”/cross-reference pages to surface continuous backup.
  • Extends metrics metadata and operational reference docs (install ports + server processes) to reflect new/updated functionality.

Reviewed changes

Copilot reviewed 19 out of 20 changed files in this pull request and generated 23 comments.

Show a summary per file
File Description
preview/DOC-12561_Continuous_backup_PITR.yml Adds a preview build config enabling the backup content source for the DOC-12561 preview.
modules/ROOT/nav.adoc Adds nav entries for the new continuous backup/PITR learn + manage pages.
modules/metrics-reference/attachments/n1ql_metrics_metadata.json Adds/adjusts SQL++ (N1QL) metrics metadata entries.
modules/metrics-reference/attachments/kv_metrics_metadata.json Adds/adjusts KV metrics metadata (including continuous backup/magma/fusion-related metrics).
modules/metrics-reference/attachments/index_metrics_metadata.json Adds new index metrics metadata for vector-related index counts.
modules/metrics-reference/attachments/goxdcr_metrics_metadata.json Updates XDCR metrics help/notes and adjusts a metric type/version entry.
modules/metrics-reference/attachments/fts_metrics_metadata.json Adds new FTS metrics metadata for vector indexes in CPU/GPU memory.
modules/metrics-reference/attachments/cm_metrics_metadata.json Adds a new CM telemetry metric metadata entry.
modules/manage/pages/manage-backup-and-restore/monitor-continuous-backup.adoc New “monitor continuous backup” operational doc page.
modules/manage/pages/manage-backup-and-restore/manage-pitr.adoc New PITR management doc page.
modules/manage/pages/manage-backup-and-restore/manage-continuous-backup.adoc New “configure/manage continuous backup” doc page.
modules/manage/examples/continuous-backup.sh Adds example cbcontbk CLI snippets referenced by the Manage docs.
modules/manage/examples/continuous-backup.log Adds example output referenced by the Manage docs.
modules/learn/pages/services-and-indexes/services/continuous-backup.adoc New Learn overview page describing continuous backup + PITR concepts.
modules/learn/pages/services-and-indexes/services/backup-service.adoc Adds a section linking Backup Service to continuous backup/PITR.
modules/learn/pages/data/change-history.adoc Adds guidance tying change history requirements to continuous backup usage.
modules/learn/pages/clusters-and-availability/hard-failover.adoc Adds a caution about unsafe failover behavior when continuous backup is enabled.
modules/introduction/partials/new-features-81.adoc Adds 8.1 release notes bullets for continuous backup + PITR.
modules/install/pages/server-processes.adoc Documents the cbcontbk process and normalizes path formatting in the process table.
modules/install/pages/install-ports.adoc Adds port 9125 and documents the cbcontbk port usage.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread modules/learn/pages/services-and-indexes/services/backup-service.adoc Outdated
Comment thread modules/learn/pages/data/change-history.adoc Outdated
Comment thread modules/manage/pages/manage-backup-and-restore/manage-continuous-backup.adoc Outdated
Comment thread modules/manage/pages/manage-backup-and-restore/manage-continuous-backup.adoc Outdated
Comment thread modules/manage/pages/manage-backup-and-restore/manage-continuous-backup.adoc Outdated
Comment thread modules/manage/pages/manage-backup-and-restore/monitor-continuous-backup.adoc Outdated
Comment thread modules/learn/pages/services-and-indexes/services/continuous-backup.adoc Outdated
Comment thread modules/introduction/partials/new-features-81.adoc Outdated
Comment thread modules/metrics-reference/attachments/kv_metrics_metadata.json
Comment thread modules/manage/pages/manage-backup-and-restore/manage-pitr.adoc Outdated
ggray-cb and others added 20 commits July 2, 2026 09:40
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

TBD.

=== Backup Service

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Perhaps this should just be "Backup & Restore" as it isn't to do with the backup service

Comment on lines +2 to +16
# tag::get-backup-info[]
| Buckets
| -------
|
| * Bucket
| ------
| Name | UUID |
| travel-sample | b5de13bdc656985b0a41dd3d832c9be6 |
|
| Range
| -----
| Start | End |
| 2026-06-05T14:57:18Z | 2026-06-23T17:55:22Z |
|
# end::get-backup-info[]

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

I'm currently adding a change where we show the encryption status, e.g.:

| Buckets
| -------
|
| * Bucket
|   ------
|   Name    | UUID                             | Encryption  |
|   default | a5b995170807afc74238a6a89fac5072 | full        |
|
|   Range
|   -----
|   Start                     | End                       |
|   2026-07-01T13:48:22+01:00 | 2026-07-01T13:53:29+01:00 |


. You must set the history retention time for the bucket to a period long enough for continuous backup to collect and save the bucket's history to the backup location.
This period is 15 minutes or double the continuous backup interval, whichever is longer.
For example, if you chose 10 minutes for your continuous backup interval, set the retention time to 20 minutes.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Suggested change
For example, if you chose 10 minutes for your continuous backup interval, set the retention time to 20 minutes.
For example, if you chose 10 minutes for your continuous backup interval, set the retention time to at least 20 minutes.

. If you entered a cloud storage URI for the Backup Location, choose the credential from the credential store for the Backup Service to use when authenticating with the cloud provider.
Make sure you have granted access to Backup Service for this credential.
. If you have enabled encryption at rest for the data in the bucket, enter the URI for the KMS Key.
Valid URIs start with `awskms`, `azurekeyvalue`, or `gcpkms`.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Suggested change
Valid URIs start with `awskms`, `azurekeyvalue`, or `gcpkms`.
Valid URIs start with `awskms`, `azurekeyvault`, or `gcpkms`.


The following example enables continuous backup for `travel-sample` bucket.
It sets the backup interval to 10 minutes.
The backup location is an NFS share mounted on each not at the path `/shared.continuous-backup`.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

I'm not sure what this sentence is saying

* `--continuous-backup-location`: The location where the backup service will store the continuous backup data.
This value must a string containing either an absolute path to an NFS mount point mounted on every node or a cloud storage URI.
* `--continuous-backup-cloud-storage-cred-id`: If you set `--continuous-backup-location` to a cloud storage URI, set this to the name of a credential in the Couchbase Server credential store.
The Backup Service uses this credential to authenticate with the cloud provider.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Let's avoid saying backup service

Comment on lines +240 to +242
** `--continuous-backup-km-key-url`: The URI for the KMS key the Backup Service uses to manage the encryption key it uses to encrypt data encryption keys.
This URI must start with `awskms`, `azurekeyvalue`, or `gcpkms`.
** `--continuous-backup-km-cred=id`: the name of a credential in the Couchbase Server credential store that grants the Backup Service access to a KMS to manage its encryption keys.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

You have to supply both

--
+
PITR recovery does not flush the bucket before a restore.
By default, it does not overwrite existing documents already in the bucket.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

We should probably mention --force-updates here which will disable conflict resolution, so documents in the backup take precedence over those on the cluster

Comment on lines +56 to +60
* To prevent consistency issues, stop continuous backup on the bucket you're restoring.
You must stop continuous backup even if you're not restoring to the original bucket.
Once the PITR finishes, you can restart continuous backup.
See xref:manage:manage-backup-and-restore/manage-continuous-backup.adoc#stop-continuous-backup[Stop Continuous Backup] to learn how to stop continuous backup for a bucket.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Note for myself: I'm not sure if this is necessary, I need to check

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants