From: richk@tekeda.PEN.TEK.COM (Richard C Kurschner)
Newsgroups: comp.cad.cadence,comp.misc,tek.misc
Subject: Any Distribution Software Out There?
Date: 29 Sep 92 00:34:35 GMT
Reply-To: Richard.Kurschner@tek.com
Followup-To: comp.cad.cadence
Organization: Tektronix, Inc., Beaverton,  OR.

I'm hoping the great net-mind can give me some assistance with a little
problem I'm having.

I have the responsibility to distribute an in-house developed EDA library (for
our Cadence design systems) to all Tektronix sites that need it.  The data
amounts to (currently) less than 400 Mbytes, of which no more than 1 Mbyte will
change on a daily basis.  (The total data may grow to 600 Mbytes or more over
time.)  The data will need to be sent from a master machine to about 15 remote
sites; transmission distances range from the same room, to within the local
metro area, to within Oregon, to within the U.S., and to as far away as Asia
and Europe.  (We have no plans at this time to distribute to the moon or
Mars! ;-)

Everybody I talk to seems to have their pet way of distributing/receiving data.
Some want me to push the data to them to ensure that everyone has the same
library at all times, to reduce system load, and to be more reliable.  Others
want to pull the data themselves to ensure that they aren't screwed up by a
library change in mid-cycle, and to preserve their machine's security.  Some
say to use rdist, others to use rcp, or ftp, or nfs along with find, and some
really want tape.  Now I know I'm not going to satisfy everyone, but I would
like to find something that generally works well and also to gain some amunition
for use against those whose positions I didn't take.

To the best of my knowledge, here are the absolute requirements:
  All machines involved will be Sun's of one form or another.
  Data is a collection of directory structures:
    Files will be both text and binary.
    Binary files are "well behaved": no holes such as made by some databases.
    Changes include file/directory deletion as well as addition and update.
  Most changes will be located in a few directories.
    These directories should be distributed daily or hourly.
    "Static" portion of library should be distributed on weekly or daily.
  Prefer an incremental distribution process to reduce network traffic.
  It is assumed that tapes will be needed for international sites and initial/
    replacement loads on some machines.  If possible network updates would be
    prefered.  Tapes are not acceptable for any other use.
  Direct, long term NFS mounts are not acceptable; short term mounts or
    auto-mounts may be acceptable.
  Simple to use:
    Easy to set up and maintain on both ends.
    Easy to confirm what changes have taken place.
    Prefer automatic operation.
    Preferable to be run by cron.
    Easy to restart if transfer didn't work, automatically if possible.
  Secure:
    Niether master nor remote sites exposed to additional security holes.
    To be run only by designated accounts.
  Able to customize directory locations on remote machines:
    The general structure will remain the same, just the root of the library
    tree may be different at different sites.
  Able to update all sites overnight.
  Minimal number of ways to update different remote sites, perferably only
    a single distribution scheme that works for everyone, world-wide.

In otherwords: reliable, robust, stingy, and flexible.  Like all good software!

Do any of you have suggestions for walking through this mine field?  Are there
any third-party tools out there to do this type of thing?  Have you got the
perfect solution?  I've solved this problem a few times before, but I've never
been truly happy with the speed, or reliability, or flexibility, or...
Please reply by e-mail.

Thanks!

Richard Kurschner
Tektronix, Inc.
Beaverton, OR