here's my tentative plans for a d2d backup in my lab.
2 identical servers, each with lots of SATA bays. each server configured with 2 raids, raid1 is this servers storage, and raid2 is a DRBD mirror of the other servers storage.
each server runs KVM and under KVM runs a CentOS virtual machine which runs BackupPC, that has half the backup jobs assigned to it.
if server2 fails, then server1 fires up the backup2 VM on its DRBD replica of server2's storage, and all continues as it was, with just less performance until the 2nd server can be restored, and the backup2 volume replicated back to it so the backup2 VM can be stopped on server1 and resumed on server2.
this doesn't address offsite archiving, and I haven't quite decided if I'm going to A) replicate the important backups to additional offsite storage, or B) periodically make archive backups onto a separate HD that is then dismounted and pulled and shipped to the data vault (the production IT at my site has weekly drops to a data security company, I could add a disk to their lockbox. I may end up doing a combination of these things.