Novell Home

Inventory Basics

Novell Cool Solutions: Feature
By Gary Busby

Digg This - Slashdot This

Posted: 17 Nov 1999
 

Hardware and software inventory management is one of the prime reasons people buy ZENworks. Companies tend to have a lot of capital invested in these assets, and expect the IT manager to keep careful track of it. But it's a complex task to set up everything properly, and it generates quite a few questions when people first begin to use it. We thought it would be a good addition to our Basics section if we had an expert shine some light on the subject. Here's an excellent piece from the ZENworksmaster himself, Gary Busby. Gary is a member of our ZENworks Cool Solutions Board of Review, and is a frequent contributor of content to our site. He is the creator of the outstanding zenworksMASTER.com website, where you can find lots more goodies like this.

Pre-Installation Checklist

  1. Ensure you have sufficient disk space as noted in the documentation.
  2. Ensure long filenames are loaded on SYS and one other volume that will contain Inventory files.
  3. Ensure the Public object is a trustee of the PUBLIC directory.
  4. Unload any server Anti-Virus software during the installation.
  5. Ensure workstations are properly registered and imported.
  6. Ensure TCP/IP is installed and running with a valid IP address (see below for more details).

TCP/IP services is a requirement on the server to ensure the inventory process works properly. Don't confuse migrating to a pure IP environment (via NetWare 5) with having IP services running on your server. IP services is simply just running TCPIP.NLM. For example, on a v4.11 server, TCPIP.NLM and associated files can be obtained by either of these two methods:

  1. TCPN05.EXE and TCPN06.EXE (requires SP6). These will bring you up to TCPIP.NLM v4.21.

    OR

  2. Service Pack 7a. This contains v5.21a.

Once you've obtained TCPIP.NLM and its associated files, here is an example of how it is loaded in the AUTOEXEC.NCF. This example uses Ethernet and a Compaq NIC. Adjust according to your topology and NIC driver.

LOAD TCPIP
LOAD CPQETHER SLOT=5 FRAME=ETHERNET_II NAME=CPQETHER_1_EII
BIND IP CPQETHER_1_EII ADDR=xxx.xxx.xxx.xxx MASK=xxx.xxx.xxx.xxx GATE=xxx.xxx.xxx.xxx

Note: IP can only bind to ETHERNET_II in an Ethernet environment or to TOKENRING_SNAP in a Token Ring environment.

Before you reboot the server for these changes to take effect, check the SYS:ETC\HOSTS file and ensure your server IP address and name, as well as, the loopback address (127.0.0.1) are present. Inventory will not work properly without it.

After you reboot the server, you can verify IP is loaded and running by typing CONFIG at the server console. If you see TCP/IP bound to your NIC with the IP address, you are good to go.

Inventory Process

Before you install ZENworks 2.0, let's go over how the basic Inventory process works:

  1. At the workstation, the ZEN 2 client has a new inventory dll that tells the client to send the inventory data predominantly to the Sybase database with a small portion going to NDS.
    (Note: ZENworks v1.1 sent ALL data to NDS.)
  2. When an inventory policy is in effect, the workstation is scanned with winscan.exe (9x) or ntscan32.exe (NT). Both of these files are located in sys\public\zenworks.
  3. When the scanning has been completed, inventory data is sent from the workstation to the server designated as the Gatherer/Storer via IP or IPX. The Gatherer translates the information into a format that can be understood by the Sybase database server and then passes it on to the Storer. The Storer ensures the database is up then passes the information on to the Sybase database server via IP only (this is why IP is so important). The Storer stores the files temporarily in vol\zenworks\strdir (where vol is the volume you specify during the installation). You can actually watch the files pass through here very quickly. You can also watch the Storer screen on the server as it will notify you when a workstation has been successfully scanned.
    Note: The Gatherer/Storer server and the Sybase database server can be the same server.

Setting up a Gatherer/Storer only

During the installation of ZENworks 2.0, you have the option to install the Inventory portions as follows (via a Custom setup):

  • One server as both the Gatherer/Storer and Sybase database server.
  • One server as the Sybase database server and one or more servers as the Gatherer/Storer server(s).

However, the installation is lacking the granularity of one other needed installation. What if you've already installed a Sybase database server, then at a later date you want to install other servers as Gatherer/Storer servers and point to the existing Sybase database server? Currently, there is no option to point to an existing Sybase database server. And, if you don't choose to install the Sybase database, the other servers will not be configured as a Gatherer/Storer server and the necessary files and automatic configuration will not occur.

Here's how you can setup a server as a Gatherer/Storer only:

  1. Install ZENworks 2.0 to the server as if it were going to be a Sybase database server (via a Custom setup). This ensures all the necessary files, application objects and ncf files get created.
  2. After the installation, you can delete the vol1\zenworks\database directory (where vol is the volume you chose to install it to) as it is no longer needed.
    Important: DO NOT delete the vol\zenworks\strdir directory. This is needed for the Storer process.
  3. In NWAdmin32, you will need to modify the "ZENworks Reporting -- ZEN 2" application object's MACROS tab to point to the correct database server.
  4. You will need to modify the sys\public\zenworks\java\storer.ncf file with the correct database server's IP address. This is specified after the --dbloc switch.
  5. Modify the AUTOEXEC.NCF. You only need the following entries for a Gatherer/Storer. All other ZENworks references can be removed.

    SEARCH ADD SYS:\JAVA\BIN
    SEARCH ADD SYS:\JAVA\NWGFX
    SEARCH ADD SYS:\PUBLIC\ZENWORKS\JAVA
    LOAD JAVA.NLM
    SYS:\SYSTEM\GATHERER.NCF
    SYS:\PUBLIC\ZENWORKS\JAVA\MASTER.NCF
    SYS:\PUBLIC\ZENWORKS\JAVA\STORER.NCF

Other Tips of Interest

  • Ensure you and any other Administrator run the "ZENworks Reporting -- ZEN 2" application object. This installs the necessary ODBC, JDBC and Java Runtime Environment files needed to view the Inventory reports (and Application Distribution Success/Failure reports).

  • Ensure you and any other Administrator has RF rights to the zeninv.db file on the Sybase database server.

  • There is only one way to delete inventory data from the Sybase database: when you delete a workstation object. If the workstation object is still associated with the correct and valid inventory policy, it will delete its inventory data along with it automatically. If it is not, you will be prompted YES or NO to specify a database server. Be sure to choose YES. If you choose NO, the inventory data can never be deleted from the database. And, make sure the database server is up when you delete workstation objects.

  • For troubleshooting, there are two log files of interest:
    1. sys\etc\zeninv.log (shows when zeninv.nlm was loaded and unloaded)
    2. sys\etc\zendel.log (tracks all deletions of inventory information)

  • Here's how to properly unload all those ZENworks nlm's and Java applets (create an ncf file to automate it):

    JAVA --KILLALL (needed on both Gatherer/Storer and Sybase server)

    UNLOAD TRAPMON (needed only on Sybase server)

    UNLOAD SNMPLOG (needed only on Sybase server)

    UNLOAD ZENINV (needed only on Gatherer/Storer)

    UNLOAD OSAGENT (needed only on Sybase server)

    UNLOAD ORBCMD (needed only on Sybase server)

    UNLOAD JAVA (needed on both Gatherer/Storer and Sybase server)

    UNLOAD DBSRV6 (needed only on Sybase server)

    UNLOAD DBEXTF6 (needed only on Sybase server)

    Note: If you use other Java applets beside ZEN, use JAVA --SHOW to view the process number of the ZEN applets (Alarm Manager, Master, Loader). Then use JAVA --KILLprocessID (where processID is the process number listed for each process at the JAVA --SHOW screen) to unload each ZEN applet respectively.

  • Once you've inventoried all your workstations to the new Sybase database, you can remove all the ZENworks v1.1 data in NDS. Use the REMINV1X.EXE program.

  • Be sure to always use the "Server IP Address" in the Inventory policy whenever it is an option. There are known issues with using DN or DNS.

Recommended Reading

  • In the ZENworks online documentation, there are two sections of particular interest.
    • Installation and Maintenance: Inventory Deployment Guide
    • Workstation Management: Workstation Inventory


Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© 2014 Novell