Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

10.1;drm_admin (Data Replication Manager administrative tool), revision 1.0, 88/09/12
drm_admin - Data Replication Manager administrative tool
usage: /etc/ncs/drm_admin



DESCRIPTION
     The drm_admin tool administers servers based on the Data Replication
     Manager (DRM), such as the Global Location Broker (GLB).

     It can inspect or modify replica lists, merge databases to force
     convergence among replicas, stop servers, and delete replicas.

     The role of drm_admin is to administer the replication of databases, not
     to change the data they contain.  For instance, you can use drm_admin to
     merge two replicas of the GLB database, but you must use lb_admin to add
     a new entry to the database.  Also, although drm_admin can stop or delete
     a GLB replica, you must invoke glbd (the GLB daemon) directly if you want
     to start or create a replica.

     Once invoked, drm_admin enters an interactive mode, in which it accepts
     the commands described in the following section.

COMMANDS
     Most drm_admin commands operate on a default object (default_obj) at a
     default host (default_host).  Together, default_obj and default_host
     specify a default replica.  Defaults are established by the set command
     and are remembered until changed by another set.

     Currently, the only known object is glb.

     Some drm_admin commands operate on a host other than the default; we
     identify this host as other_host.  The host name you supply as a
     default_host or an other_host takes the form family:host, where the host
     can be specified either by its name or by its network address.  For
     example, dds://jeeves, dds:#1234.abcd, ip:bertie, and ip:#192.5.5.5 are
     acceptable hostnames.

     addrep other_host
                    Add other_host to the replica list at default_host.  The
                    replica at default_host will propagate other_host to all
                    other replica lists for default_obj.

     chrep -from other_host -to new_other_host
                    Change the network address for other_host in the replica
                    list at default_host to new_other_host.  The replica at
                    default_host will propagate this change to all other
                    replica lists for default_obj.  The chrep command will
                    fail if a replica of default_obj is running at other_host
                    or if other_host is not on the replica list at
                    default_host.

     delrep other_host
                    Delete the replica of default_obj at other_host.  The
                    delrep command tells the replica at other_host

                    1. To propagate all of the entries in its propagation
                       queue

                    2. To propagate a delete request to all other replicas,
                       causing other_host to be deleted from all other replica
                       lists for default_obj

                    3. To delete its copy of default_obj

                    4. To stop running

     info           Get status information about the replica for default_obj
                    at default_host.

     lrep [ -d ] [ -clocks ] [ -na ]
                    List replicas for default_obj as stored in the replica
                    list at default_host.

                    The -d option lists deleted as well as existing replicas.

                    The -clocks option shows the current time on each host and
                    indicates clock skew among the replicas.

                    The -na option lists the network address of each host.

     merge { -from | -to } other_host
                    The merge command copies entries in the default_obj
                    database and replica list from one replica to another.  It
                    copies an entry if no corresponding entry exists in the
                    destination database or if the corresponding entry in the
                    destination database bears an earlier time stamp.

                    A merge does not cause entries to be propagated.  The
                    database and replica list at the origination are not
                    changed.

                    The -from option copies entries from the default_obj
                    database and replica list at other_host to the default_obj
                    database and replica list at default_host.

                    The -to option copies entries from the database and
                    replica list at default_host to the database and replica
                    list at other_host.

                    A merge -from followed by a merge -to causes the replicas
                    at the two hosts to converge.

     merge_all      The merge_all command uses default_host as the hub for a
                    global merge of all replicas for default_obj.  A merge_all
                    first does a merge -from each host on default_host's
                    replica list; then it does a merge -to each host on the
                    replica list. All replicas of default_obj are thereby
                    forced into a consistent state.  The merge_all operation
                    does not cause any entries to be propagated.

                    A merge_all should be used

                    ⊕ When a replica is purged

                    ⊕ When a replica is reset

                    ⊕ When a replica has been incommunicado for 2 weeks or
                      more

                    ⊕ When a replica "dies" (for example, when its database is
                      destroyed by a disk failure)

     monitor [ -r n ]
                    This command causes drm_admin to read the clock of each
                    replica of the default_obj every n minutes and to report
                    any clock skews or non-answering replicas.  If you do not
                    specify -r, the period is 15 minutes.

     purgerep other_host
                    The purgerep command purges other_host from the replica
                    list at default_host.  The replica at default_host then
                    propagates a delete request to the replicas at the hosts
                    remaining on its list, thereby removing other_host from
                    all other replica lists for default_obj.  The delete
                    request is not sent to other_host.

                    A purgerep can cause data to be lost and should only be
                    used when a replica has irrevocably "died." We recommend
                    strongly that you do a merge_all operation after the
                    purgerep to prevent the remaining replicas of the
                    default_obj database from becoming inconsistent.  If the
                    purged replica is still running, it should be reset.

                    We recommend that you use chrep (rather than addrep and
                    purgerep) to change entries on the replica list.

     quit           Quit the drm_admin session.

     reset other_host
                    Reset the replica of default_obj at other_host.

                    The reset command tells the replica at other_host to
                    delete its copy of default_obj and to stop running.  It
                    does not cause other_host to be deleted from any other
                    replica lists.  This command can cause data to be lost
                    unless a successful merge_all is done first.

     set [ -o obj_name ] -h host_name
                    Set the default object and host.  Subsequent commands that
                    do not specify a host will be sent to this host.  All
                    subsequent commands will operate on the object obj_name.
                    If you do not specify the -o option, drm_admin keeps the
                    current default_obj.

                    If you use set with the -o option, drm_admin checks the
                    clocks at all hosts with replicas of the specified object.

     stop           Stop the server for default_obj that is running at
                    default_host.

EXAMPLES
     Start drm_admin, set the default object to glb, and set the default host
     to //mars:

     $ /etc/ncs/drm_admin
     drm_admin: set -o glb -h dds://mars
          Default object: glb  default host: dds://mars
                         state: in service
          Checking clocks of glb replicas
          dds://mars     1987/04/09.17:09
          dds://pluto    1987/04/09.17:09
          dds://mercury  1987/04/09.17:07


SEE ALSO
     glbd, lb_admin
     Managing the NCS Location Broker.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026