How to test connectivity to Atrium CMDB using the cmdbdriver command

Version 1
    Share This:

    This document contains official content from the BMC Software Knowledge Base. It is automatically updated when the knowledge article is modified.


    PRODUCT:

    BMC Atrium Core - CMDB


    COMPONENT:

    BMC Atrium Core


    APPLIES TO:

    BMC Atrium Core CMDB 9.1.x or higher



    PROBLEM:

    In preparing to do a BMC Remedy upgrade the BMC Documentation requests to check that cmdbdriver can successfully connect to AR Server.

    However, when running glc after first launching cmdbdriver, the following error occurs:

    Command: glc 
    GET LIST CLASS 
    Namespace (): 
    CI Class Name For The Relationship 
    Namespace (): 
    Class name (): 
    Super Class Name 
    Namespace (): 
    Class name (): 
    Getting querying Characteristics for this class 
    Number of Characteristics (0): 
    Retrieve hidden classes? (F): 

    CMDBGetListClass results 
    ReturnCode: FATAL 
    Status List : 1 items 
    Status Struct : 
    Message type : ERROR 
    Message number : 161 
    Message: The session identifier in the control record is invalid

    2.)   When logging into cmdbdriver other errors can occur when running the glc test connection such as:

    Command: glc
    GET LIST CLASS
    Namespace ():
    CI Class Name For The Relationship
       Namespace ():
       Class name ():
    Super Class Name
       Namespace ():
       Class name ():
    Getting querying Characteristics for this class
       Number of Characteristics (0):
    Retrieve hidden classes? (F):
       CMDBGetListClass  results
    ReturnCode:  ERROR
    Status List : 1 items
    Status Struct :
       Message type : ERROR
       Message number :  90
    Message:  Cannot establish a network connection to the AR System server
       Appended:  localhost : RPC: Success


    CAUSE:

    Initial commands must be run; ports to AR Server must be open


    SOLUTION:

    In order to successfully connect to AR Server with cmdbdriver the following commands must first be
    run after running the program:

    - init
    - log
    - ssp

    After of these three commands are invoked, the glc command can be run with empty parameters and the
    full list of CMDB classes will return.  Here is an example connection:

    1. initialize
    Command: init
    INITIALIZATION
      
       CMDBInitialization  results
    ReturnCode:  OK
    Status List : 0 items
      
    2. Log to server
    Command: log
    Control record:
       Authentication string () :
       User name () : Demo
       Password () : ****
       Locale[.charSet] () :
       TimeZone () :
       Server () : localhost
     
    3. Set AR server TCP port
    Command: ssp
    SET SERVER PORT
    The TCP port number of the server (0): 2000
    The RPC port number of the server (0):
      
       CMDBSetServerPort  results
    ReturnCode:  OK
    Status List : 0 items
      
    4. Run glc command. If it return classes, cmdbdriver connect to AR/CMDB server successfully.
      
    Command: glc
    GET LIST CLASS
    Namespace ():
    CI Class Name For The Relationship
       Namespace ():
       Class name ():
    Super Class Name
       Namespace ():
       Class name ():
    Getting querying Characteristics for this class
       Number of Characteristics (0):
    Retrieve hidden classes? (F):
      
       CMDBGetListClass  results
    Number of classes:  145
    Class Name Id:
      Namespace  :  BMC.CORE
      Class Name :  BMC_BaseElement
    Class Name Id:
      Namespace  :  BMC.CORE.CONFIG
      Class Name :  BMC_ConfigBaseElement
    ...
    ...
    (All CMDB classes are listed successfully)

    If there is still a failure when attempting to run glc, the error may be this one:

    Status Struct :
       Message type : ERROR
       Message number :  90
    Message:  Cannot establish a network connection to the AR System server
       Appended:  localhost : RPC: Success

    This error indicates that cmdbdriver cannot reach the AR Server.  The port specified for the ssp command may be invalid.
    To find the port, check the ar.cfg file for the following parameters.  For instance, if the AR Server is expected to be run on
    port 2000, the ar.cfg may have the following parameters defined:

    Register-With-Portmapper: F
    TCD-Specific-Port: 2000

    If, however, the above parameters for ar.cfg are set to:

    Register-With-Portmapper: T
    TCD-Specific-Port: 0

    This means that AR Server is having the operating system decide which port is being used for AR Server so the port will
    be unknown.  In which case, try not to use the ssp command above.  Otherwise, set the AR Server to a specific port
    by changing the parameters to a desired port, such as:

    Register-With-Portmapper: F
    TCD-Specific-Port: 2000

    It can also be set to the following for bare minimum change to the ar.cfg configuration.

    Register-With-Portmapper: T
    TCD-Specific-Port: 2000

    The changes can be done from ar.cfg or within AR Centralized Config.  The AR Server will need to be restarted.

    After the restart, verify with a utility such as netstat -a, telnet, and/or nmap that the desired port (2000 in this example)
    is listening.

    Another issue that can block a connection to AR Server from cmdbdriver is if the cmdbdriver command is being run
    on a secondary CMDB engine that is not the active CMDB server.  Atrium CMDB only runs on one AR Server at a time
    and only fails over to another AR Server if the Rank 1 AR Server is no longer running.  To locate which CMDB server is
    active, use the AR System Server Group Operation Ranking form to locate the server that is listed Rank 1 for the
    CMDB Engine.

     


    Article Number:

    000171399


    Article Type:

    Solutions to a Product Problem



      Looking for additional information?    Search BMC Support  or  Browse Knowledge Articles