WebSubmit Configuration Manager

A Tcl/Tk Client to Manage Code in the WebSubmit Package

Outline

  • Overview
  • Configuration Manager
  • Database Manager
  • Package Manager

  • Overview

    WebSubmit relies on a large number of variables to determine the specific configuration of the software at the site on which it is being used.  In addition, some data crucial to the operation of WebSubmit is stored in simple flat databases.  Manipulation of configuration information, and modification of databases, presents a slight administrative task that can become time-consuming if the site or the number of users supported grows significantly.  For this reason, the development team have constructed a Tcl/Tk client (located in $wsRootDir/install/wsManager.tcl) to handle some aspects of code management.  Hopefully, this will make the administration of WebSubmit easier and less time-consuming.   We call this client the Configuration Manager.

    The basic layout of the manager involves a division of the functions into four separate tab notebooks: the Configuration Manager, a Database Manager, a Package Manager, and an Updater.  Each notebook is accessed by clicking on the small tab with the corresponding text.  More detailed descriptions of each section of the manager are provided below.

    Configuration Manager

    This section of the manager allows you to control the settings for variables related to the operation of WebSubmit.  It is broken into three additional notebooks for variables related to separate aspects of the code.

    Tcl Setup
    This section allows you to control the paths to the Tcl interpreter, the cgi.tcl library, and the TclBin extension.  Values for these variables are chosen by the configuration script, although you can change them if this is desired.  cgi.tcl and TclBin are included with the WebSubmit distribution, and the paths set up for these packages reflect this fact.

    WebSubmit Setup
    A few variables within WebSubmit can be configured through the manager.   These control some aspects of security, and allow you to configure the address to which WebSubmit error reports are sent.  The two checkboxes for security should not be changes unless you have a compelling reason to disable the security features of the code.  The URL for the Certificate Authority should point to a site that is being used as a certificate distributor for WebSubmit.  The information contained at this URL should allow users to trust the CA in their browser, request certificates, and download certificates.

    HTTP Server Information
    It is imperative that the Web servers used with WebSubmit at your site are configured properly.  Configuration of WebSubmit to interact with these servers involves telling WebSubmit the names of the servers, the username under which these servers run (for setting file and directory permissions), and the URL-to-directory mappings used by your servers.  More information about how to set up the URL mappings is contained in the Installation Manual.

    Update
    This tab is used after all other variables have been set.  It can be used to verify the existence of all files in the distribution, to update variable names, and to fix permissions and ownership of all files for your server.  A file containing the site configuration is created ($wsRootDir/install/websubmit.site) if variable names are saved.  This file will be sourced on subsequent uses of the manager so that information about your site is persistent.

    Database Manager

    The database manager allows you to control the entries in databases used by WebSubmit.  Databases are simple ASCII text files that contain a collection of records, each of which has a group of attributes.  The database managers allow you to add and delete both records and attributes, and to save these changes eithe rin the canonical files, or in separate files.

    User and Host Database
    The user and host database allows you to add and delete users from the system, and also to add and remove hosts contained in the WebSubmit cluster.

    User Addition
    Users can be add simply by clicking the Add User button.  This will bring up a dialog that asks for the WebSubmit ID for that user.  The WebSubmit ID, in the current security implementation, is an MD5 hash of a base-64 encoded version of a user's digital certificate.  Unregistered users who attempt to access the system will have their certificates, along with hash values, stored in temporary files in $wsRootDir/cert.  The administrator is sent email indicating the presence of such files when they are created automatically by WebSubmit.  The hash value can be retrieved from this temporary file and inserted into the database manager.  When users are added, all of their attributes are left blank, and should be filled in as necessary.  The Authentication Database section of this document contains information about how to fill out these fields.

    User Deletion
    Deleting a user is done by clicking on the Delete button in the header for their information.  When saving the database, deleted user's information will not be stored.

    Host Addition
    Click the Add Host button to add a host to the system.  This will create a new field corresponding to this host in all user records.  User login names can be placed in these fields so that users can access the new system.

    Host Deletion
    Click the Delete Host button to delete a host.  A dialog is raised that allows you to select the host to delete.  Select the host and press Ok, or Cancel to abort the action.  When deleted, this host's fields will be deleted from all user entries in the database.

    Save
    Saves the current database in the file $wsRootDir/lib/auth.db.

    Save As...
    Raises a file dialog that allows you to select a new name in which to store the database.  Note that WebSubmit will only access $wsRootDir/lib/auth.db when it runs normally, so saving databases in separate files should primarily be for archival purposes.

    Master Database
    The master database controls the appearance of the main page in WebSubmit, and also controls precisely how links are constructed to access various application modules.  More information on the proper configuration of the master database is contained in the Master Database Manual.

    Add/Delete Record
    Add or remove entries from the master database.  Operation is similar to the Add User and Delete user operations in the User database manager.  Management on the record level is probably the only thing you will be doing with the master database.

    Add/Delete Attribute
    This allows you to add or remove attributes from the Master database.  Unless you plan on rewriting the way WebSubmit sets up the links to applications, it is not suggested that master database attributes be modified.

    Save/Save As...
    Operation is identical to the same functions in the User database manager, although the canonical location for the master database is $wsRootDir/lib/master.db.

    Package Manager

    The package manager provides an easy mechanism for looking at the various packages contained in $wsRootDir/lib.  Each package manager allows you to bring up and edit the code.  Code is tagged so that site-specific regions of code are highlighted.  A tagged line of code begins with ';;', so if you wish to tag code for future viewing, just add these characters at the beginning of the line.  Packages of primary interest for the maintenance of queuing system data are wsNQS.tcl, wsLSF.tcl, and wsLoadLeveler.tcl.