I’m trying to backup linux client using snapshots. My installation of Jira and Confluence create enough traffic for indexing to fail because of constant file changes. Snapshots seem like holy grail to solve the problem, so I turned it on in snapshot.cfg. Together with volumes_mounted_locally=0 as it tried to snapshot thing like /proc and obviously failed.
My partition layout:
/dev/mapper/wolumen-root on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)
/dev/mapper/wolumen-var on /var type ext4 (rw,relatime,data=ordered)
/dev/mapper/wolumen-tmp on /tmp type ext4 (rw,relatime,data=ordered)
/dev/mapper/wolumen-home on /home type ext4 (rw,relatime,data=ordered)
Separate lv volumes in my case. The installation of Jira (and Confluence) is spread across filesystems:
/opt/jira
/home/jira
So as far as I understand - urbackup client should create 2 snapshots, on two logical filesystems, and backup all files.
Ok, here’s my list-backupdirs:
root@jira:~# urbackupclientctl list-backupdirs
PATH NAME FLAGS
------------------------ --------------- ------------------------------------------------------------------------------
/opt/jira opt_jira follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
/home/jira home_jira follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
/home/backup home_backup follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
/home/confluence home_confluence follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
/opt/atlassian opt_atlassian follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
/var/backups var_backups follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
/var/spool/cron/crontabs crontabs follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
/etc etc follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
/root root follow_symlinks,symlinks_optional,one_filesystem,require_snapshot,share_hashes
and the error:
2017-07-01 16:30:58: Indexing of "opt_jira" done. 10129 filesystem lookups 0 db lookups and 0 db updates
(I'm good here - / is snapshotted and indexed corectly)
2017-07-01 16:30:58: Creating shadowcopy of "home_jira" in indexDirs()
2017-07-01 16:30:58: orig_target=/home/jira volpath=/mnt/urbackup_snaps/70487ddbbf70c289aeecb93894a976903d8a0d1932522584
2017-07-01 16:30:58: Shadowcopy already present.
(wrong, /home is not the same snap, and we fail later on)
2017-07-01 16:30:58: done.
2017-07-01 16:30:58: Indexing "home_jira"...
2017-07-01 16:30:58: ERROR: Cannot access path to backup: "/mnt/urbackup_snaps/70487ddbbf70c289aeecb93894a976903d8a0d1932522584/home/jira" Errorcode: 2 - No such file or directory
2017-07-01 16:30:58: Deleting shadowcopy for path "/mnt/urbackup_snaps/70487ddbbf70c289aeecb93894a976903d8a0d1932522584/home/jira" -2
2017-07-01 16:30:58: Unmounting /dev/mapper/wolumen-urbackup_snap_70487ddbbf70c289aeecb93894a976903d8a0d1932522584 at /mnt/urbackup_snaps/70487ddbbf70c289aeecb93894a976903d8a0d1932522584...
2017-07-01 16:30:58: Destroying LVM snapshot /dev/mapper/wolumen-urbackup_snap_70487ddbbf70c289aeecb93894a976903d8a0d1932522584...
2017-07-01 16:30:58: Logical volume "urbackup_snap_70487ddbbf70c289aeecb93894a976903d8a0d1932522584" successfully removed
2017-07-01 16:30:58: Deleting Shadowcopy for dir "/"
2017-07-01 16:30:58: Script "/usr/local/etc/urbackup/postfileindex" does not exist
2017-07-01 16:30:58: Async index 9961b45165164dd243a9c60021dc3c9d finished with "error - index error"
referencing snapshot, that is /mnt/urbackup_snaps/70487ddbbf70c289aeecb93894a976903d8a0d1932522584
was created for /dev/mapper/wolumen-root (double checked during indexing process).
Again, as I understand - the client errously identified /home/jira as backup location belonging to the same snapshot, but since this snapshot was created for / not for /home - it fails.
Im my case all volumes should be snapshotted and either client should detect mountpoint or link subdirectories to recreate filesystem structure under /mnt/urbackup_snaps
Or is something I do not understand when using lvm snapshots?