mattwr18 a74abbb053 Reorganize helm charts, add lifecycle hooks
- remove namespace, since it's best practice to use the cli to add it,
  @roschaefer points out
- organize templates into directories
- migrations should be ran after the backend has started...
- should init really be ran every time??
2020-01-29 20:39:47 +01:00
..
2019-05-15 16:25:01 +02:00
2019-05-15 16:25:01 +02:00
2019-07-25 15:34:43 +02:00
2019-05-15 16:25:01 +02:00

Persistent Volumes

At the moment, the application needs two persistent volumes:

  • The /data/ folder where neo4j stores its database and
  • the folder /nitro-backend/public/uploads where the backend stores uploads.

As a matter of precaution, the persistent volume claims that setup these volumes live in a separate folder. You don't want to accidently loose all your data in your database by running

kubectl delete -f human-connection/

or do you?

Create Persistent Volume Claims

Run the following:

# in folder deployments/
$ kubectl apply -f volumes
persistentvolumeclaim/neo4j-data-claim created
persistentvolumeclaim/uploads-claim created 

Backup and Restore

We tested a couple of options how to do disaster recovery in kubernetes. First, there is the offline backup strategy of the community edition of Neo4J, which you can also run on a local installation. Kubernetes also offers so-called volume snapshots. Changing the reclaim policy of your persistent volumes might be an additional safety measure. Finally, there is also a kubernetes specific disaster recovery tool called Velero.