As an operations user of VIC engine, I need be able to back up my persistent data while the container is running. Stopping the container in order to create backups is not feasible for many legacy workloads.
Details:
Having done a review of the backup options for VIC engine, it's become clear to me that we have a deficiency in our backup story around Volume disks.
It makes perfect sense that the disks are marked as independent persistent so that they have a lifespan that doesn't correlate with the lifespan of the container, however this means that they cannot be snapshotted in conventional ways. If they can't be snapshotted, they can't be cloned while the container is running. If they can't be cloned, they can't be backed up.
The First Class Disk support presents APIs for doing this, but these APIs are not designed to be consumer friendly and most backup solutions like Veeam won't have support for these APIs in the near future. This is the main reason why I think we need to add in explicit support for snapshotting so that the backup solutions can clone the snapshots.
We need to come up with a mechanism for snapshotting volume disks and possibly an entire volume store. We should consider inclusion of quiescing of the filesystem as part of the snapshot, which would likely require some more capabilities in our tools implementation.
The hardest question is how should we expect customers to consume this. The three options (not necessarily exclusive) would be to:
Expose something via the Docker API - but then we'd need to co-opt one of the Docker client commands to achieve it and there's nothing obvious available.
Expose something in the Management UI in the "Volumes" section
Expose something in the vSphere plugin
We should debate the relative merits of these approaches and come up with a story here.
User Statement:
As an operations user of VIC engine, I need be able to back up my persistent data while the container is running. Stopping the container in order to create backups is not feasible for many legacy workloads.
Details:
Having done a review of the backup options for VIC engine, it's become clear to me that we have a deficiency in our backup story around Volume disks.
It makes perfect sense that the disks are marked as independent persistent so that they have a lifespan that doesn't correlate with the lifespan of the container, however this means that they cannot be snapshotted in conventional ways. If they can't be snapshotted, they can't be cloned while the container is running. If they can't be cloned, they can't be backed up.
The First Class Disk support presents APIs for doing this, but these APIs are not designed to be consumer friendly and most backup solutions like Veeam won't have support for these APIs in the near future. This is the main reason why I think we need to add in explicit support for snapshotting so that the backup solutions can clone the snapshots.
We need to come up with a mechanism for snapshotting volume disks and possibly an entire volume store. We should consider inclusion of quiescing of the filesystem as part of the snapshot, which would likely require some more capabilities in our tools implementation.
The hardest question is how should we expect customers to consume this. The three options (not necessarily exclusive) would be to:
We should debate the relative merits of these approaches and come up with a story here.