Skip to content

Commit 5e3580b

Browse files
committed
Update kubernetes operations backup section
1 parent b611c57 commit 5e3580b

File tree

1 file changed

+17
-48
lines changed

1 file changed

+17
-48
lines changed

modules/ROOT/pages/kubernetes/operations/backup-restore.adoc

Lines changed: 17 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -8,66 +8,30 @@ For performing backups, Neo4j uses the _Admin Service_, which is only available
88
For more information, see xref:kubernetes/accessing-neo4j.adoc[Accessing Neo4j].
99
====
1010

11-
[[kubernetes-backup-modes]]
12-
== Backup modes
11+
[[kubernetes-backup-storage-options]]
12+
== Backup storage options
1313

14-
Neo4j's Helm chart supports two backup modes:
14+
Neo4j's Helm chart supports both full and differential backups and can be configured to use cloud providers or local storage.
1515

16-
=== Cloud provider mode
16+
=== Cloud storage
1717

18-
Cloud provider mode uses Neo4j's native cloud storage integration with direct upload to create immutable backup objects.
18+
Neo4j Helm chart uses Neo4j's native cloud storage integration with direct upload to create immutable backup objects.
19+
This allows you to back up your Neo4j databases directly to cloud storage without the need for persistent volumes.
20+
The chart can be configured to use cloud providers, such as AWS S3, Google Cloud Storage, and Azure Blob Storage, by setting the `cloudProvider` parameter to `aws`, `gcp`, or `azure` in the _backup-values.yaml_ file.
1921

20-
* *Supported providers*: AWS S3, Google Cloud Storage, and Azure Blob Storage.
21-
* *Benefits*: No persistent volume requirements. Supports differential backups and immutable backup objects.
22-
* *Configuration*: Set `cloudProvider` to `aws`, `gcp`, or `azure`.
23-
24-
=== Local mode
25-
26-
Local mode creates local backups in `/backups` mount.
27-
28-
* *Requirements*: Persistent storage for large databases (configured via `tempVolume`).
29-
* *Configuration*: Leave `cloudProvider` empty.
30-
31-
[[kubernetes-cloud-native-features]]
32-
== Cloud-native backup features
33-
34-
When using cloud providers, Neo4j's native backup provides:
22+
The following features are supported:
3523

3624
* *Direct cloud storage upload* - No intermediate local storage required.
3725
* *Differential backup chains* with `preferDiffAsParent: true`.
3826
* *Immutable backup objects* in cloud storage.
3927
* *Support for S3-compatible endpoints*.
4028
* *Enhanced S3 configuration* including custom CA certificates and endpoint settings.
4129

42-
[[kubernetes-differential-backups]]
43-
== Differential backups
30+
=== Local storage
4431

45-
For cloud providers, differential backups eliminate the need for persistent volumes:
46-
47-
[source, yaml, subs="attributes+,+macros"]
48-
----
49-
backup:
50-
cloudProvider: "aws"
51-
bucketName: "my-backups"
52-
preferDiffAsParent: true
53-
type: "AUTO" # First backup will be FULL, subsequent ones DIFF
54-
fallbackToFull: true # Fallback to FULL if DIFF fails
55-
----
56-
57-
**How it works:**
58-
59-
. The first backup creates a full backup in the cloud storage.
60-
. Subsequent backups create differential backups that reference the cloud-stored full backup.
61-
. No local storage of previous backups is required.
62-
63-
[NOTE]
64-
====
65-
`preferDiffAsParent` is fully supported and eliminates the need for persistent volumes.
66-
67-
* *Helm Value*: `backup.preferDiffAsParent: true`.
68-
* *Cloud-Native*: DIFF backups reference cloud-stored FULL backups directly.
69-
* *No PV Required*: Previous backups don't need to be stored locally.
70-
====
32+
Local storage creates local backups in the `/backups` mount.
33+
This mount must be configured to use a persistent storage for large databases using `tempVolume`.
34+
The `cloudProvider` must be empty.
7135

7236
[[kubernetes-neo4j-backup-cloud]]
7337
== Prepare to back up a database(s) to a cloud provider (AWS, GCP, and Azure) bucket
@@ -516,6 +480,7 @@ When configuring the _backup-values.yaml_ file, keep the “cloudProvider” fie
516480
[NOTE]
517481
====
518482
You need to create the persistent volume and persistent volume claim before installing the _neo4j-admin_ Helm chart only when using local storage.
483+
When using cloud providers, persistent volumes are not required for differential backups.
519484
For more information, see xref:kubernetes/persistent-volumes.adoc[Volume mounts and persistent volumes].
520485
====
521486

@@ -1090,6 +1055,10 @@ To migrate from persistent volume-based backups to cloud-native backups, you nee
10901055
. Perform a final traditional backup to ensure you have the latest data.
10911056
For more information, see <<kubernetes-neo4j-backup-on-prem, Prepare to back up a database(s) to on-premises storage>> and <<kubernetes-neo4j-backup, Back up your databases>>.
10921057
. Upload existing backups to the cloud storage bucket if needed.
1058+
You can use cloud provider CLI tools to transfer your backup files:
1059+
** For AWS S3: `aws s3 cp /path/to/backups s3://your-bucket/backups --recursive`
1060+
** For Google Cloud Storage: `gsutil cp -r /path/to/backups gs://your-bucket/backups`
1061+
** For Azure Blob Storage: `az storage blob upload-batch --source /path/to/backups --destination your-container`
10931062
. Update the _backup-values.yaml_ file to configure the cloud provider, bucket name, and credentials.
10941063
See <<kubernetes-neo4j-backup-cloud, Prepare to back up a database(s) to a cloud provider (AWS, GCP, and Azure) bucket>> for details.
10951064
. Install the _neo4j-admin_ Helm chart with the updated _backup-values.yaml_ file to back up your databases to the cloud provider bucket.

0 commit comments

Comments
 (0)