Skip to content
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions docs/examples/neo4j/quickstart/neo4j.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
apiVersion: kubedb.com/v1alpha2
kind: Neo4j
metadata:
name: neo4j-test
namespace: demo
spec:
replicas: 3
deletionPolicy: WipeOut
version: "2025.11.2"
storage:
storageClassName: local-path
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
13 changes: 13 additions & 0 deletions docs/examples/neo4j/reconfigure-tls/ops-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-reconfigure-tls
namespace: demo
spec:
type: ReconfigureTLS
databaseRef:
name: tls-neo4j
tls:
rotateCertificates: true
bolt:
mode: mTLS
17 changes: 17 additions & 0 deletions docs/examples/neo4j/reconfigure/ops-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-reconfigure
namespace: demo
spec:
type: Reconfigure
databaseRef:
name: neo4j-test
configuration:
configSecret:
name: new-custom-config
removeCustomConfig: true
applyConfig:
server.metrics.csv.interval: "40s"
timeout: 5m
apply: IfReady
11 changes: 11 additions & 0 deletions docs/examples/neo4j/restart/ops-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-restart
namespace: demo
spec:
type: Restart
databaseRef:
name: neo4j-test
timeout: 5m
apply: Always
11 changes: 11 additions & 0 deletions docs/examples/neo4j/rotate-auth/ops-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-rotate-auth
namespace: demo
spec:
type: RotateAuth
databaseRef:
name: neo4j-test
timeout: 5m
apply: IfReady
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-horizontal-scale-down
namespace: demo
spec:
type: HorizontalScaling
databaseRef:
name: neo4j-test
horizontalScaling:
server: 4
reallocate:
strategy: "incremental"
batchSize: 1

Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-horizontal-scale-up
namespace: demo
spec:
type: HorizontalScaling
databaseRef:
name: neo4j-test
horizontalScaling:
server: 5
reallocate:
strategy: "incremental"
batchSize: 1

14 changes: 14 additions & 0 deletions docs/examples/neo4j/scaling/horizontal-scaling/ops-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-horizontal-scale
namespace: demo
spec:
type: HorizontalScaling
databaseRef:
name: neo4j-test
horizontalScaling:
server: 5
reallocate:
strategy: "incremental"
batchSize: 1
18 changes: 18 additions & 0 deletions docs/examples/neo4j/scaling/vertical-scaling/ops-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-vertical-scale
namespace: demo
spec:
type: VerticalScaling
databaseRef:
name: neo4j-test
verticalScaling:
server:
resources:
limits:
cpu: 1500m
memory: 4Gi
requests:
cpu: 700m
memory: 4Gi
11 changes: 11 additions & 0 deletions docs/examples/neo4j/update-version/ops-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-update-version
namespace: demo
spec:
type: UpdateVersion
databaseRef:
name: neo4j-test
updateVersion:
targetVersion: "2025.12.1"
12 changes: 12 additions & 0 deletions docs/examples/neo4j/volume-expansion/ops-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
apiVersion: ops.kubedb.com/v1alpha1
kind: Neo4jOpsRequest
metadata:
name: neo4j-volume-expand
namespace: demo
spec:
type: VolumeExpansion
databaseRef:
name: neo4j-test
volumeExpansion:
mode: "Online"
server: 4Gi
93 changes: 93 additions & 0 deletions docs/guides/neo4j/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
---
title: Neo4j
menu:
docs_{{ .version }}:
identifier: neo4j-readme
name: Neo4j
parent: neo4j-guides
weight: 10
menu_name: docs_{{ .version }}
section_menu_id: guides
url: /docs/{{ .version }}/guides/neo4j/
aliases:
- /docs/{{ .version }}/guides/neo4j/README/
---

> New to KubeDB? Please start [here](/docs/README.md).

# Overview

KubeDB supports graph database deployment with Neo4j using the `Neo4j` CRD.

## Supported Neo4j Features

| Features | Availability |
|----------------------------------|:------------:|
| Standalone provisioning | ✓ |
| Cluster provisioning | ✓ |
| Monitoring | ✓ |
| TLS | ✓ |
| Ops Requests | ✓ |

## Supported Ops Requests

- Reconfigure
- HorizontalScaling
- VerticalScaling
- VolumeExpansion
- UpdateVersion
- ReconfigureTLS
- RotateAuth
- Restart

## Example Neo4j Manifest

```yaml
apiVersion: kubedb.com/v1alpha2
kind: Neo4j
metadata:
name: neo4j-test
namespace: demo
spec:
replicas: 3
deletionPolicy: WipeOut
version: "2025.12.1"
storage:
storageClassName: local-path
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
```

## User Guide

- [Quickstart Neo4j](/docs/guides/neo4j/quickstart/quickstart.md) with KubeDB operator.
- [Neo4j CRD Concept](/docs/guides/neo4j/concepts/neo4j.md).
- [Neo4jVersion CRD Concept](/docs/guides/neo4j/concepts/catalog.md).
- [Neo4jOpsRequest CRD Concept](/docs/guides/neo4j/concepts/opsrequest.md).
- [Private Registry](/docs/guides/neo4j/private-registry/using-private-registry.md)
- [Custom RBAC](/docs/guides/neo4j/custom-rbac/using-custom-rbac.md)
- [Custom Configuration](/docs/guides/neo4j/configuration/using-config-file.md)
- [Monitoring](/docs/guides/neo4j/monitoring/overview.md) for metrics collection guidance.
- [Builtin Prometheus Monitoring](/docs/guides/neo4j/monitoring/using-builtin-prometheus.md)
- [Prometheus Operator Monitoring](/docs/guides/neo4j/monitoring/using-prometheus-operator.md)
- [TLS](/docs/guides/neo4j/tls/overview.md) for protocol-level TLS guidance.
- [Configure TLS](/docs/guides/neo4j/tls/configure/)
- [Ops Request](/docs/guides/neo4j/ops-request/overview.md) for supported operational changes.
- [Reconfigure](/docs/guides/neo4j/reconfigure/overview.md)
- [Reconfigure Details](/docs/guides/neo4j/reconfigure/reconfigure.md)
- [Reconfigure TLS](/docs/guides/neo4j/reconfigure-tls/overview.md)
- [Reconfigure TLS Details](/docs/guides/neo4j/reconfigure-tls/reconfigure-tls.md)
- [Restart](/docs/guides/neo4j/restart/restart.md)
- [Rotate Auth](/docs/guides/neo4j/rotate-auth/overview.md)
- [Rotate Auth Details](/docs/guides/neo4j/rotate-auth/rotateauth.md)
- [Update Version](/docs/guides/neo4j/update-version/overview.md)
- [Update Version Details](/docs/guides/neo4j/update-version/versionupgrading/)
- [Volume Expansion](/docs/guides/neo4j/volume-expansion/overview.md)
- [Volume Expansion Details](/docs/guides/neo4j/volume-expansion/volume-expansion.md)
- [Horizontal Scaling](/docs/guides/neo4j/scaling/horizontal-scaling/overview.md)
- [Horizontal Scaling Details](/docs/guides/neo4j/scaling/horizontal-scaling/scale-horizontally/)
- [Vertical Scaling](/docs/guides/neo4j/scaling/vertical-scaling/overview.md)
- [Vertical Scaling Details](/docs/guides/neo4j/scaling/vertical-scaling/scale-vertically/)
10 changes: 10 additions & 0 deletions docs/guides/neo4j/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Neo4j
menu:
docs_{{ .version }}:
identifier: neo4j-guides
name: Neo4j
parent: guides
weight: 16
menu_name: docs_{{ .version }}
---
10 changes: 10 additions & 0 deletions docs/guides/neo4j/concepts/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Neo4j Concepts
menu:
docs_{{ .version }}:
identifier: neo4j-concepts
name: Concepts
parent: neo4j-guides
weight: 15
menu_name: docs_{{ .version }}
---
48 changes: 48 additions & 0 deletions docs/guides/neo4j/concepts/catalog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: Neo4jVersion CRD
menu:
docs_{{ .version }}:
identifier: neo4j-catalog-concepts
name: Neo4jVersion
parent: neo4j-concepts-neo4j
weight: 15
menu_name: docs_{{ .version }}
section_menu_id: guides
---

> New to KubeDB? Please start [here](/docs/README.md).

# Neo4jVersion

## What is Neo4jVersion

`Neo4jVersion` is the catalog CRD that provides image and version metadata for KubeDB-managed Neo4j.

The value of `Neo4j.spec.version` must correspond to a valid `Neo4jVersion` resource.

## Neo4jVersion Specification

```yaml
apiVersion: catalog.kubedb.com/v1alpha1
kind: Neo4jVersion
metadata:
name: 2025.11.2
spec:
db:
image: docker.io/library/neo4j:2025.11.2-enterprise
securityContext:
runAsUser: 7474
version: 2025.11.2-enterprise
```

## Key fields

- `metadata.name` is used in `Neo4j.spec.version`.
- `spec.version` identifies the Neo4j release represented.
- `spec.db.image` defines the image for Neo4j pods.
- `spec.deprecated` signals if the version should be avoided.

## Next Steps

- Read the [Neo4j CRD concept](/docs/guides/neo4j/concepts/neo4j.md).
- Run the [Neo4j quickstart](/docs/guides/neo4j/quickstart/quickstart.md).
Loading