Closed e-kov closed 1 year ago
To be clear, the outcome of this work should be that customers can install Elastio with our install script, including the elastio-snap
module, and reliably get incremental block backups on their Linux systems after reboot without any additional work or configuration. This property should hold across updates to new Elastio versions as well.
To be clear, the outcome of this work should be that customers can install Elastio with our install script, including the
elastio-snap
module, and reliably get incremental block backups on their Linux systems after reboot without any additional work or configuration. This property should hold across updates to new Elastio versions as well.
@anelson correct.
elastio-snap
as well asdattobd
has possibility to continue chain of incremental backups without taking full (initial) snapshot after reboot. There is areload
IOCTL for this purpose. It should be called for a block device right on the boot before it is mounted writable. There are scripts in the dist/initramfs dedicated for this purpose. Thereload
script executes all/etc/elastio/dla/reload_*
scripts which should callelioctl
with the corresponding arguments like this:Without this call driver have no information about snapped devices before the reboot. And
/proc/elastio-snap-info
contains empty list of the devices.We have to add a logic to generate
`/etc/elastio/dla/reload_*.sh
scripts automatically when callingsetup-snapshot
,transition-to-snapshot
,transition-to-incremental
commands/IOCTLs. These scripts should be removed ondestroy
IOCTL. So, the snapshots or incrementals will be reloaded if reboot happens at any time/ The most convenient place to put this logic is libelastio-snap. Because our goal is make this functionality available forelioctl
and for other softwares like Elastio, which useelastio-snap
driver via library. However, this software should installelastio-snap-utils
package withelioctl
utility as dependency to make reload possible.As an option, we may need to implement possibility to call
pre
andpost
scripts before and after eachreload
script for better flexibility. Other softwares, probably, should may need to put them to the same location/etc/elastio/dla/
with another names pattern.