Document revision date: 30 March 2001

## OpenVMS License Management Utility Manual

Previous | Contents | Index

     %LICENSE-I-LOADED, DEC CRYPTICALMENT was successfully loaded with 460 units

        VMS License Management Utility Options:

            1. REGISTER a Product Authorization Key
            2. AMEND an existing Product Authorization Key
            3. CANCEL an existing Product Authorization Key
            4. LIST the Product Authorization Keys
            5. MODIFY an existing Product Authorization Key
            6. DISABLE an existing Product Authorization Key
            7. DELETE an existing Product Authorization Key
            8. COPY an existing Product Authorization Key
            9. MOVE an existing Product Authorization Key
           10. ENABLE an existing Product Authorization Key
           11. SHOW the licenses loaded on this node
           12. SHOW the unit requirements for this node

           99. EXIT this procedure

        Type '?' at any prompt for a description of the information
        requested.  Press Ctrl/Z at any prompt to return to the main menu.

    Enter one of the above choices [1]

- To register another PAK, enter 1. Then respond to the questions, again entering information from a license PAK.
- Enter 99 to exit the procedure. You have registered the license for this product. The system may display an error message when the procedure attempts to load the license. This does not affect the license registration. Exit the procedure, and read the sections of this manual that describe loading a license. For example, read the LICENSE LOAD, LICENSE UNLOAD, and LICENSE MODIFY command descriptions.

  #### 2.4.4.1 Using Data Files with VMSLICENSE.COM

  You can use VMSLICENSE.COM in batch mode as well as interactively. Instead of entering the PAK data interactively from your terminal or workstation, you can create a VMSLICENSE data file with an editor and enter data obtained from your product PAKs (Example 2-2 shows sample PAK data). You can then invoke VMSLICENSE.COM, specifying the name of the new VMSLICENSE data file as a parameter on the same command line. The procedure displays the license data and performs the requested operation or operations using data only from the VMSLICENSE data file.

  You can create a file that registers multiple licenses. VMSLICENSE.COM exits only when it reaches the end of the VMSLICENSE data file.

  #### 2.4.4.2 Invoking VMSLICENSE.COM with a VMSLICENSE Data File

  To pass a VMSLICENSE data file to VMSLICENSE.COM, use the following format:

      $ @VMSLICENSE [license-option] vmslicense-data-file [license-database]

  When you invoke VMSLICENSE with a data file, you must specify REGISTER as the license-option. You cannot use data files with any of the other options that are available when using VMSLICENSE interactively.

  You can specify a License Database on the command line or in the data file. Any License Database you specify in the data file overrides a License Database you specify on the command line.

  For example, you can pass the data in the sample VMSLICENSE data file, shown in Example 2-2, with the following command line:

      $ @VMSLICENSE REGISTER NODES_A_AND_B_VMS_LICENSE.DAT

  Example 2-2 Sample VMSLICENSE Data File

      !
      ! License for AWESOME-OS on NODEA
      !
      DATABASE_FILE   = SYS$COMMON:[SYSEXE]LMF$LICENSE.LDB
      ISSUER          = DEC
      PRODUCT_NAME    = AWESOME-OS
      AUTHORIZATION   = USA00326
      UNITS           = 1200
      VERSION         = 7.3
      AVAILABILITY    = A
      OPTIONS         = MOD_UNITS,NO_SHARE
      CHECKSUM        = 1-DELM-EAHF-ONIH-MBAH
      INCLUDE_NODE    = NODEA
      !
      <NEXT>
      !
      ! License for AWESOME-OS on NODEB
      !
      AUTHORIZATION   = USA00327
      UNITS           = 800
      CHECKSUM        = 1-PATC-IDOH-EPOF-MOHG
      INCLUDE_NODE    = NODEB
      !

  #### 2.4.4.3 Creating VMSLICENSE Data Files

  When you create a VMSLICENSE data file to be processed by VMSLICENSE.COM, you must follow these rules (refer to Example 2-2):

  - Specify all PAK data as parameters in the form of DCL assignment statements. Use the following format:

    `parameter = parameter-value ! comment`

    Table 2-1 lists the parameters allowed in the VMSLICENSE data file. You must use the exact parameter names, or VMSLICENSE ignores the line in the VMSLICENSE data file and returns an error message.

  - Separate the end of one license registration from the beginning of another with the following special license data separator:

        <NEXT>

  - Precede each comment with an exclamation point; VMSLICENSE ignores everything to the right of an exclamation point when processing the line.
  - Separate words in the VMSLICENSE data file with any number of spaces or tabs.
  - List parameters in any order in the VMSLICENSE data file.

  Table 2-1 Parameters Used with VMSLICENSE.COM
  Parameter | Description
  --- | ---
  ACTIVITY | License unit code that corresponds to a License Unit Requirement Table (LURT) or to a constant value.
  AUTHORIZATION | String that, when used with the PAK issuer string, identifies the license you want to register.
  AVAILABILITY | License unit code that corresponds to a LURT value or to a constant value.
  CHECKSUM | Verification string of 17 characters created by the PAK issuer for each PAK with this format: n-cccc-cccc-cccc-cccc where: n is an integer and c is an alphabetic character from A through P.
  DATABASE_FILE | Location of the License Database to be used. The default file specification is defined by the logical LMF$LICENSE, which points to SYS$COMMON:[SYSEXE]LMF$LICENSE.LDB on an unmodified OpenVMS system.
  DATE | Product date specifying that the license authorizes use of all product versions released on or before the date.
  HARDWARE_ID | Identification number of the hardware on which the product is licensed.
  INCLUDE_NODE | Nodes in an OpenVMS Cluster environment that can access the licensed product. INCLUDE_NODE can specify one or more nodes in a clustered Galaxy.
  ISSUER | Company that issued the PAK for this product.
  OPTIONS | List of license options from a PAK.
  PRODUCER | Company that owns this product.
  PRODUCT_NAME | Product with a license to register. Use the product name exactly as it appears on the PAK.
  RESERVE_LIST | Users (or activities) allowed to access the product license.
  TERMINATION_DATE | Date on which the product license is no longer valid.
  TOKEN | Product token string from a PAK.
  UNITS | Number of license units from a PAK.
  VERSION | Version limits from a PAK of the product for which you have a license.

  #### 2.4.4.4 Using VMSLICENSE.COM Default Value Rules

  If you do not specify a value for a parameter in a VMSLICENSE data file, VMSLICENSE substitutes default values. The current default values are ISSUER=DEC and PRODUCER=DEC. All other license parameters have null values until you specify a value.

  After you specify a license parameter in the VMSLICENSE data file, the parameter becomes the new default value until the next occurrence of the parameter sets a new default value. To set or reset the value of a parameter to null, use a line of the following form:

  `parameter = " "`

  For example, if the most recent PAK data set the INCLUDE_NODE parameter to a specific node, reset the parameter to null for the current and subsequent PAKs by entering the following:

      INCLUDE_NODE = ""

  Example 2-2 shows how using default data can eliminate typing for the second PAK listed in the VMSLICENSE data file.

  ### 2.4.5 Using the LICENSE REGISTER Command

  You can directly register (and load) a license with LICENSE commands. For example:

      $ LICENSE REGISTER CRYPTICALMENT /ISSUER=DEC -
      _$ /AUTHORIZATION=USA126087 /PRODUCER=DEC /UNITS=460 -
      _$ /VERSION=7.3 /TERMINATION_DATE=31-DEC-2001 /AVAILABILITY=E -
      _$ /OPTIONS=(MOD_UNITS) /CHECKSUM=1-BGON-IAMA-GNOL-AIKO
      $ LICENSE LOAD CRYPTICALMENT
      LICENSE-I-LOADED, DEC CRYPTICALMENT was successfully loaded with 460 units
      $

  After you successfully register a license in the License Database (the default file specification is SYS$COMMON:[SYSEXE]LMF$LICENSE.LDB), you can enter the LICENSE LIST/FULL command to display the data in the database (see Example 2-3).

  Example 2-3 Displaying License Database Information

      $  LICENSE LIST /FULL /AUTHORIZATION=USA126087 CRYPTICALMENT

      Use CTRL/Z to exit, PF3-PF4 for Previous-Next Screen and Arrow Keys to scroll.
       License Management Facility  V1.2

       License Database File:       SYS$COMMON:[SYSEXE]LMF$LICENSE.LDB
       Created on:                  28-AUG-2001
       Created by user:             GRAHAM
       Created by LMF Version:      V1.2

      ----------------------------------------------------------
       Issuer:                      DEC
       Authorization:               USA126087
       Product Name:                CRYPTICALMENT
       Producer:                    DEC
       Units:                       460
       Version:                     7.3
       Release Date:                (none)
       PAK Termination Date:        31-DEC-2001
       Availability:                E (System Integrated Products)
       Activity:                    0
       Options:                     MOD_UNITS
       Hardware ID:

       Revision Level:              1
       Status:                      Active
       Command:                     REGISTER
       Modified by user:            GRAHAM
       Modified on:                 23-SEP-2001 14:32:23.41

  When a license is successfully loaded with VMSLICENSE.COM or the LICENSE LOAD command, LMF displays an informational message.

  ### 2.4.6 Displaying License Information

  To display information from the License Database about specific licenses, enter the LICENSE LIST command.

  To display information in memory about loaded licenses, enter the SHOW LICENSE command. This command displays licenses loaded on the current node, and displays any reservation list associated with each license.

  ## 2.5 Loading a License

  To allow users to access a product, you must load each registered license. Loading a license transfers data from the on-disk License Database into system memory. The following table shows the methods of license loading for LMF:

  License Loading Options
  Status of Registered License | Loading Method
  --- | ---
  Registering with VMSLICENSE.COM | Confirm the load option.
  Registered with the LICENSE REGISTER command | Use the LICENSE LOAD command.
  Previously registered system starting up | System loads the license automatically.

  Figure 2-4 illustrates the license loading process for a standalone system. Whether the license manager enters the LICENSE LOAD command or the system automatically loads all registered licenses during startup, the license information is transferred to the system memory of node ART.

  Figure 2-4 Loading a License

  ### 2.5.1 Loading Licenses in an OpenVMS Cluster Environment

  In an OpenVMS Cluster environment, multiple nodes load licenses from a single common database. LMF provides this capability to let you share licenses as well as control access to a product on a node-by-node basis (provided this is allowed by the terms and conditions of the license).

  Typically, any node can load a license registered in the common License Database. For predictability, security, performance, or economic reasons, you can limit which nodes can access a product license intended to be shared among nodes. In an OpenVMS Cluster environment, you control access by modifying the license's include list. Use the LICENSE MODIFY command and either the /INCLUDE or /EXCLUDE qualifier to specify which cluster nodes can load the license. By changing the include list, you can create the effect of moving a product from node to node. Section 2.6.2 describes the process in detail. Note that you cannot share licenses that have the NO_SHARE option. They must be assigned to a single node.

  You can also control which users in an OpenVMS Cluster environment can access a product license. Control access by modifying the license's reservation list. Use the LICENSE MODIFY command with the /RESERVE qualifier to specify which users can access the license.

  In an OpenVMS Cluster environment, license loading involves transferring, or loading, license information from the on-disk License Database into system memory of the current node. The number and combination of licenses for an OpenVMS Cluster environment can be complex, which in turn makes the loading process complex and sometimes confusing. The general rule is that nodes specified on include lists or not specified on exclude lists of the LICENSE MODIFY command can load a registered license. As each system starts up, it loads any licenses to which it has access. If you need to load a license for all assigned nodes of a running cluster, you can use the OpenVMS System Management utility (SYSMAN), which is described in the OpenVMS System Manager's Manual. Figure 2-5 illustrates the loading process in an OpenVMS Cluster environment.

  Figure 2-5 Loading a License in an OpenVMS Cluster Environment

  See Section 2.6.2 for further details of license loading.

  ## 2.6 Managing Licenses After Registration

  After you register licenses, you can manage them. While system managers can perform these tasks, managers of cluster environments and large multiple-user systems may also have an interest in managing products and product licenses.

  For example, a cluster manager can use LMF to control which nodes can access a database product using important data (see Section 2.6.2). All system managers, however, may want to monitor license data using LICENSE commands.

  VMSLICENSE.COM, LICENSE commands, and the DCL command SHOW LICENSE can perform most license management tasks, including:

  - Listing registered licenses
  - Showing loaded licenses
  - Making loaded licenses unavailable --- either permanently or temporarily
  - Transferring licenses from one database to another
  - Modifying licenses --- such as termination dates or reservation lists

  ### 2.6.1 Restricting Product Use

  LMF provides the following commands and qualifiers for controlling access to licensed products.

  #### 2.6.1.1 Fastest Method

  The quickest method to restrict access to products registered in the License Database is to unload the license with a LICENSE UNLOAD command. The product becomes unavailable to new users and unavailable to all users when the last process using the product finishes. The product remains inaccessible until either you or the system reloads the license.

  Although LICENSE UNLOAD is fast, it is not permanent. Typically, at system startup, LMF loads all the licenses registered in the License Database. In addition, a license that is loaded remains loaded until either the system is shut down or you intervene.

  #### 2.6.1.2 For Inactive Licenses

  The following commands control license loading, which restricts product access. However, they do not unload loaded licenses or alter in-memory license data. For loaded licenses, use LICENSE UNLOAD.

  - LICENSE DISABLE
    Prevents the specified license from being loaded until you enter a LICENSE ENABLE command.
  - LICENSE MODIFY/INCLUDE, LICENSE MODIFY/EXCLUDE
    Makes the named nodes in an OpenVMS Cluster environment available or unavailable for license loading.
  - LICENSE MODIFY/UNITS=number
    Limits access when you set the unit number to be less than that required by your processor or cluster.
    Use if your license has the MOD_UNITS option. Not all licenses have a specific number of units. Some licenses provide zero units, which is equivalent to unlimited units.
  - LICENSE MODIFY/RESERVE=user-name
    Makes the product available only to the users named in the reservation list. You must use this method if your license has the RESERVE_UNITS option.
  - LICENSE COPY
    Automatically disables a license as you reregister it in another License Database.
    This command is similar in effect to LICENSE DISABLE except that it also registers the license in the other database.
  - LICENSE ISSUE
    Automatically disables a license so that you can then reregister it in another database.
    This command is similar in effect to LICENSE DISABLE except that it also produces a PAK replica to be registered elsewhere.

  #### 2.6.1.3 Permanent Methods

  For more permanent access restrictions, issue one of the following commands:

  - LICENSE DELETE
    Permanently deletes one or more licenses from a database, disallowing further license use. Use this command to eliminate terminated or unused licenses.
  - LICENSE MOVE
    Automatically deletes a license as you reregister the license in another License Database.
    This command is similar in effect to LICENSE DELETE except that it also registers the license in the other database.

  ### 2.6.2 Controlling Node Access to Licenses in Clusters

  In an OpenVMS Cluster environment, you can control which nodes have access to a product. Some product licenses require you to control access by creating include or exclude lists with the LICENSE MODIFY command.

  In an OpenVMS Cluster environment, license units are available to all nodes by default. If you need to control which nodes in a cluster have access to a product license, you must use the LICENSE MODIFY command with the /INCLUDE or /EXCLUDE qualifiers. These qualifiers take an argument list of System Communications Services (SCS) node names. SCS node names are system parameters set with the System Generation utility (SYSGEN). For example, if your cluster includes nodes MUSIC, ART, DANCE, and THEATR, you can specify that nodes MUSIC and ART have access to the software products registered in the License Database, while nodes DANCE and THEATR do not have access. The following command allows two nodes access to Pascal:

      $ LICENSE MODIFY/INCLUDE=(MUSIC,ART) PASCAL

  You can perform the same task by using the /EXCLUDE qualifier. The following command specifies the same product access as the previous command:

      $ LICENSE MODIFY/EXCLUDE=(DANCE,THEATR) PASCAL

  If a license does not provide enough license units for full availability across the cluster, use LICENSE MODIFY and one of these qualifiers. Otherwise, product availability is unpredictable. Products are authorized for use on nodes in the order in which they load the licenses. Unless you use an include list to control which nodes can load a product, the authorization to use a product can move from processor to processor during a series of system shutdowns and startups. When you shut down a system, LMF automatically unloads all loaded licenses on that system. If another cluster member boots before the first system reboots, the second system, referring to the common License Database, can automatically load the same license. Although this can be helpful, it may not be your intention.

  You can use the /INCLUDE and /EXCLUDE qualifiers with the LICENSE MODIFY command to determine who has access to the pool of units created by LMF when it loads combinable licenses. However, note the following:

  - LMF combines units from combinable licenses (licenses with the same product name and type) into a single pool from which all authorized nodes may draw. By default, all nodes are authorized. To restrict the nodes that are authorized, assign an include or exclude list to each license for the product.
  - Adding the NO_SHARE option to PAKs prevents license units from being shared. You can use this option to reserve all the units on a PAK for a particular node in an OpenVMS Cluster.
  - LMF unionizes all the include and exclude lists associated with combinable licenses. The resulting master list is all-inclusive; when combining licenses, a less restrictive list always overrides a more restrictive list.
  - Assigning an include list to a license does not reserve the license units for the nodes in the list.

  For example, if you assign an include list to four out of five combinable licenses, the default---all nodes are authorized---is in effect for the fifth license, and it overrides the lists on the other licenses. All nodes then have access to the product despite the include lists. Units for the product are allocated on a first-come, first-served basis as the nodes in the cluster are booted, until the pool of units is depleted.

  To ensure access exactly as you intend it, assign the same include or exclude list to each license. Purchasing more license units to fulfill requirements to run across the cluster is another option.

  Previous | Next | Contents | Index

  | privacy and legal statement |
  4584PRO_003.HTML