We moved this page to our Documentation Portal. You can find the latest updates here. |
Issue
The Windows backups get failed randomly because of the inconsistent file system even when you are absolutely sure that the file system is clean before taking backups.
The reason is that taking a snapshot on the 'live' filesystem that is actively used, causes degradation of the filesystem on the snapshot most of the times.
Cluster accounting failed at 22502 (0x57e6): missing cluster in $Bitmap
ERROR: Filesystem check failed! Windows wasn't shutdown properly or inconsistent filesystem. Please run chkdsk /f on Windows then reboot it TWICE.
Fatal: Execution of ntfsclone -q -s -O /onapp/backups/m/e/mehxeoqqhrcnti /dev/sde1 > /tmp/onapp-tmp-ntfsclone-sdk.log 2>&1 || ( cat /tmp/onapp-tmp-ntfsclone-sdk.log; rm -f /tmp/onapp-tmp-ntfsclone-sdk.log; exit 1 ) failed
Environment
OnApp versions: 5.0 - 6.5
Windows-based virtual servers
Resolution
Consider using a new feature called Backup Plugin System that enables integration of third-party backup management services into OnApp.
In case it's not an option for you, then as an alternative solution, the ntfsclone wrapper can be used to take backups, restore, and provision - it is based on dd utility.
When using the wrapper, the backup tasks complete successfully regardless of the file system state (considering that there are no other issues that may cause failures).
Download the ntfsclone wrapper and install it on the backup server or hypervisors in case there are no backup servers in the cloud.
On the compute resources:
#NTFSCLONE_PATH=`which ntfsclone`
#mv $NTFSCLONE_PATH $NTFSCLONE_PATH.orig
#curl -s https://bitbucket.org/onappcore/support-tools-public/raw/e86b6a44a4f1857b9fb8bfe91085e08caa1130fb/ntfsclone-wrp.sh > $NTFSCLONE_PATH
#chmod +x $NTFSCLONE_PATH
Change the following variables in the script if it's needed:
TMPL_PATH="/onapp/templates/" BKP_PATH="/onapp/backups/" DD_BS="64MB" SPARSE=false
COMPR=true
To make the changes permanent on CloudBoot compute resources:
On the Control Panel locate the compute resource's tftpboot config directory by its MAC address and copy the ntfsclone wrapper into it:
#/tftpboot/images/centos5/diskless/snapshot/<mac_address>/
Then add these commands to the compute resource custom config:
NTFSCLONE_PATH=`which ntfsclone`
mv $NTFSCLONE_PATH $NTFSCLONE_PATH.orig
cp /.rw/ntfsclone-wrp.sh $NTFSCLONE_PATH
chmod +x $NTFSCLONE_PATH
Run these commands manually or reboot the CR to apply the changes.
Note. Starting with the 6.6 version, we introduced the Force Windows Auto-Backups functionality, a replacement to this ntfsclone wrapper. Please remove this wrapper before upgrading to version 6.6 to avoid conflicts.