Namespace in QuarkDB resiliency

Hello,
I am thinking of adding a SSD drive to the EOS managers in order to store the QuarkDB database. We have 2 EOS managers running also QDB and a third machine running only QDB.

I suppose the procedure to move QDB to the SSD is to stop QDB, copy the QDB files (/var/spool/quarkdb/) to the SSD and mount it at the same place where the files were (/var/spool/quarkdb). Then restart QDB.

If the operation is not too long, I suppose QDB will resync with the latest data from the leader ?

More generally, in the case the QDB files are completely lost and QDB is restarted with an empty directory, is QDB able to rebuild its database from the other nodes ?

Thank you.
JM

Hi Jean Michel,

If I understand correctly, the situation is:

  • You have a QuarkDB cluster with 3 nodes.
  • You want to move the data from HDD to SSD in one of the nodes.

In which case yes, the above steps you mentioned will work perfectly. Yes, the node will catch up any missed writes while it was down from the leader, and the consensus algorithm will prevent this node from potentially becoming leader until it has all updated data.

Yes, QDB will be able to rebuild all data if the directory in one of the nodes is lost. This will most likely trigger resilvering.

Cheers,
Georgios

Thank you Georgios,

You understand correct. I will do it for each of the 3 QDB nodes in turn, starting with the one that does not run EOS manager. The interruption should not be long (10mn) but I will also check that the order of the drives is not changed with a reboot of the machine.

I read the article about resilvering. I understand that this is automatic unless I disable it. I am not expecting to loose the entire database but I was asking just in case.

Thanks again.
JM