Linode volume clones and snapshots

Hi all. New here.

What we are trying to do is have a clean, fast way to backup a mongodb database. Ideally what we'd like to do is make a quick snapshot of a volume with the database file(s) on it and then backup that snapshot.

When I say "snapshot" i am assuming some kind of functionality like LVM uses for snapshots where the snapshot is instantaneous and copy-on-write trickery is used to let the database happily update itself but my backup (from the "snapshot") gets a consistent copy of the database.

So my questions:

  • Do linode volumes have that functionality? I couldn't find it in the API references.
  • Can you run LVM over a linode volume and get that functionality?

Reference:

https://www.mongodb.com/docs/manual/tutorial/backup-with-filesystem-snapshots/

2 Replies

I don't see why you couldn't implement LVM with Linode volumes. However…

Much of Linode's infrastructure relies on disc volumes being formatted/mounted as ext4. In the case of LVM, I don't believe this is the case (it's lvmvol or some such). In particular, if you use Linode backups, snapshots or try to restore from a Linode backup, this is not going to work with LVM volumes.

-- sw

Thanks, @stevewi ,

I'm planning on running a live database (Mongodb) on this volume, so the typical Linode backups won't help me at all. What I'm trying to get to is a framework that will let me do backups while the database is running, and from my reads of the documentation on LVM and Mongodb this approach will do the job.

My own experiments in the last few weeks show that I can run LVM on a Linode volume without trouble. Now I am considering how to run LUKS with it as well, and what is the best way to do that…

Thanks again!

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct