Installation and Execution  

 

Altia® License Server 2.3

Distributed License Server for Altia Software Products

 

Overview

The Altia License Server provides the capability to run Altia software products from anywhere on a network, yet restricts the number of simultaneous executions of the products to the number of licenses purchased. When an Altia product is started, it first searches the local code words file (typically /usr/altia/license/codewords) for any code words that allow a local (i.e., locked to a node) copy to execute. If such a code word is not found, then the product attempts to connect to a License Server that can provide authorization to run. The codewords file on the local node contains one or more "ServerName" directives that list host names of computers that are authorized to run a License Server.

The Altia product seeking authorization attempts to connect, via predefined network sockets, to the License Server on each host, in order, until a server on one of the hosts accepts the connection request. For each remote host, the local Altia product will attempt to start a License Server on that host system if one is not already running. It attempts to do so via the inetd daemon process running on the remote system. Under normal License Server installation, the inetd daemon is set to start the License Server asynchronously on a request from an Altia product. This approach frees the user from having to start the License Server process manually or from a system start-up script. Once started, the license server will let Altia products connect up to the limit of available licenses. If all Altia products subsequently disconnect, the license server automatically shuts down until required again.

Before proceeding with the License Server installation, have the code words available from your Altia Software Certificate(s). If no code words appear on your Software Certificate(s), simply contact Altia and be prepared to provide the identification number for the computer system you wish to designate as the License Server machine. On SUN and SGI systems, the identification number is provided by the hostid command. On Hewlett-Packard and IBM systems, the last number displayed by the uname -a command is the system identification number.

 

Simple Installation - No Super-user Privileges Required

If you have already installed the License Server for an earlier release of Altia Design, no additional actions need to be taken if you are installing the Release 2.3 software into the same directories.

The License Server supports a configuration which does not require super-user privileges to install. However, with some super-user privileges, you can perform a more reliable installation. The installation steps describe where super-user actions may be helpful.

  • 1. Install the standard Altia Design software product on the machine you have designated to run the Altia License Server or on the network file server that provides file system access to the machine. Follow the installation instructions provided with the software. At the time of purchase, you were required to provide an Altia Representative with the nodeid of the machine that will execute the License Server. Altia, in turn, has provided you with one or more Software Certificates which identify the system and the code words required to run the License Server. The License Server software is provided on the standard product media - there is no additional media to unload. The programs and files required to run the License Server are:

    /INSTALLDIR/altia/bin/licserver

    /INSTALLDIR/altia/license/codewords

    where /INSTALLDIR is your choice for an installation directory (we recommend /usr).

    If the Altia software is already installed on another machine, you may choose to simply copy the licserver program onto the machine designated to run the License Server or onto the network file server that provides file system access to the machine. You must copy the file into a directory named /INSTALLDIR/altia/bin (where /INSTALLDIR is a directory tree of your choosing) and also create a directory named /INSTALLDIR/altia/license.

    2. Change directory to /INSTALLDIR/altia/license, edit the codewords file, and add the code words displayed on the Software Certificates for your floating products. Typically, you will have a Software Certificate for an Altia Floating License Server and another for the Altia Design Floating Development System or a single certificate listing code words for both products. If the codewords file does not exist, copy codes.trial to codewords or simply create a completely new file. Each code word must be entered on a separate line with the License Server code word listed first immediately followed by the Development System code word on the next line of the file - the order is important! If you received a single Software Certificate, enter the code words in the order in which they appear on the certificate.

    3. While still editing the codewords file, search for 2 lines in the file that have the form:

    ServiceName 5055

    StartServiceName 5056

    If these lines do not exist, create them. They define the socket numbers to use for communicating between Altia products and the License Server. These lines must be the same in every codewords file on each machine that will access the License Server. If you feel that the default socket numbers may conflict with numbers used by existing products, you can change them as long as you change them in all codewords files. You can compare the socket numbers with numbers for standard services by viewing the /etc/services file or its equivalent.

    4. While still editing the codewords file, add a line like the following:

    ServerName HOSTNAME

    Where HOSTNAME is the machine that will run the License Server. The codewords file may contain multiple ServerName directives, one for each machine running a License Server on your network. HOSTNAME is a logical name as returned by the hostname command or a network address in the form AAA.BBB.CCC.DDD.

    5. The codewords file editing is complete and you are ready to run the License Server program. Save the codewords file changes and exit your edit session. Change directory to /INSTALLDIR/altia/bin and execute the following command from a shell prompt:

    licserver -a -c /INSTALLDIR/altia/license/codewords &

    The message "OK" will print to the window if the License Server starts successfully. If you don't see the OK message, check your previous codewords file changes and try executing the program again. If it still fails, refer to the "License Server Trouble Shooting Tips" section later in this document.

    With the -a option, the License Server program runs indefinitely until the server system shuts down. It must be restarted with the same command after the server system is rebooted. If you would prefer, you can permanently start the License Server from one of your system start-up scripts, such as /etc/rc or its equivalent, with the following line:

    /INSTALLDIR/altia/bin/licserver -a -c /INSTALLDIR/altia/license/codewords &

    This will require super-user privileges, but it is more reliable than trying to remember to start the License Server program manually each time the server system reboots.

    6. On each remote system that will run Altia products, you must install the Altia software and repeat the codewords file changes described in steps 3 and 4. If the Altia software is installed on a file system that is NFS mounted by all remote systems, then the changes need to be made only once. If this is the same file system that steps 3 and 4 were originally performed on, then no additional changes are necessary.

    7. You are ready to run Altia products from the system running the License Server or from any remote system that has the Altia software installed (or NFS mounted) and also has a properly configured codewords file. See the "Getting Started" document for more details.

  • Installation Procedures Using License Server Installation Script

    If you have already installed the License Server for an earlier release of Altia Design, no additional actions need to be taken if you are installing the Release 2.3 software into the same directories.

    An installation script is provided for License Server machines that have access to their own service files. If you are running a Network Information Service, such as NIS, you will not be able to run this script. Instead, see the next section, "Manual Super-user Installation of the License Server" or the previous section, "Simple Installation - No Super-user Privileges Required".

  • 1. Install the standard Altia Design software product on the machine you have designated to run the Altia License Server or on the network file server that provides file system access to the machine. Follow the installation instructions provided with the software. At the time of purchase, you were required to provide an Altia Representative with the nodeid of the machine that will execute the License Server. Altia, in turn, has provided you with one or more Software Certificates which identify the system and the codewords required to run the License Server. The License Server software is provided on the standard product media - there is no additional media to unload. The programs and files required to set-up and run the License Server are:

    /INSTALLDIR/altia/bin/licinstall

    /INSTALLDIR/altia/bin/licserver

    /INSTALLDIR/altia/license/codewords

    where /INSTALLDIR is your choice for an installation directory (we recommend /usr).

    If the Altia software is already installed on another machine, you may choose to simply copy the licserver and licinstall programs onto the machine designated to run the License Server or onto the network file server that provides file system access to the machine. You must copy the files into a directory named /INSTALLDIR/altia/bin (where /INSTALLDIR is a directory tree of your choosing) and also create a directory named /INSTALLDIR/altia/license.

    2. Login as root on the system designated to run the License Server. The License Server installation script must modify /etc/services and /etc/inetd.conf. Super-user privileges are required to do this.

    3. Execute "/INSTALLDIR/altia/bin/licinstall -h HOSTNAME -d /INSTALLDIR/altia" where HOSTNAME is the name of the system as returned by "uname -n".

    4. Edit /INSTALLDIR/altia/license/codewords and add the code words displayed on the Software Certificates for your Floating products. Typically, you will have a Software Certificate for an Altia Floating License Server and another for the Altia Design Floating Development System or a single certificate listing code words for both products. Each code word must be entered on a separate line with the License Server code word listed first immediately followed by the Development System code word on the next line of the file - the order is important! If you received a single Software Certificate, enter the code words in the order in which they appear on the certificate.

    5. Install the complete Altia Design software product on each system that you intend to execute the product from or on each network file server that provides file system access. After doing so, Execute "/INSTALLDIR/altia/bin/licinstall -h HOSTNAME -d /INSTALLDIR/altia" on each system that will be executing the product, where HOSTNAME is the name of the machine that will be running the License Server.

    6. You are ready to run Altia products. See the "Getting Started" document for more details.

  • Manual Super-user Installation of the License Server

    If you have already installed the License Server for an earlier release of Altia Design, no additional actions need to be taken if you are installing the Release 2.3 software into the same directories.

    If you are running a Network Information Service, such as NIS, you will need to set up the License Server manually using the following steps. If you do not have super-user privileges or prefer a simpler installation process, see the earlier section "Simple Installation - No Super-user Privileges Required".

  • 1. Install the standard Altia Design software product on the machine you have designated to run the Altia License Server or on the network file server that provides file system access to the machine. Follow the installation instructions provided with the software. At the time of purchase, you were required to provide an Altia Representative with the nodeid of the machine that will execute the License Server. Altia, in turn, has provided you with one or more Software Certificates which identify the system and the code words required to run the License Server. The License Server software is provided on the standard product media - there is no additional media to unload. The programs and files required to run the License Server are:

    /INSTALLDIR/altia/bin/licserver

    /INSTALLDIR/altia/license/codewords

    where /INSTALLDIR is your choice for an installation directory (we recommend /usr).

    If the Altia software is already installed on another machine, you may choose to simply copy the licserver program onto the machine designated to run the License Server or onto the network file server that provides file system access to the machine. You must copy the file into a directory named /INSTALLDIR/altia/bin (where /INSTALLDIR is a directory tree of your choosing) and also create a directory named /INSTALLDIR/altia/license.

    2. The machine designated to run the License Server must have access to the following services normally found in /etc/services:

    altialic 5055/tcp # Altia License Server Connection Port

    altiastr 5056/tcp # Altia License Server Startup Port

    If you are using a Network Information Service, like NIS, consult your Network Administration Manual for details on how to make these services available from a network server. Otherwise, you can simply edit the /etc/services file on the designated License Server machine and add these lines. In any case, it will take super-user privileges to set up these services.

    Warning! If the /INSTALLDIR/altia/license/codewords file contains uncommented lines of the form:

    ServiceName 5055

    StartServiceName 5056

    the socket numbers for altialic and altiastr must exactly match the ServiceName and StartServiceName numbers found in the codewords file. If they are different, change the numbers in one of the files or delete the ServiceName and StartServiceName lines in the codewords file.

    3. Edit the /etc/inetd.conf file on the machine designated as the License Server and add the following line:

    altiastr stream tcp nowait bin /INSTALLDIR/bin/licserver licserver -c /INSTALLDIR/altia/license/codewords

    where /INSTALLDIR is the installation directory as chosen previously. This line gives the inetd daemon process the ability to start the License Server, /INSTALLDIR/altia/bin/licserver, automatically if it is not already running.

    The inetd daemon must now be restarted or notified that its configuration file, /etc/inetd.conf, has changed. On SunOS and Solaris systems, determine the process id number for the current inetd process using the ps command and then execute kill -1 inetd_pid_num to notify the inetd process that it needs to re-examine the configuration file. On HP systems, simply re-execute the inetd program (typically found in /etc) with the -c option. On SGI systems, executing /etc/killall -HUP inetd will notify the inetd process that it needs to re-examine the configuration file. On IBM systems, use /usr/bin/refresh -s inetd to notify the inetd process that it needs to re-examine the configuration file.

    If you would prefer, you can permanently start the License Server from one of your system start-up scripts, such as /etc/rc or its equivalent, with the following line:

    /INSTALLDIR/altia/bin/licserver -a -c /INSTALLDIR/altia/license/codewords &

    The -a option tells the License Server to run continuously - not to shut down when there are no clients connected. If you choose this approach, you may want to execute this command line from a shell prompt after finishing step 4 below. This way, you won't need to reboot your system to start the License Server.

    4. Edit /INSTALLDIR/altia/license/codewords and add the code words displayed on the Software Certificates for your floating products. Typically, you will have a Software Certificate for an Altia Floating License Server and another for the Altia Design Floating Development System or a single certificate listing code words for both products. If /INSTALLDIR/altia/license/codewords doesn't already exist, you will need to create it. Each code word must be entered on a separate line with the License Server code word listed first immediately followed by the Development System code word on the next line of the file - the order is important! If you received a single Software Certificate, enter the code words in the order in which they appear on the certificate.

    5. Install the complete Altia Design software product on each system that you intend to execute the product from or on each network file server that provides file system access. Each of these machines must also have access to the following services normally found in /etc/services:

    altialic 5055/tcp # Altia License Server Connection Port

    altiastr 5056/tcp # Altia License Server Startup Port

    Warning! If a /INSTALLDIR/altia/license/codewords file for a system contains uncommented lines of the form:

    ServiceName 5055

    StartServiceName 5056

    the socket numbers for altialic and altiastr must exactly match the ServiceName and StartServiceName numbers found in the codewords file. If they are different, change the numbers in one of the files or delete the ServiceName and StartServiceName lines in the codewords file.

    6. On each machine you plan to execute Altia products on, you must add a line like the following to the /INSTALLDIR/altia/license/codewords file:

    ServerName HOSTNAME

    Where HOSTNAME is the machine running the License Server. If this file resides on a network file server, it may only need to be edited from one machine. The codewords file may contain multiple ServerName directives, one for each machine running a License Server on your network. HOSTNAME is a logical name as returned by the hostname command or a network address in the form AAA.BBB.CCC.DDD.

    7. You are ready to run Altia products. See the "Getting Started" document for more details.

  • License Server Trouble Shooting Tips

    If the License Server setup is wrong, your clue is the appearance of the "No Authorization" dialogue when starting an Altia product session. Follow the steps below to diagnose and fix the problem.

    Step One - Test the Code Words Using the licserver Program

    It is easiest to debug License Server problems by starting the licserver program with various options and noting the results. In a shell prompt window (e.g., Shell Tool or Xterm window) on the machine designated to run the License Server, change directory to /INSTALLDIR/altia/bin and execute: licserver -p

    If the resulting message is:

    Could not open codeword file codewords

    then you must specify a codeword file path with the -c /INSTALLDIR/altia/license/codewords option. Repeat the command with these additions.

    When the message from licserver -p -c /INSTALLDIR/altia/license/codewords is similar to:

    License server: Reading the codeword file

    Server License Id: XXXXXXXX : Product: Altia Design, Count: 1

    License server: Codewords complete

    License server: Exiting

    confirm that XXXXXXXX is the License Server machine id (which should be the id of the current machine) and also confirm that the product count is correct.

    Step Two - Start the License Server Using the licserver Program

    After Step One is successful, attempt to execute the same licserver command, but without the -p option (e.g., licserver -c /INSTALLDIR/altia/license/codewords).

    If the command prints:

    License server: could not start with service altialic Error: Bad file number

    Error string: cannot find inet service

    then the /etc/services file is missing the altialic/altiastr lines. Please enter them as described earlier under "Manual Super-user Installation of the License Server". If you performed a simple installation, check your ServiceName and StartServiceName lines in the codewords file for typographical errors. Another possibility is that the selected socket numbers are already in use or outside of the supported range (values between 2000 and 9999 are usually the safest).

    If the command prints:

    License server: could not start with service altialic Error: Permission denied

    Error string: cannot find inet service

    then the /etc/services file does not have read permission. Or, Network Information Services (NIS) are running and the services file must be edited on the NIS server machine.

    When the command prints OK, then the license server is working properly. Leave the program running in the shell prompt window for now. If you are planning to use the inetd.conf altiastr entry to automatically start the License Server, edit /etc/inetd.conf from a different window and confirm that the path name for the licserver command is correct and that the -c ... options match identically to those just used.

    Please Note: The altialic/altiastr lines must be present in all /etc/services files for all machines that will run Altia products using the Altia License Server. If Network Information Services are in use, this usually only requires changing the services file on the NIS server machine. If you do not wish to add altialic/altiastr lines to the services file(s), you can use the ServiceName and StartServiceName lines in the codewords file instead. This is described in the section "Simple Installation - No Super-user Privileges Required".

    Step Three - Start Altia Design with the License Server Running

    After Step Two is successful, a licserver command should be executing from a shell prompt window. In a different shell prompt window, change directory to /INSTALLDIR/altia/bin again and simply execute: altia

    If you get a "No Authorization" dialogue, edit the ../license/codewords file and confirm that it contains a line like:

    ServerName HOSTNAME

    where HOSTNAME is the name of the machine that is running licserver. HOSTNAME must be the machines logical name as returned by the hostname command or its network address in the form AAA.BBB.CCC.DDD. The ServerName line must be in all codewords files on all machines that will execute Altia products. This includes the codewords file on the machine designated as the License Server.

    After you have successfully executed altia without encountering the "No Authorization" dialogue, quit from it. This should also terminate the licserver program running in the other shell prompt window. If you would like to restart the License Server and have it run until the system is halted, repeat the licserver command previously used, but add -a & to the end of the command. This will keep the program running in background until the system is halted. When the system reboots after a halt, you will need to repeat the command to restart the License Server. Or, you can add the command to one of the boot scripts so it is executed automatically on each reboot. See your System Administrator or System Administration Manual for details.

    If you prefer to have the License Server started from the inetd daemon, continue to Step Four.

    Step Four - Optionally Configure the inetd Daemon to start the License Server

    After Step Three is successful, you should be able to rely on the inetd daemon for starting the License Server if the altiastr entry in the /etc/inetd.conf file is correctly edited. In addition, you must restart the inetd daemon after any changes to /etc/inetd.conf. Directions for editing /etc/inetd.conf and restarting the daemon on various types of systems is described earlier under "Manual Super-user Installation of License Server".