Backup of Elasticsearch

I have a cluster of 3 nodes. I have set the backup directory on the 3 nodes to be: /var/lib/elasticsearch/backups.

I tried to restore the content of a snapshot I took from kibana and restore it on another cluster. It showed that the restoration was succesful but some shards are not found.

Note:

  1. The backup directory on the 3 nodes is not NFS, each node has its separate directory
  2. The size of backup directory (/var/lib/elasticsearch/backups) is not the same accross the 3 nodes although they have the same no. of shards and same size of data

I'm not sure why is this happening. When I take a snapshot from kibana it shows that the snapshot was successful.

That is not supported. Shared storage available to all master and data nodes is required in order to take a snapshot. Please see the docs for further details.

Do you mean it has to be NFS?

Yes, it has to be shared storage, e.g. NFS. There may be other types of shared storage that may work as well.

Ok. I have setup the backup directory to be managed through NFS. I took a backup from the production cluster and it didn't display any errors.

I have on the production cluster 60 indices and total of 198 shards. The backup was taken to only 50 indices and 98 shards. I don't understand why did that happen. Is it because ES does not backup replicas?

Also, I tried restoring the backup on a testing cluster and most of the indices had a red health state + some other indices don't have data in them.

Note: the size of the directory of /var/lib/elasticsearch is 22GB on each node. The size of the backup directory after single snapshot is 31GB

I don't know what am I doing wrong. Do I need to disable shard allocation before backing up?

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.