NonStop Software

Using the Configuration Tool

Previous Topic | Next Topic | Contents | Index
Getting Started Guide | Programmer's Guide | Reference Guide

Subtopics

Configuration Tool Overview
Configuration Tool Syntax
Configuration Tool Commands
An Example Configuration Tool Run

Configuration Tool Overview

The Configuration Tool supplied with NonStop DOM configures the NonStop DOM system and its associated configuration database. The tool is an executable program that runs in the Tandem Open System Services (OSS) environment. The Configuration Tool creates and maintains the Enscribe database that stores the configuration settings for the NonStop DOM system.


Note: The NonStop DOM system supplies the Object Request Broker (ORB) that is used by the NonStop DOM application servers. You use the Configuration Tool to configure and maintain the NonStop DOM system. Configuring and maintaing NonStop DOM application processes is covered in the topic Managing Application Processes.


The Configuration Tool incorporates the Tool Command Language (Tcl), which contains a rich set of commands. The command set of the Tcl interperter lets you configure, browse, edit, test, execute, and monitor the NonStop DOM installation. Using Tcl commands, you can also shut down (stop) and unconfigure NonStop DOM.

The Configuration Tool executable program, cfgmgt, requires the following Tcl support files to be loaded into the NonStop DOM directory specified by the $Tcl_LIBRARY environment variable:

These support files are loaded when you install NonStop DOM and must not be modified.

Tool Command Language (Tcl)

The Configuration Tool contains the complete Tcl 7.4 command set with specialized extensions for accessing the NonStop DOM configuration database, which is implmented as an Enscribe database.

Tcl commands allow the easy creation of profiles, database entries, and complex routines. By using Tcl, the Configuration Tool gives you flexible control over the configuration settings of your NonStop NonStop DOM system. The database items for the NonStop DOM system components (such as the Comm Server, the LSD, and the Naming Service) may be configured, browsed, and edited using Tcl commands given to the Configuration Tool.

The Tcl interperter in the Configuration Tool also supports the use of scripts. The NonStop DOM installation comes complete with several imporant scripts that provide for the initial configuration and startup of the NonStop DOM configuration database.

Configuration Tool Syntax

The Configuration Tool is the executable file cfgmgt, which is located in the /bin subvolume of your NonStop DOM installation.

The following command syntax describes how to invoke the Configuration Tool:

cfgmgt [<dbName>]

When you enter this OSS command, the Configuration Tool responds with a prompt, where you can enter tool commands. The exit command returns you to the OSS prompt.

<dbName>
The optional <dbName> parameter specifies the name of the database to use for subsequent commands. The database must reside on the Guardian file system. Also, you might need to specify a location qualification to resolve the database location.

In the command, you must precede special characters with a backslash ("\"). This is called an "escape" character and is used to tell the command interpreter to use the literal translation of what would otherwise be a special character. Thus, to indicate a dollar sign ("$") in a Guardian path, you must precede the dollar sign with a backslash. Similarly, you must precede a backslash character with an "escape" backslash. As an example, a Guardian database file named \kt22.$nsdoms2.db.xaction must be entered as:

\\kt22.\$nsdoms2.db.xaction

The user must ensure that the specified volume and subvolume specify a proper file location and must also have the correct file permissions to modify the database.

A database need not exist to use the dbName parameter. If you intend to create a new database, specify the name of the new database on the Configuration Tool command line.

Configuration Tool Commands

The following list of user commands describes the overall command set available through the Configuration Tool. Note that some commands depend upon an existing state of the NonStop DOM ORB.

dbcreate [<dbName>]
This command creates a database. The dbcreate by itself captures the value in the environment variable NSDOM_CFG_DBM as the database name. The command dbcreate <dbName> specifies a database to create. This database name may be a fully or partially qualified Guardian filename. Subsequent to database creation, the environment variable NSDOM_CFG_DBM assumes the <dbName> value supplied.

dbname [<dbName>]
This command sets or queries the database name. The default database name derives from the environment variable NSDOM_CFG_DBM. The command dbname with no parameter returns the current database name that is set in NSDOM_CFG_DBM environment variable. An error message is returned if NSDOM_CFG_DBM does not yet exist.

The form dbname <dbName> specifies dbName as the database referenced by following Configuration Tool commands. The location of the database requires a Guardian filename. A database name with no preceding volume or subvolume uses the default volume and subvolume of the user who logged onto the operating system.

dbremove [<dbName>]
This command removes a database. If you provide a database name with the <dbName> parameter, that database is deleted. If no database is specified in the command, the Configuration Tool deletes the currently specified database.

dumpdb <File>
This command dumps the current database onto an ASCII file named <File>.

The text file output is a fleshed-out script representation of the configuration database settings. Being a script file, you can edit the file to make modifications to the configuration settings. You can then use the source command to create or modify a database from the modified fleshed-out script.

Because dumpdb generates an ASCII text file containg the current configuration settings, you can use the command to save (archive), verify contents, or compare databases. You can also edit or modify the current system settings and reload them or transport the database configuration to another system.

entities
The entities command lists all entities in the current database. The Configuration Tool traverses the entire database in hash order to present a list of all existing entities. (The entities are not listed in alphabetical order.)

entity [<Entity> [ { <Key1> <Value1> <Key2> <Value2> ... } ]]
This command adds a series of keys and values to <Entity>. If the entity exists, the command adds the keys and values to its collection. If <Entity> does not currently exist in the database, the command will create an entity named <Entity> and will then assign to it the listed keys and values.

Internal procedures require that you list key-value pairs on separate lines. You may continue a value on the next line by appending a backslash character as the last character of the line. In this case, the value begins as the first nonwhitespace character following the last character of the key. If the value requires leading whitespace characters, double-quote the string.

The form entity <Entity> dumps the current keys in <Entity>.

The shorter command form, entity, dumps the names of all entities in the current database.

entityaddkeyvalue <Entity> <Key> <Value>
For <Entity> in the current database add <Key> with its associated value, <Value>. The entity may or may not exist. If <Key> already exists in an existing entity, <Value> replaces the previous value.

entitydelete <Entity>
The database deletes the listed entity. An error message is returned if the entity does not exist in the current database.

entitydeletekey <Entity> <Key>
Given <Entity> and <Key>, delete the key from <Entity>. The updated entity replaces the previous entity in the database. An error results if either <Entity> or <Key> does not exist in the current database.

entitykeys <Entity>
Given an existing entity in the current database, the entitykeys command displays all keys for <Entity>.

entitykeysvalues <Entity>
Given an existing entity in the current database, the entitykeysvalues command displays all keys and values for <Entity>.

profile [<appName>]
The profile command sets or queries the application name as profiled in the database. The profile command, when used alone, returns the profile of the current application name. Supplying an application name sets the profile to the <appName> name supplied.

source <ScriptFile>
This command reads and processes the specially formatted initialization script file <ScriptFile>.

This command must be used instead of the traditional Tcl "source" command when using NonStop DOM scripts as input. The reason lies in the special NonStop Kernel filenames that use the dollar sign ("$") and backslash ("\") characters. These characters are reserved characters in Tcl and hold special meanning when directly read by the interperter. In the scripts, these special characters must be preceded by an "escape" backslash. Other than these minor distinctions, the input script files are identical to Tcl script files.

An Example Configuration Tool Run

The following example run shows how to use several Configuration Tool commands and the types of responses you can expect to receive.

  1. To start the Configuration Tool program, type cfgmgt at the OSS shell prompt. The output should be similar to the following:
    cfgmgt
    NSDOM 2.0 Configuration Tool, v1.0
    [dbname:qatest] 1>
    
  2. Use the entities command to list the existing entities–the output will vary depending upon your database configuration:

    [dbname:qatest] 1>entities
      "appQA@client_attr_protocols"
      "appQA@comm_server"
      "appQA@csmap_binding"
      "appQA@LSD"
      "appQA@pathmon"
      "appQA@policies"
      "appQA@server_attr_protocols"
      "appQA@system_services"
      "appQA@trace"
      "appQA@user_services"
    

  3. Listing a specific entity:

    [dbname:qatest] 2>entity appQA@trace
            orb_giop_connections    false
            poa     0
            orb_request_queue       false
            orb_proxy       false
            name_svc        false
            event_socket    false
            event_context_free      false
            threads false
            event_core      false
            event_time      false
            comm_server     false
            event_file_system       false
    

  4. Enabling the orb_proxy trace switch:
    entity appQA@trace {
        orb_proxy true
    }
  5. Dumping the trace switches for the application appQA, which verifies that the trace switch has been set:

    [dbname:qatest] 3>entity appQA@trace
            orb_giop_connections    false
            poa     0
            orb_request_queue       false
            orb_proxy       true
            name_svc        false
            event_socket    false
            event_context_free      false
            threads false
            event_core      false
            event_time      false
            comm_server     false
            event_file_system       false
    

  6. Using the dumpdb command to creating an ASCII text file representing the current database settings:
    [dbname:qatest] 4>dumpdb qatest.db

    The ASCII file qatest.db will contain the "fleshed-out script" form of the database. Note that reloading this file always creates a database named qatest, unless you designate another database using the dbname command.

  7. After making some changes to the key-value pairs in the qatest.db file, reload the file to modify the configuration database:
    [dbname:qatest] 5>source qatest.db

    The output from this command will vary depending on the contents of the qatest.db file. Assuming that no errors are reported, the newly loaded database is ready for use.

  8. Create a new database named new_database:
    [dbname:qatest] 6>dbname new_database
    new_database
    [dbname:new_database] 7>dbcreate
  9. Load the new database with the values listed in qatest.db.
    [dbname:new_database] 8>source qatest.db
  10. Customize the configuration database by editing the new_database file. It is not necessary to exit the Configuration Tool to perform this operation. Simply enter the following command:
    [dbname:new_database] 9>vi new_database.db
  11. Merge the modifications into the configuration database:
    [dbname:new_database] 10>source new_database.db

    Any errors introduced from your modifications will be listed when you source the file. Fix the errors in the new_database.db file, then re-source it.

  12. You can examine your database changes by dumping the specific entity that you changed. In this example, assume that the default@trace switches have been loaded:

    [dbname:new_database] 11>entity default@trace
            orb_giop_connections    true
            poa     0
            orb_request_queue       true
            orb_proxy       false
            name_svc        false
            event_socket    false
            event_context_free      false
            threads false
            event_core      false
            event_time      false
            comm_server     false
            event_file_system       false
    

The database is now ready for use.


Previous Topic | Next Topic | Contents | Top
Getting Started Guide | Programmer's Guide | Reference Guide
Bibliography | Glossary | Index
© Tandem, a division of Compaq. All rights reserved. Legal notices.