cassandra-medusa icon indicating copy to clipboard operation
cassandra-medusa copied to clipboard

Scylladb unable to restore to different cluster

Open Helmut-Onna opened this issue 4 years ago • 4 comments

Project board link

Hello First of all, not sure if ScyllaDB is supported. If not, then I guess ignore this xD

Following this guide: https://thelastpickle.com/blog/2019/11/05/cassandra-medusa-backup-tool-is-open-source.html Section: "Case #2 - Restore To A Different Cluster With Same Number Of Nodes" Scylladb version = 4.1.2-0.20200715.3e6c6d5f582-1 cassandra-medusa version = 0.7.1 OS: ubuntu 18.04 minimal image from GCE Backups saving to a gcs bucket

Steps:

  1. create a 3-node ScyllaDB cluster, with 2 seeds
  2. create keyspace, insert data
  3. Install cassandra-medusa
  4. config medusa.ini (ssh, start/stop cmd, storage provider, config_file)
  5. perform medusa backup --backup-name=test1 on each node. All nodes backed up to the bucket (folders for each node and data present) medusa status --backup-name=test1 comes back green, all ok.
  6. destroy cluster, create a new one, make sure is up, can connect, etc.
  7. Install cassandra-medusa, config, etc
  8. create node mapping file with "True/False, new node, old node"
  9. execute medusa restore-cluster --backup-name=test1 --host-list node_map.txt

Medusa connects by SSH, stops scylladb, copies GS bucket data, cleans directories, restores, parses tokens, but at the moment to restart scylla (DEBUG: Starting Cassandra with /bin/systemctl start scylla-server) it crashes

systemctl status scylla-server shows this on both seeds:

[shard 0] init - Startup failed: std::runtime_error (Exception while populating keyspace 'system' with column famil
y 'compactions_in_progress' from file '/var/lib/scylla/data/system/compactions_in_progress-55080ab05d9c388690a4acb25fe1f77b': sstables::malformed_sstable_exception (invalid version for file 
compactions_in_progress-55080ab05d9c388690a4acb25fe1f77b. Name doesn't match any known version.))

3rd node is not a seed so it was waiting for seeds to start first.

Already deleted/recreated cluster again, tried a couple of times, but same error comes up.

Please let me know if you need me to upload a log or a command output. Thanks!

p.d. On first run I noticed you seem to require netcat but is not mentioned. It might be good to mak the error or requisite clear, since many containers, instances, etc are using reduced OSes which don't include it :) I installed it across nodes to fix the error but doesn't seem related since scylla start error persists: stderr:timeout: failed to run command ‘nc’: No such file or directory

┆Issue is synchronized with this Jira Story by Unito

Helmut-Onna avatar Aug 05 '20 14:08 Helmut-Onna

ScyllaDB is a bit out of scope indeed. We are developing primarily for Apache Cassandra.

We already have a lot to do with Cassandra only :)... That being said, if you go for it and offer us Pull requests to make it compatible with Scylla (without breaking it for Cassandra of course), then I assume it's perfectly fine for us to merge your PRs to make medusa compatible with Scylla DB. If not, that's honestly not something I think we would do anytime soon...

arodrime avatar Sep 02 '20 08:09 arodrime

Hi @Helmut-Onna : did you manage to fix issue with Scylla? Or decided to use different tool?

deniszh avatar Jan 12 '21 19:01 deniszh

FYI, I just did a successful restore of a 2 node Scylladb cluster to 2 others nodes :)

  • Scylladb 4.2
  • Cassandra-medusa 0.10.0
  • Debian 10
  • Storage provider s3_compatible

Skunnyk avatar Apr 26 '21 16:04 Skunnyk

no news about scylladb support? I saw another project here on github named scylla-octopus

JackThird avatar Dec 29 '22 15:12 JackThird