Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 8 Next »

As we are using kubernetes to host databases, so approch is different to restore database

Neo4j Restore

  1. copy backup folder from the azure storage account to the pod which you will create with the below manifest, this pod will mount same pv where date is present of neo4j.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: ubuntu-deployment
  labels:
    app: ubuntu
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ubuntu
  template:
    metadata:
      labels:
        app: ubuntu
    spec:
      containers:
      - name: ubuntu
        image: ubuntu
        command: ["sleep", "123456"]
        volumeMounts:
        - mountPath: /data
          name: neo4j-data
      volumes:
      - name: neo4j-data
        persistentVolumeClaim:
          claimName: neo4j-claim
  1. scale neo4j deployement to 0

  2. go inside the pod which you created with the manifest, navigate to /data/databases, rename graph.db to graph.db.backup and paste the graph.db folder at same location. Exit from the pod

  3. Scale again neo4j pod to 1 which will load the data from the backup data

  4. remove deployment which you have created.

Elasticsearch Restore

As we took elasticsearch backup with help of azure plugin

create repository with following command

curl -XPUT 'http://localhost:9200/_snapshot/azurebackup' -H 'Content-Type: application/json' -d '{ "type": "azure", "settings": { "container": "<blob_name>", "base_path": "<storage_account_name>"} }'

restore the snapshot with below command

curl -XPOST 'http://localhost:9200/_snapshot/azurebackup/snapshot_1/_restore'

checking status of the snapshot restore

curl -s "http://localhost:9200/_snapshot/azurebackup/snapshot_1/_status?pretty"

  • No labels