This topic describes how to install and configure Neo4j Enterprise for VMware Tanzu.
To install Neo4j Enterprise for Pivotal Platform on PKS, do the following:
Download the Helm charts and Docker container image archives from Pivotal Network.
Extract the downloaded Helm chart package on your local machine. This should create a directory called “neo4j”
Load the Docker image using:
docker load < causal-cluster_image.*.tgz
Note: The resulting image and tag name, you will need it below.
The following lists relevant configuration options for the deployment. Only the name is strictly required, but users are encouraged to consult Neo4j’s System Requirements and to tailor CPU, memory, and disk to the anticipated workload untilized to ensure best performance.
Carefully read the key configurations above, make your selections, and then install the Helm chart with the following command, making substitutions for your choices.
NAMESPACE=default
APP_NAME=my-neo4j-deploy
IMAGE=causal-cluster:3.5.7
helm install neo4j --namespace $NAMESPACE --name $APP_NAME \
--set namespace=$NAMESPACE \
--set image=$IMAGE \
--set name=$APP_NAME \
--set neo4jPassword=mySecretPassword \
--set authEnabled=true \
--set coreServers=3 \
--set readReplicaServers=1 \
--set cpuRequest=200m \
--set memoryRequest=1Gi \
--set volumeSize=2Gi \
--set volumeStorageClass=standard \
--set acceptLicenseAgreement=yes
After deploying Neo4j Enterprise for VMware Tanzu the cluster forms as the pods are created. This can take up to 5 minutes, depending on a number of factors including how long it takes pods to get scheduled, and how many resources are associated with the pods. While the cluster is forming, the Neo4j REST API and Bolt endpoints might not be available. After a few minutes, bolt endpoints become available inside of the kubernetes cluster. Note that by default, Neo4j services are not exposed externally. See the limitations section for more information.
In order to ensure that Neo4j is deployable on basic/default PKS clusters, the default values for hardware requests have been made fairly low. These default values are suitable for try-out but not for serious production/testing workloads.
Sizing databases is ultimately something that should be done with the workload in mind. In general, heap size and page cache sizing are the most important places to start when tuning performance.
Consult Neo4j’s Performance Tuning Documentation for more information.
Given a deployed $APP_NAME
as stated in the installation directions above, uninstalling is straightforward:
$ helm delete $APP_NAME
release "my-neo4j-deploy" deleted