For documentation on installation and usage, please refer to the user guide
Official documentation for Neo4j on PKS resides here in Pivotal's repo:
https://github.com/pivotal-cf/docs-neo4j-enterprise
Neo4j maintains a fork of that repo for upstream contributions here:
https://github.com/neo-technology/docs-neo4j-enterprise
The rest of the documentation here focuses on build chain and local testing.
This repo contains the files necessary to package and install Neo4j for Pivotal PKS. The approach is based on a helm template, which expands to YAML that can be used to install Neo4j.
In general, the chart is divided into two key components; a StatefulSet for "core nodes" and a StatefulSet for "read replicas". This structure mimics the Neo4j Cluster Architecture
Persistent Volumes (PVs) are used to back each cluster pod; HA clusters generally call for a minimum of 3 core nodes and 0 read replicas.
- Considerations for running Neo4j in Orchestration Environments
- Neo4j PKS User Guide
- Neo4j Clustering Operations Manual
- Detailed technical description of querying Neo4j clusters
Just running make install
should be enough if your kubectl
is set up properly. This will additionally
handle the tiller setup, if necessary.
This shows the use of various configuration parameters which can be adjusted.
helm template chart/ \
--set namespace=default \
--set image=neo4j:3.5.2 \
--set name=graph-$(head -c 3 /dev/urandom | base64) \
--set neo4jPassword=mySecretPassword \
--set authEnabled=true \
--set coreServers=3 \
--set readReplicaServers=0 \
--set cpuRequest=200m \
--set memoryRequest=1Gi \
--set volumeSize=2Gi \
--set volumeStorageClass=standard \
--set acceptLicenseAgreement=yes > expanded.yaml
kubectl apply -f expanded.yaml
kubectl delete -f expanded.yaml
Here, the value "graph-MdwZ" was the name
generated in the above step.
kubectl delete pvc --namespace default -l release=graph-MdwZ -l app=neo4j