Proxy Backups

Situation

  People frequently want to backup hosts that either can't access the
  database through NFS (hosts that aren't trusted clients, or which
  don't run NFS, or are on the wrong side of a firewall) or which have
  the wrong byte order (in cases where they haven't/can't use perl
  with the BSD db library).  For now, they're stuck.

  It would be nice if there were a way to use the backup system to
  backup these hosts, by running the programs that have to update the
  database on a host with database access (such as the database host
  itself), and using trusted "rsh" connections to execute the backup
  commands remotely.  

  For example, suppose D were the database host, P were a proxy that
  has access to the database through NFS, and B is the host to be
  backed up.  It would be nice if we could run all-backups on D, doing
  a backup of B, which would work by running do-backups on P, which
  would run dump on B through rsh.

Implementation

  This really shouldn't be hard to implement - we need a scheme that
  allows us to name the proxy host for a host that can't be backed up
  directly.  This should be stored in the backup.hosts file, I
  suppose, probably with a switch such as "proxy=P".  

  all-backups would have to know that when we backup B, we really want
  to run the backup on P.  This would be easiest if implemented along
  with the changes suggested in the notes on checklists.

  I'm wondering whether we can implement generic "proxy backup" code
  that would work with any archive program, or whether we need to
  create "backup-proxy-dump", "backup-proxy-tar" for some reason.
  I'll have to look into that.  I also don't know whether we can do
  everything that backup-* allows now easily.  It could be that the
  change is as simple as inserting "rsh backup-host archive-program"
  in backup-*, I dunno.



