You are not logged in.
You are going to need to arrange paths anyway.
Why complicating the backup syntax when you can do that in the event you restore the VM?.
It just takes some seconds.
That's how the software works.
If you scatter disks among different datastores, you will have to set their paths again in case you restore them.
How would you expect it to work?: have a backup software that scatters backups in different backup directories?
Thank you for sharing your issue.
This turned out to be a bug which will be corrected in version 1.4.2.5
The end of a VM virtual disk is usually empty, or it may contain some little data as in the case of Windows systems. Under some circumstances that lask block can contain garbage data. It's a seldom bug and in case it would happen the VM can be easily fixed.
Next version 1.4.2.4 will contain a fix.
For some reason (page code, inner SMTP server config) the SMTP server is trying to interpret the HTML in the e-mail, which goes inside the DATA command, as if it was part of the protocol conversation. Easiest way to solve it is to use some other SMTP server.
Sometimes ESXi can fail to detect [b]open-vm-tools[/b], which is the package that should be installed in RHEL/CentOS/Fedora and other Linux distros.
[url=https://github.com/vmware/open-vm-tools/issues/275]Open-VM-Tools Issues at Github[/url]
You need to make sure the service is not only installed but also running.
Thank you for your feedback Alessio and Cuchillo for his help. All folders should be created automatically if they don't exist, we'll revise the code to make sure this happens as designed. Post here or contact support if you need some more personalized assistance.
UPDATE:
Yes, you are right. This was due to the fact that there is an excess of checks, that folder has to be checked and created if it does not exist, but no error should be returned in case it does not exist.
It will be fixed in next programmed release.
UPDATE:
We fixed it through a minor update in current 1.4.2.3 that does not affect the visible version.
When is this error raised?, at the beginning of the job transfer phase?, in the middle of a job?. Please do post all log or contact support to send it if you don't want to publish that data here.
The message is clear, the remote host is killing the SSH tunnel, now the next step is finding why. To find out the ultimate cause you should set OpenSSL debugging in the server, so that a more verbose error is thrown by the OpenSSL binary. It could be due to some timeout having been reached, some disk or tmp folder getting full, etc...
(c)XSIBackup tried to delete all snapshots, it requested (c)ESXi to do so through a vim-cmd command
vim-cmd vmsvc/snapshot.removeallBut the command returned an error. This has nothing to do with (c)XSIBackup, but with your set up.
Now the thing is, why did it go wrong?
You have some clues in the error message: "Filesystem specific implementation"
So, first questions I would ask are:
Are your file systems on both ends coherent?
Are you by any chance trying to perform a Onediff differential snapshot operation between incompatible file systems?
Is your VM hosted in a VMFS5 volume and you have tried to exchange a snapshot with a VMFS6 registerd VM, or viceversa?
Yes, key is checked once at the beginning of the job.
[url=https://33hops.com/forum/viewtopic.php?id=825](c)XSIBackup-Pro Classic vs (c)XSIBackup-DC[/url]
Well, it's true that you can achieve the same result using either of the two syntaxes: local or over IP.
Choosing what to use is left to you based on the knowledge of your set up. If you are in a LAN, you can attach your volume as an NFS datastore, nonetheless you will be adding some little latency to each I/O operation, which is not negligible.
On top of that, you will be using the same CPU to calculate hashes compress the data chunks and record them on the NFS share, while when you use (c)XSIBackup in a client/server mode you are balancing/ splitting the load on the CPU between the two servers.
As an extreme example, you could mount an NFS DS over a WAN, you won't get good results though, that's obvious. On the other side, using a client/server topology over a WAN will offer optimum results. What to do is up to you, in any case we believe choices are clear in every case.
Yes, it is, same way as Rsync does. It has to traverse all bytes though to compare checksums, once (c)XSIBackup-DC knows which blocks have changed it sends just the changed data. You note this especially when backing up over a WAN link, as second run and subsequent ones take little more than over a LAN.
We need to differentiate between some instant differential features, such as CBT or Onediff which don't need to go through all the data cause they know on advance which blocks have changed.
Where is job 002 sitting?
You don't need to use --on-success & --on-error to chain backups, you can also just chain jobs via standard shell constructs:
001 && 002 || 002You don't state what your problem is.
Current [b](c)XSIBackup-DC[/b] version 1.4.2.1 is capable of doing everything Pro edition does much faster & much more efficiently, except one thing: [b](c)Onediff[/b]
[b][url=https://33hops.com/xsibackup-pro-onediff.html](c)Onediff[/url][/b] is an instant differential feature which is specially useful when having to backup huge VMs in a short period of time. It stores the changed blocks to a snapshot and that snapshot is sent to the remote end and integrated with the previously sent base data.
- Keeping a permanent snapshot can reduce performance, this isn't a big issue as per the current working figures hardware can achieve though.
- Onediff differential snapshot has to be integrated to the remote VM, thus, you need to keep a mirrored VM to be able to merge the differential data and that VM has to be compatible with the original VM, not only in terms of compatibility between HW versions, but also in regards to VMFS versions.
Until we finish to develop an instant differential feature for DC edition, which will be much better than (c)Onediff, we can offer Pro + DC at reduced prices, just [b][url=https://33hops.com/contact-form.html]contact us[/url][/b] to get your deal.
Some whitespaces may be acumulated at the end of the argument values when using the GUI to repeatedly edit a job. This does not affect execution most of the times, but must be fixed. Next minor release will contain a fix for the GUI. You may manually remove those spaces by using vi or continue to use normally if that does not cause any further issue.
[b](c)XSIBackup-DC 1.4.2.1[/b] manages this automatically by detecting whether ESXi main version is equal or greater than 7 and deleting all snapshots previous to performing a backup or replica, only if the VM is on.
Please, be aware of this (c)ESXi >= 7 limitation imposed by (c)VMWare design.
[b](c)XSIBackup-DC 1.4.2.1[/b] has been released, [b]--prune[/b] action is now faster and can handle a virtually unlimited amount of data.
ESXi 7.0 blocks all files in a VM even after a snapshot is taken, this includes any previous snapshots. As a result of that, snapshots are skipped by the backup process in ESXi 7.0 and above VMs.
We will probably remove all snapshots previous to backup in some future release, Sysadmins must be aware of this limitation though.
You should rotate your repositories and avoid pruning until next main release is launched. Recommended procedure is to avoid pruning and rotation of repositories, just change the repository base folder name with some dynamic date stamp to rotate repos.
(c)XSIBackup-DC 1.4.2.1 will be released sometime before the end of October 2020 with a highly improved pruning mechanism.
The error is stating the certification SHA-1 check failed. Free version does not include backup certification as a feature, thus you should remove [b]--certify-backup[/b] argument if you are running Free version.
You are describing a generic issue that might not have anything to do with (c)XSIBackup. The job may fire twice if your crond service is loaded twice, this can happen in (c)ESXi, or if you have set up a wrong cron schedule. Please remember to set hour and minute at a minimum and don't leave an asterisk in the minute column or you will provoke issues as what you describe.
To make sure that only one instance of crond is running you can use the below code snippet. Please read the full post below to have a better idea of how the crond service works and how to troubleshoot it.
for p in $(ps -c | grep -v grep | grep 'busybox crond' | awk '{print $1}'); \
do kill -9 $p; \
done; \
/usr/lib/vmware/busybox/bin/busybox crond; \
ps -c | grep -v grep | grep 'busybox crond'[url=https://33hops.com/xsibackup-cron-troubleshooting.html](c)XSIBackup Cron Troubleshooting[/url]
It could be a worn out disk raising some read error in some sector. The best part of post backup checksums is that you really know what's going on, the worst part is that when you know you start to wonder.
If you recover that VM you will, most probably, find out that it works. This is due to read errors being more frequent than write errors, thus the probability that you are getting a read error on some byte is higher than that of the byte having been written wrongly.
This might not justify changing the disk, so you have these options:
1 - Ignoring the error. You should first check the restored VM.
2 - Clone the disk that's causing the problem to a new virtual disk file.
3 - Change the disk.
Read this post to have an overview on why these errors are detected and how to deal with them:
[url]https://33hops.com/xsibackup-disk-checksum-verification-silent-corruption.html[/url]
As discussed in our post "Pruning old backups", [b]--prune[/b] is by far the most resource intensive operation that you can perform with [b](c)XSIBackup-DC[/b].
[b](c)XSIBackup-DC[/b] still depends on the [b]sort[/b] binary, present in (c)ESXi and most Linux systems to sort the block lists. We will improve that in the next main releases, hopefully 1.4.2.0 will include a totally C native sorting mechanism.
If you try now to prune a huge repository, holding millions of blocks, you will sometimes receive an "out of memory" error from part of sort and the prune operation will fail. If your repos are smaller everything will work fine, nonetheless it's not possible to know that on advance.
If you want to keep huge repos and your server is short of resources, you should try to just rotate your repositories. Per instance, keep two repositories on alternate days, then once a certain volume of data has been reached, just rename one of the repos and let the job create a new one. After a few days you can just delete the old.
Proceed the same way every 'n' days such that you always keep the number of restore points that you want to keep.
Another aproach consists in keeping a fixed number of snapshots per VM. This is interesting in case your production VMs don't have to support a big fragmented load while they are on production, like in the case of web or DB servers. This will unfold as many inner restore points as snapshots are kept.
We have created [b][url=https://github.com/33hops/xsibackup-snroll]SNRoll[/url][/b] to help you automate keeping a fixed number of snapshots in a given VM.
You don't say whether you are using the GUI or the command line.
If it was the command line, the probabilities that something is wrong or misplaced are lower, thus we will asume you are using the GUI
[b](c)XSIBackup-DC[/b]'s GUI is based on nCurses, thus, it works on any SSH terminal. We can't fit all options and buttons in a classic bare 80 characters wide window though. You need to set your terminal to work in a graphic environment. This is how most SSH clients work by default, like Putty (our reference tool in Windows).
Nonetheless, if you use some basic SSH terminal software, you may be constrained by its reduced dimensions, such as that things just don't fit on your terminal window. This can cause from things not showing up to windows being printed partially on the available window size. Just stretch your window size.
If you are working in a Windows desktop, just use Putty, you don't even need to install it and it will work out of the box.
If on the contrary you are using Linux, remember to export the variable below.
export TERM=xtermSo that the terminal will behave in an X way.