I added an additional iSCSI SAN as a backup to our existing ESX Server storage array (homegrown, so no fancy NetApp or EMC software to manage this). Any way to automagically sync up the VM images in case the primary SAN fails? (vranger?)
Disclaimer - I work for Quest Software, the company that owns Vizioncore, but my answer here is just my own two cents.
I use Vizioncore vRanger Pro for exactly what you're describing: I have scheduled jobs to do backups off to secondary storage. I'm really impressed with the backup mechanism - it just works. I've had to do a few restores, and they went really well too: the whole thing is point-and-click inside the vRanger UI.
It's not the only product out there - Veritas NetBackup, for example, can integrate with VMware's VCB backup stuff to do similar snapshots. The thing to ask when you're talking to vendors is, "Does this require installing an agent or anything on the ESX server?" If it does, I get nervous. vRanger doesn't, but again, I'm not saying that as a sales guy - just giving my two cents. If I thought it sucked, I wouldn't answer the question here, heh.
We had all kinds of crazy problems with vRanger. One problem was when trying to backup a machine named "delta". This failed because the vmdk file had "delta" in its name, and vRanger assumed anytime it saw "delta" as part of the vmdkfilename, it must be because there are snapshots on that machine.
Another time we couldn't backup a particular machine because its UID had something like "xx-d0" in the middle. I forget what specifically the program was, but for some reason it was parsing the UID as a command line option "-d0", and would not do differential backups.
I would have put this as a comment, vs. an answer, but apparently you can't comment without some kind of reputation.
If you are looking strictly for a commercial software solution you might check out DoubleTake's ESX replication software.
If you're looking to grow your own solution, the most important thing to keep in mind is that you need to take a VMware based snapshot of your VMs before each replication cycle. This will essentially quiesce your VMs to give you the greatest chance at having a consistent vmdk in your replica. For scripting this process, the VMware VI toolkit for Windows (http://www.vmware.com/sdk/vitk_win/index.html) is very handy. It is a set of PowerShell commandlets that give you access to many advanced vCenter operations, i.e. creating snapshots for all the VMs in a particular datastore.
It depends on what you want your RPO (Recovery Point Objective) to be. This is how far back in time your last backup was, or more importantly, how much data do you can afford to lose...
Doubletake can replicate the VMs and has a pretty snazzy RPO
You can also script VM level backups with VMware VCB. RPO isn't that great, but there is a lot of support out there for it.
The other option is to write a script, put it on one of your ESX hosts that is attached to both of your SANs. http://www.vmts.net/vmbk.htm