----
VM Backup with Xen Orchestra
// Xen Orchestra
As you may already know, we planned to integrate backups directly in Xen Orchestra: this feature is in our current road map.
The goal is to provide a simple interface to select, plan and automatize all your VMs backups. But, until its done, one of our clients needs quickly a way to snapshot all its running VMs in one command. Remember this diagram?
Well, why not connect a kind of "client" to send order directly to "xo-server" to automatize all this stuff? After all, we had a unique entry point for all XenServer via the core of XO.
That's how "xo-backup" (as a plug in) is born in less than 2 days and 200 lines of code! Let's see the architecture diagram with this new client:
As you can see, "xo-backup" is a completely standalone client, it could be executed on any machine you like, even not on the same box running "xo-server". For example, it can run on your backup server, dedicated to that kind of tasks.
How it works
Let's take a real and simple example. I will use "xo-backup" on my PC at home, to start a backup on the existing demo instance of Xen Orchestra (running in a data-center), itself connected to our small lab in our offices:
xo-backup (home) -> xo (datacenter) -> xenserver (office)
On one running VM, I've got no snapshot:
Here is a simple example of this client:
$ xo-backup --max-snapshots 2 --user admin@vates.fr https://dev1.vates.fr/api/ [?] Password: ******** ✔︎ vm1 snapshotted ✔︎ vm2 snapshotted ✔︎ vm3 snapshotted ✔︎ vm4 snapshotted
As you can see, we created a snapshot on each of this VM. If I go on a VM screen in XO, now I can see:
Great! Now I can revert to this snapshot in two clicks, also remove or rename it if I want:
Or, but let's try to restart "xo-backup", using exactly the same command. The result is now:
Remember the "--max-snapshots 2" parameter in the command line? What if I choose to start a new "xo-backup" now?
$ xo-backup --max-snapshots 2 --user admin@vates.fr https://dev1.vates.fr/api/ [?] Password: ******** ✔︎ vm1 snapshotted ✔︎ vm1 old snapshot deleted auto-2014-07-27T09:34:49.434Z
The oldest one is automatically removed! That's why you can use this script directly in a Cron job (like the example given here). In this way, you made a snapshot rotation, allowing a rollback D-1 etc.
Wait! If I made my own snapshot manually between automated "xo-backup" execution?
No problem! Our client filters automatically on the "auto-" prefix present in your snapshot name. If you manually create one, with for example "snapbeforeupdate" name, it will NOT be removed by "xo-backup"! That's why you can continue to use snapshots manually in parallel of "xo-backup".
... wait! (again). Snapshots are NOT backups!
You're totally right! That's because "xo-backup" is just at its first version. Our next objective is to allow full exports of VM, *.xva files on your local disk, or any accessible mount on your system.
This feature will come with parameters to target only VM you like (or all, or with a filter you give). We choose to start with snapshots, because that's the first step allowing full export of a running VM: we'll export its fresh snapshot during its execution (because you can't export directly a running VM).
Thanks to our sponsor
This client was sponsored by OOWorx. Thanks to them for helping XO to be better!
Remember: you can do the same and sponsor a feature you need! Contact us for me details.
----
Shared via my feedly reader
Sent from my iPhone
No comments:
Post a Comment