16.4 Using the PSE Database Editor

The PSE Database editor provides an interface in which the system manager can create or change a PSE- cluster-specific database.

To invoke the PSE Database editor, enter the following:

# psedbedit

The editor displays the following:

PSE Database Editor

Command <new load edit view quit help>:

This is the main command line prompt for the PSE Database editor. At this prompt, you can:

If you are creating a new database or editing an existing one, the PSE Database editor session continues as a series of prompts, at which you are required to enter information. This information is divided into sections:

In the PSE Database editor session, there are distinct phases in which you create or edit the information in these sections:

If you are just displaying a database file or help, the PSE Database editor displays the information you request and returns you to the command line prompt.

Use one of the following commands at the Edit Command prompt to edit specific sections of the database file:

16.4.1 Sample PSE Database Editor Session

For the purpose of discussion, we will use the following example. Suppose the PSE cluster members are smp1, smp2, mc1, and mc2, where smp1 and smp2 are two big independent SMP systems, and mc1 and mc2 are two systems connected with Memory Channel.

The goal of the example sessions will be to group these PSE cluster members, so that a PSE cluster user can have a convenient way of running applications on all PSE cluster members, on any one of the two SMP systems, and on the two Memory Channel systems. We partition the PSE cluster into four partitions, partition single_smp1, and single_smp2, to contain the two SMP systems, partition memory_ channel to contain mc1 and mc2, and allmembers to contain the four PSE cluster members. The PSE cluster will be named mycluster. It uses IP port 9002 which has not been registered to the NIS services map. smp1 and mc1 are designated to be the PSE cluster load servers. We have installed the PSE V1.1 on smp1, but not on smp2, mc1, and mc2.

The two examples that follow show how to use PSE Database editor to create a PSE cluster database with these characteristics:

Example 16-1 shows a psedbedit session that creates a file-base PSE cluster database.

Example 16-1 Creating a File-Based PSE Cluster Database

  1. Run psedbedit(8) as root on a node that has a write access to the
     /usr/local/PSE directory:

       smp1# psedbedit

       PSE Database Editor

  2. Enter the new command to create a new database:

       Command <new load edit view quit help>: new

  3. Specify a file-based database:

       Enter DNS- or File-based database (D or F) [D]: F

  4. Specify the directory for the database file:

       Enter Farm Database directory: /usr/local/PSE

  5. Specify the new farm name:

       Enter Farm Name [farm]: mycluster

  6. Specify the load servers for the new Farm:

       Editing `mycluster' configuration data:

       Editing `PSE_LOADSERVERS' list:

         Current value(s) for PSE_LOADSERVERS:

                   <none>

         Enter <add delete quit help> [help]: add smp1

         Current value(s) for PSE_LOADSERVERS:

                1. smp1

         Enter <add delete quit help> [help]: add mc1

         Current value(s) for PSE_LOADSERVERS:

                1. smp1
                2. mc1

         Enter <add delete quit help> [help]: quit

  7. Specify the four partitions:

       Editing `PSE_PARTITIONS' list:

         Current value(s) for PSE_PARTITIONS:

                   <none>

         Enter <add delete quit help> [help]: add single_smp1

         Current value(s) for PSE_PARTITIONS:

                1. single_smp1

         Enter <add delete quit help> [help]: add single_smp2

         Current value(s) for PSE_PARTITIONS:

                1. single_smp1
                2. single_smp2

         Enter <add delete quit help> [help]: add memory_channel

         Current value(s) for PSE_PARTITIONS:

                1. single_smp1
                2. single_smp2
                3. memory_channel

         Enter <add delete quit help> [help]: add allmembers

         Current value(s) for PSE_PARTITIONS:

                1. single_smp1
                2. single_smp2
                3. memory_channel
                4. allmembers

         Enter <add delete quit help> [help]: quit

  8. Specify the default partition:

       Enter a value for PSE_DEFAULT_PARTITION [single_smp1]: allmembers

  9. Specify the IP service port for the mycluster Farm:

       Enter a numeric value between 5001 and 65535 for PSE_SERVICEPORT: 9002

 10. Specify no optional configuration data tokens:

     Editing optional values for configuration_data:

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     configuration_data      PSE_LOADSERVERS smp1 mc1
     configuration_data      PSE_PARTITIONS single_smp1 single_smp2
     configuration_data      PSE_PARTITIONS memory_channel allmembers
     configuration_data      PSE_DEFAULT_PARTITION allmembers
     configuration_data      PSE_SERVICEPORT 9002

     Are these values correct? [y]? y

 11. Specify the Farm member for partition single_smp1, and no optional
     partition tokens:

     Editing Partition `single_smp1' resources:

     Editing `PSE_MEMBERS' list:

       Current value(s) for PSE_MEMBERS:

                 <none>

       Enter <add delete quit help> [help]: add smp1

       Current value(s) for PSE_MEMBERS:

              1. smp1

       Enter <add delete quit help> [help]: quit

     Editing optional values for partition `single_smp1':

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     single_smp1             PSE_MEMBERS smp1

     Are these values correct? [y]? y

 12. Specify the Farm member for partition single_smp2, and no optional
     partition tokens:

     Editing Partition `single_smp2' resources:

     Editing `PSE_MEMBERS' list:

       Current value(s) for PSE_MEMBERS:

                 <none>

       Enter <add delete quit help> [help]: add smp2

       Current value(s) for PSE_MEMBERS:

              1. smp2

       Enter <add delete quit help> [help]: quit

     Editing optional values for partition `single_smp2':

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     single_smp2             PSE_MEMBERS smp2

     Are these values correct? [y]? y

 13. Specify the Farm member for partition memory_channel, and no optional
     partition tokens:

     Editing Partition `memory_channel' resources:

     Editing `PSE_MEMBERS' list:

       Current value(s) for PSE_MEMBERS:

                 <none>

       Enter <add delete quit help> [help]: add mc1

       Current value(s) for PSE_MEMBERS:

              1. mc1

       Enter <add delete quit help> [help]: add mc2

       Current value(s) for PSE_MEMBERS:

              1. mc1
              2. mc2

       Enter <add delete quit help> [help]: quit

     Editing optional values for partition `memory_channel':

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     memory_channel          PSE_MEMBERS mc1 mc2

     Are these values correct? [y]? y

 14. Specify the Farm member for partition allmembers, and no optional
     partition tokens:

     Editing Partition `allmembers' resources:

     Editing `PSE_MEMBERS' list:

       Current value(s) for PSE_MEMBERS:

                 <none>

       Enter <add delete quit help> [help]: add single_smp1

       Current value(s) for PSE_MEMBERS:

              1. single_smp1

       Enter <add delete quit help> [help]: add single_smp2

       Current value(s) for PSE_MEMBERS:

              1. single_smp1
              2. single_smp2

       Enter <add delete quit help> [help]: add memory_channel

       Current value(s) for PSE_MEMBERS:

              1. single_smp1
              2. single_smp2
              3. memory_channel

       Enter <add delete quit help> [help]: quit

     Editing optional values for partition `allmembers':

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     allmembers              PSE_MEMBERS single_smp1 single_smp2
     allmembers              PSE_MEMBERS memory_channel

     Are these values correct? [y]? y

 15. Save the Farm database:

     Edit Command <configuration_data partition print save quit help> [help]: save
     Creating new /usr/local/PSE/mycluster.db

     The following needs to be done to complete the configuration:

         o Make sure the `/usr/local/PSE' directory is accessible
           to all farm members.

         o Please review and execute the following shell scripts to complete
           the farm configuration:

             /var/adm/PSE/scripts/mycluster_modify_services
             /var/adm/PSE/scripts/mycluster_configure_nodes

         o Subset PSEWSF110 have not been installed on the following
           new farm member(s):

             smp2
             mc1
             mc2

           You can install the subset using pse-remote-install with the following
           steps:
             1. mount the kit media to a directory, e.g., /mnt.
             2. cd /var/adm/PSE/pse-remote-install
             3. for each node listed above, create a PAK file in the
                /var/adm/PSE/pse-remote-install/pak directory with the name
                Product_Name.nodename (e.g., PSE-O.myhost)
             4. Run `pse-remote-install -k kitpath -m /usr/local/PSE/mycluster.db
                -l mycluster.nodes PSE\*110'.
                kitpath is the directory path where the subset is located.

     This message is also copied to /var/adm/PSE/scripts/mycluster_todo_list

     Command <new load edit view quit help>: quit

Using the same example, Example 16-2 shows the creation of a DNS database for the PSE cluster mycluster using the psedbedit utility. Smp1, smp2, and mc1, mc2 are part of the univ.edu DNS domain. The mycluster database will be a subdomain of the univ.edu domain. Smp1 has been setup as a caching server, and will act as the primary server for the mycluster.univ.edu subdomain. Smp2 has been setup as another caching server and will be designated as secondary server for the mycluster database. The steps for creating the mycluster database are shown in Example 16-2:

Example 16-2 Creating a DNS-Based PSE Cluster Database

  1. Run psedbedit(8) as root on the primary server of the mycluster.univ.edu
     domain (smp1):

       smp1# psedbedit

       PSE Database Editor

  2. Enter the new command to create a new database:

       Command <new load edit view quit help>: new

  3. Specify a file-based database:

       Enter DNS- or File-based database (D or F) [D]: D

  4. Specify the DNS domain of the mycluster database:

       Enter DNS domain name [univ.edu]: <return>

  5. Specify the new farm name:

       Enter Farm Name [farm]: mycluster

 5a. Specify the primary server for the mycluster.univ.edu domain:

       Enter the DNS primary server for the `mycluster.univ.edu' domain
         [smp1.univ.edu.]: smp1

 5b. Specify default values for the SOA record, and add smp2 as secondary
     server:

       Editing Start of Authority (SOA) record:

       Host of Authority is `smp1.univ.edu.'

       Enter Authority e-mail address [postmaster@smp1.univ.edu.]: <return>
       Enter database serial number [1]: <return>
       Enter database refresh rate (seconds) [300]: <return>
       Enter database retry interval (seconds) [60]: <return>
       Enter database expire interval (seconds) [1209600]: <return>
       Enter database minimum time-to-live (seconds) [43200]: <return>

       Editing DNS Name Servers list:

         Current name server list:

                1. smp1.univ.edu.

         Enter <add delete quit help> [help]: add smp2

         Current name server list:

                1. smp1.univ.edu.
                2. smp2.univ.edu.

         Enter <add delete quit help> [help]: quit

       $ORIGIN univ.edu.
       mycluster          IN      SOA     smp1.univ.edu. postmaster.smp1.univ.edu. (
                                       1       ; serial number
                                       300     ; refresh
                                       60      ; retry
                                       1209600 ; expiration
                                       43200 ) ; TTL
       ;
                       IN      NS      smp1.univ.edu.
                       IN      NS      smp2.univ.edu.
       ;
       $ORIGIN mycluster.univ.edu.
       ;

       Are these values correct? [y]? y

  6. Specify the load servers for the new Farm:

       Editing `mycluster' configuration data:

       Editing `PSE_LOADSERVERS' list:

         Current value(s) for PSE_LOADSERVERS:

                   <none>

         Enter <add delete quit help> [help]: add smp1

         Current value(s) for PSE_LOADSERVERS:

                1. smp1

         Enter <add delete quit help> [help]: add mc1

         Current value(s) for PSE_LOADSERVERS:

                1. smp1
                2. mc1

         Enter <add delete quit help> [help]: quit

  7. Specify the four partitions:

       Editing `PSE_PARTITIONS' list:

         Current value(s) for PSE_PARTITIONS:

                   <none>

         Enter <add delete quit help> [help]: add single_smp1

         Current value(s) for PSE_PARTITIONS:

                1. single_smp1

         Enter <add delete quit help> [help]: add single_smp2

         Current value(s) for PSE_PARTITIONS:

                1. single_smp1
                2. single_smp2

         Enter <add delete quit help> [help]: add memory_channel

         Current value(s) for PSE_PARTITIONS:

                1. single_smp1
                2. single_smp2
                3. memory_channel

         Enter <add delete quit help> [help]: add allmembers

         Current value(s) for PSE_PARTITIONS:

                1. single_smp1
                2. single_smp2
                3. memory_channel
                4. allmembers

         Enter <add delete quit help> [help]: quit

  8. Specify the default partition:

       Enter a value for PSE_DEFAULT_PARTITION [single_smp1]: allmembers

  9. Specify the IP service port for the mycluster Farm:

       Enter a numeric value between 5001 and 65535 for PSE_SERVICEPORT: 9002

 10. Specify no optional configuration data tokens:

     Editing optional values for configuration_data:

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     configuration_data      PSE_LOADSERVERS smp1 mc1
     configuration_data      PSE_PARTITIONS single_smp1 single_smp2
     configuration_data      PSE_PARTITIONS memory_channel allmembers
     configuration_data      PSE_DEFAULT_PARTITION allmembers
     configuration_data      PSE_SERVICEPORT 9002

     Are these values correct? [y]? y

 11. Specify the Farm member for partition single_smp1, and no optional
     partition tokens:

     Editing Partition `single_smp1' resources:

     Editing `PSE_MEMBERS' list:

       Current value(s) for PSE_MEMBERS:

                 <none>

       Enter <add delete quit help> [help]: add smp1

       Current value(s) for PSE_MEMBERS:

              1. smp1

       Enter <add delete quit help> [help]: quit

     Editing optional values for partition `single_smp1':

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     single_smp1             PSE_MEMBERS smp1

     Are these values correct? [y]? y

 12. Specify the Farm member for partition single_smp2, and no optional
     partition tokens:

     Editing Partition `single_smp2' resources:

     Editing `PSE_MEMBERS' list:

       Current value(s) for PSE_MEMBERS:

                 <none>

       Enter <add delete quit help> [help]: add smp2

       Current value(s) for PSE_MEMBERS:

              1. smp2

       Enter <add delete quit help> [help]: quit

     Editing optional values for partition `single_smp2':

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     single_smp2             PSE_MEMBERS smp2

     Are these values correct? [y]? y

 13. Specify the Farm member for partition memory_channel, and no optional
     partition tokens:

     Editing Partition `memory_channel' resources:

     Editing `PSE_MEMBERS' list:

       Current value(s) for PSE_MEMBERS:

                 <none>

       Enter <add delete quit help> [help]: add mc1

       Current value(s) for PSE_MEMBERS:

              1. mc1

       Enter <add delete quit help> [help]: add mc2

       Current value(s) for PSE_MEMBERS:

              1. mc1
              2. mc2

       Enter <add delete quit help> [help]: quit

     Editing optional values for partition `memory_channel':

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     memory_channel          PSE_MEMBERS mc1 mc2

     Are these values correct? [y]? y

 14. Specify the Farm member for partition allmembers, and no optional
     partition tokens:

     Editing Partition `allmembers' resources:

     Editing `PSE_MEMBERS' list:

       Current value(s) for PSE_MEMBERS:

                 <none>

       Enter <add delete quit help> [help]: add single_smp1

       Current value(s) for PSE_MEMBERS:

              1. single_smp1

       Enter <add delete quit help> [help]: add single_smp2

       Current value(s) for PSE_MEMBERS:

              1. single_smp1
              2. single_smp2

       Enter <add delete quit help> [help]: add memory_channel

       Current value(s) for PSE_MEMBERS:

              1. single_smp1
              2. single_smp2
              3. memory_channel

       Enter <add delete quit help> [help]: quit

     Editing optional values for partition `allmembers':

     Enter the name of a token you wish to add/change.
     Enter 'p' to print the current values 'l' to list available tokens
     or 'q' to quit.

     Enter token name (case insensitive) [list]: quit

     allmembers              PSE_MEMBERS single_smp1 single_smp2
     allmembers              PSE_MEMBERS memory_channel

     Are these values correct? [y]? y

 15. Save the Farm database:

     Edit Command <configuration_data partition print save quit help> [help]: save
     Modifying named.boot
     Creating new mycluster.db

     The following needs to be done to complete the configuration:

         o For the farm database to be accessible from outside the
           `univ.edu' domain, you should notify the administrator
           of the `univ.edu' domain to add the following entries:

             mycluster.univ.edu.    IN   NS      hoods.univ.edu.
             mycluster.univ.edu.    IN   NS      stnick.univ.edu.

           Depending on the TTL and expire values for the `univ.edu'
           domain, it might take a while for this change to propagate.
           Please make sure this change is visible from the farm nodes
           before proceeding to the next step.

         o Please review and execute the following shell scripts to complete
           the farm configuration:

             /var/adm/PSE/scripts/mycluster_modify_services
      /var/adm/PSE/scripts/mycluster_configure_nodes

         o Subset PSEWSF110 have not been installed on the following
           new farm member(s):

             smp2
             mc1
             mc2

           You can install the subset using pse-remote-install with the following
           steps:
             1. mount the kit media to a directory, e.g., /mnt.
             2. cd /var/adm/PSE/pse-remote-install
             3. for each node listed above, create a PAK file in the
                /var/adm/PSE/pse-remote-install/pak directory with the name
                Product_Name.nodename (e.g., PSE-O.myhost)
             4. Run `pse-remote-install -k kitpath -m mycluster.db
                -l mycluster.nodes PSE\*110'.
                kitpath is the directory path where the subset is located.

     This message is also copied to /var/adm/PSE/scripts/mycluster_todo_list

     Command <new load edit view quit help>: quit