Solaris Naming Setup and Configuration Guide

Adding a Replica to an Existing Domain

To have regularly available NIS+ service, you should always create one or more replica servers for each domain. Having replicas can also speed network-request resolution because multiple servers are available to handle requests.

For performance reasons, you should have no more than a few replicas per domain. If your network includes multiple subnets or different sites connected by a Wide Area Network (WAN), you might need additional replicas:

See Solaris Naming Administration Guide for additional information on how to determine the optimum number of replicas. To add a replica to an existing domain you must first configure the new replica, then load the NIS+ data set for your namespace.

The two ways to configure and load a new replica server are:

Using NIS+ Commands to Configure a Replica Server

This section describes how to add a replica server to an existing domain using the NIS+ command.

Security Considerations

The NIS+ principal performing this operation must have modify rights to the domain's directory object.

Prerequisites

Information You Need

Using NIS+ Commands to Configure a Replica Server-Task Map

Table 7-2 Using NIS+ Commands to Configure a Replica Server

Task 

Description 

For Instructions, Go To 

Setting Up an NIS+ Server 

Use NIS+ commands to set up an NIS+ server 

"How to Configure a Replica Server With NIS+ Commands"

How to Configure a Replica Server With NIS+ Commands

In this example, the master server is named master1, and the new replica is named replica2.

  1. Log in to the domain's master server.

  2. Make sure that rpc.nisd is running.

  3. Add the replica to the domain.

    Run the nismkdir command with the -s option. The example below adds the replica machine named replica2 to the doc.com.domain.


    master1# nismkdir -s replica2 doc.com. 
    master1# nismkdir -s replica2 org_dir.doc.com. 
    master1# nismkdir -s replica2 groups_dir.doc.com.

    When you run the nismkdir command on a directory object that already exists, it does not recreate the directory but modifies it, according to the flags you provide. In this case, the -s flag assigns the domain an additional replica server. You can verify that the replica was added by examining the directory object's definition, using the niscat -o command.


    Caution - Caution -

    Never run nismkdir on the replica machine. Running nismkdir on a replica creates communications problems between the master and the replicas.


    Your new replica is now configured. You can now load your NIS+ data set on to the replica. You can do this in two ways:

    • nisping. If you do nothing, your master server will use the nisping command to load your namespace data on to your newly configured replica server. If your namespace is large, this process can take hours. During this process, requests for naming information can be delayed. See " Using nisping to Load Data on to a Replica Server" for details.

    • Backup and restore. You can interrupt the transfer of data via nisping and use the NIS+ backup and restore capabilities to load your namespace data on to a newly configured replica server, as described in "Using nisrestore to Load Data on to a Replica Server". Because it is so much faster and more efficient, this is the preferred method.

Using nisrestore to Load Data on to a Replica Server

This section describes how to use the NIS+ backup and restore utilities to load namespace data on to a newly configured replica. This is the preferred method of loading data on to a replica.

Security Considerations

The NIS+ principal performing this operation must have modify rights to the domain's directory object.

Prerequisites

Using nisrestore to Load Data on to a Replica Server -- Task Map

Table 7-3 Using nisrestore to Load Data on to a Replica Server

Task 

Description 

For Instructions, Go To 

Using nisrestore to Load Data on to a Replica Server

Use the nisrestore command to load data on to a replica server

"How to Load Namespace Data--nisrestore Method"

How to Load Namespace Data--nisrestore Method

In this example, the master server is named master1, and the new replica is named replica2.

  1. Kill rpc.nisd on the new replica server.

    This interrupts the automatic transfer of namespace data from the master to the replica with the nisping command.

  2. Perform an NIS+ backup on the master server.

    This step is described in more detail in Solaris Naming Administration Guide. The example below shows how to use the nisbackup command to backup up the master1 server to the /var/master1_bakup directory.


    master1# nisbackup -a /var/master1_bakup

    The most convenient method of using nisrestore to configure a new replica is to back up the master's data to an NFS mounted directory that the new replica can access. This example assumes that both the master and the new replica server have access to the /var/master1_bakup directory.

    Another method is to use the tar command to copy the data from the /var/master1_bakup directory to some transferable storage media, such as a tape cartridge, then copy the data from storage media into a directory mounted on the new replica, then use that directory as the source for the nisrestore command, as described in Step 3.

  3. Download the NIS+ data set onto the new replica using the nisrestore command.

    This step is described in more detail in Solaris Naming Administration Guide. The example below shows how to use the nisrestore command to down load NIS+ data on to the client2 replica from the /var/master1_bakup directory.


    replica2# nisrestore -a /var/master1_bakup

    If the replica you are creating is for the root domain, or if you get an error message that nisrestore cannot verify or look up needed data, then use the nisrestore -f option. For example:


    replica2# nisrestore -f -a /var/master1_bakup
  4. Restart rpc.nisd on the new replica

    See "How to Configure an NIS+ Server" for details.

Using nisping to Load Data on to a Replica Server

This section describes how to use the nisping command to load namespace data onto a newly configured replica. In most cases, it is not necessary to actually run the nisping command because the process should begin automatically.

The problem with the nisping method is that it requires a full resync of data from the master to the replica over the network using NIS+ protocols. If your namespace is large, this process can take hours, during which requests for naming information can be delayed.

Security Considerations

The NIS+ principal performing this operation must have modify rights to the domain's directory object.

Prerequisites

Using nisping to Load Data on to a Replica Server -- Task Map

Table 7-4 Using nisping to Load Data on to a Replica Server

Task 

Description 

For Instructions, Go To 

Using nisping to Load Data on to a Replica Server

Use nisping to load data on to a replica server

"How to Load Namespace Data--nisping Method"

How to Load Namespace Data--nisping Method

Normally, the loading for namespace data is automatically initiated by the master server. If that does not occur, run the nisping command as described below.

    Run nisping on the directories

This step sends a message (a "ping") to the new replica, telling it to ask the master server for an update. If the replica does not belong to the root domain, be sure to specify its domain name. (The example below includes the domain name only for completeness. Since the example used throughout this task adds a replica to the root domain, the doc.com. domain name in the example below is not necessary.)


master1# nisping doc.com. 
master1# nisping org_dir.doc.com. 
master1# nisping groups_dir.doc.com.

You should see results similar to these:


master1# nisping doc.com. 
Pinging replicas serving directory doc.com. :
Master server is master1.doc.com.
 No last update time
Replica server is replica1.doc.com.
 Last update seen was Wed Nov 18 11:24:32 1992
 Pinging ... replica2.doc.com.

If your namespace is large, this process can take a significant amount of time. For more information about nisping, see the directories chapter of Solaris Naming Administration Guide.