1 2 Previous Next 17 Replies Latest reply: Mar 18, 2012 7:04 PM by shemsley RSS

Problems with installing latest version of Patrol products

shemsley

OS: AIX5.3

Performance Manager for Servers: 9.10.00

Common Installer: 7.5.62

 

Since the latest versions of these products have been introduced we've been having a 80% failure rate with installations (whether silent or GUI).  We see a variety of errors (most but not all are related to the Perfrom Data Collector).  Just wondering if anyone else is experiencing these issues?  It seems like such a high failure rate that I can imagine it's happening to others too tho BMC tell me we're the only ones who have raised issues for it.

 

I think many of the issues may relate to our environment and also with changes made to the way the installer works.  BMC have not been able to definitively identify fixes for the problems either.

 

I'll post the specific errors over the next day or two.

  • 2. Problems with installing latest version of Patrol products
    shemsley

    not sure how that post helps?  I have the install files.

  • 3. Problems with installing latest version of Patrol products
    specialbone

    How about the /tmp folder, how much space does it have on installs that succeed and ones that fail?  We've found that anything less than 1GB will cause the Perfmon install to bomb out on AIX.

     

    Rich

  • 4. Problems with installing latest version of Patrol products
    Tony Boman

    Specialbone is correct. The most usual cause for failures is lack of temporary diskspace. On AIX, the actual amount of temporary space the install program requires is just over 600MB. The install will check /tmp and the installing user's $HOME for the available space. If not found, the install of the Perform Data Collector will fail. The default space allocated to /tmp on AIX seems to be 512MB, which is just under the requirement.

     

    You can define the variable $IATEMPDIR to point to a different temporary filesystem if you do not have sufficient temporary space in /tmp or $HOME.

     

    I have also seen some failures where there is also insufficient space to install the whole product in the location chosen as the Patrol installation directory.

     

    These diskspace problems are not that well reported to the screen and are often only seen in the install logs.

     

    Tony

  • 5. Problems with installing latest version of Patrol products
    shemsley

    yes - found this out last year.  we were advised by BMC to have at least 2Gb free on /tmp during installations.

     

    the issue that i've been working with BMC on tonight (for the last 7 hours) relates to the 7.5.10 BPA installer using port 9998, which is hardcoded.  unfortunately we seem to have a lot of other processes that like to use this port too.

     

    this is the error message you might get during installation for this port conflict:

     

    -> ERROR: transport error 202: bind failed: The socket name is already in use. ["transport.c",L70]

    ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510) ["debugInit.c",L547]

    JDWP exit error JVMTI_ERROR_INTERNAL(113): No transports initialized

    Fatal error: JDWP No transports initialized, jvmtiError=JVMTI_ERROR_INTERNAL(113)

    Configuration successfully loaded

    "/opt/patrol/Patrol3//archives/preloadesg.tmp"

  • 6. Problems with installing latest version of Patrol products
    Tony Boman

    It might not help, but NetIQ AppManager Client uses port 9998 and that can be changed. You cannot change it on the Patrol Common Installer, but you can on NetIQ. Might be a viable workaround, although I admit a bit of a pain.

     

    Tony

  • 7. Problems with installing latest version of Patrol products
    shemsley

    i've had 3 different applications using this port so far :-)

     

    apparently this issue will be fixed in the next version of the BPA installer

  • 8. Problems with installing latest version of Patrol products
    shemsley

    we managed tonight to fix our port conflict error and run the installation - tho this managed fail too....these were the errors:

     

    Thu Feb 16 17:05:13 2012: ESS Error: ESS_Policy_InitSecurityPolicy() failed >-4<

    Thu Feb 16 17:05:13 2012: ESS Error: Security policy is either missing or unreadable: /etc/patrol.d/security_policy_v3.0/site.plc/common /etc/patrol.d/security_policy_v3.0/site.plc/server /etc/patrol.d/security_policy_v3.0/agent.plc/common /etc/patrol.d/security_policy_v3.0/agent.plc/server >-4<

    Thu Feb 16 17:05:13 2012: ESS Error: ESS_Policy_InitSecurityPolicy() failed >-4<

    Thu Feb 16 17:05:13 2012: ESS Error: Security policy is either missing or unreadable: /etc/patrol.d/security_policy_v3.0/site.plc/common /etc/patrol.d/security_policy_v3.0/site.plc/client /etc/patrol.d/security_policy_v3.0/agent.plc/common /etc/patrol.d/security_policy_v3.0/agent.plc/client >-4<

    Thu Feb 16 17:05:13 2012: ESS Error: ESS_Policy_InitSecurityPolicy() failed >-4<

    Thu Feb 16 17:05:13 2012: ESS Error: Security policy is either missing or unreadable: /etc/patrol.d/security_policy_v3.0/site.plc/common /etc/patrol.d/security_policy_v3.0/site.plc/encryptor /etc/patrol.d/security_policy_v3.0/agent.plc/common /etc/patrol.d/security_policy_v3.0/agent.plc/encryptor >-4<

    Thu Feb 16 17:05:13 2012: ESS Error: ESS_Policy_InitSecurityPolicy() failed >-4<

    Thu Feb 16 17:05:13 2012: ESS Error: Security policy is either missing or unreadable: /etc/patrol.d/security_policy_v3.0/site.plc/common /etc/patrol.d/security_policy_v3.0/site.plc/authenticator /etc/patrol.d/security_policy_v3.0/agent.plc/common /etc/patrol.d/security_policy_v3.0/agent.plc/authenticator >-4<

    Configuration successfully loaded "/opt/patrol/Patrol3//archives/preloadesg.tmp"

     

    we ran the rootscripts afterwards and all looked successful but when starting the agent get the error message:

     

    Thu Feb 16 19:50:19 2012: Unable to read PATROL conf file. Exiting...

  • 9. Problems with installing latest version of Patrol products
    Tony Boman

    A possible cause for that issue:

     

    ++++++++++++

    A potential reason that /etc/patrol.d isn't getting updated by agent_configure.sh was that the "Overwrite current security configuration (keys, certificates and trusted roots)" selection was set to "No" during the installation.

    Edit the ./Patrol3/agent_configure.sh script file and look for the following lines:

     

    CUSTOMER_SECURITY_LEVEL=0
    SECURITY_OVERWRITE=FALSE

     

    If SECURITY_OVERWRITE is set to FALSE, make a backup copy of the original agent_configure.sh file, change FALSE to TRUE, save the file, and execute as ROOT:  ./agent_configure.sh -d

     

    If SECURITY_OVERWRITE=TRUE already, execute as ROOT the ./agent_configure.sh -d script.


    ++++++++++++++++

     

    Tony

  • 10. Problems with installing latest version of Patrol products
    Tony Boman

    Further to my last note, when installing foir the first time or upgrading, always select Yes to the question "Overwrite current security configuration".

     

    Tony

  • 11. Re: Problems with installing latest version of Patrol products
    shemsley

    something has changed in the way the new installer works then as we've never had to set it this way previously.

     

    also - the failure is inconsistent - sometimes the install works without issue.

  • 12. Re: Problems with installing latest version of Patrol products
    shemsley

    So after getting through all the above here's another error we've being seeing a lot of.  Once the agent starts DCM stops collecting and spits out the following error:

     

    Wed Jun 29 12:26:10 2011 : 1309314370 : DcmCol.psl: Reason for switch to PSL: DCM version can not be determined.Could not load program /opt/patrol/Patrol3/AIX5.3.0.0-64/best1/7.5.10/bgs/bin/dcm:     Dependent module /usr/lib/libstdc++.a(libstdc++.so.6) could not be loaded. The module has an invalid magic number.

  • 13. Re: Problems with installing latest version of Patrol products
    Garland Smith

    The errors you are getting seem to indicate that there are problems with

    shared library dependencies in

     

    DCM/Perform Data Collector.  I would recommend that you open a case with BMC

    Technical Support.

     

    They should be able to help you determine the exact incompatibility.   There

    are a number of knowledge

     

    articles related to similar issues.

     

     

     

    Regards,

     

     

     

    Garland Smith

  • 14. Re: Problems with installing latest version of Patrol products
    Garland Smith

    The following PSL code might produce additional diagnostics.  However, the

    diagnostics

     

    you already have available may be enough.  If you decide to run this PSL,

    cut and paste

     

    into a PSL  Task on the Patrol Console and capture the resulting PSL Task

    output.  This

     

    code was written to emulate the logic in PKM for Unix to determine DCM

    version.  This

     

    code is fairly old, however, it should still be relevant (however I cannot

    guarantee that).

     

     

     

    #

     

    1. Start PSL Code

     

    #

     

    function SwitchToPSL(reasonText) {

     

        print(reasonText."\n");

     

        return;

     

    }

     

    function fileTest(testOp,path)

     

    {

     

        retVal = read(popen("OS","sh -c 'test ".testOp." ".path.";echo $?'"));

     

        if (!retVal)

     

        {

     

            return TRUE;

     

        }

     

        else

     

        {

     

            return FALSE;

     

        }

     

    }

     

     

     

     

     

    function DCMVercheck(DCMHome,op)

     

    {

     

        local ver,pos,len,major,minor,patch,patch_to_compare;

     

     

     

        if ( op == BEST1_HOME){

     

           pos = rindex(DCMHome,"/");

     

           len = length(DCMHome);

     

           ver = substr(DCMHome,pos+1,len-pos);

     

           patch_to_compare = 40;

     

        }

     

        else{

     

           ver = DCMHome;

     

           patch_to_compare = 41;

     

        }

     

     

     

        major = int(nthargf(ver,1,"."));

     

        minor = int(nthargf(ver,2,"."));

     

        patch = int(nthargf(ver,3,"."));

     

        if ( major < 7 ){

     

           return 0;

     

        }

     

        if ( major > 7 ){

     

           return 1;

     

        }

     

        if ( minor > 1 ){

     

           return 1;

     

        }

     

     

     

        if ( minor < 1){

     

           return 0;

     

        }

     

     

     

        if ( patch < patch_to_compare ){

     

           return 0;

     

        }

     

     

     

        return 1;

     

    }

     

     

     

    function getBest1Home()

     

    {

     

    1.   Possible return values:

     

    #

     

    1.   BEST1_HOME path or NULL

     

    #

     

        B1Home = trim(nthlinef(pconfig("GET", "/UNIX_OS/PERFORM_HOME"), 2), "

    \t\n");

     

     

     

        if ( B1Home != ""){

     

            if(!DCMVercheck(B1Home,BEST1_HOME)){

     

            B1Home = "";

     

        }

     

        }

     

     

     

        if (B1Home == "") {

     

            B1Home = getenv("BEST1_HOME");

     

        }

     

     

     

        if ( B1Home != ""){

     

            if(!DCMVercheck(B1Home,BEST1_HOME)){

     

               B1Home = "";

     

            }

     

        }

     

     

     

        if (B1Home == "") {

     

    #

     

    1.       Construct path to best1rc.sh script

     

    #

     

            pathToBest1rcSh = phome."/../best1rc.sh";

     

            if (fileTest("-f",pathToBest1rcSh))

     

            {

     

                B1Home = trim(read(popen("OS","sh -c '. ".pathToBest1rcSh.";echo

    $BEST1_HOME'")),"\n");

     

            }

     

        }

     

        return B1Home;

     

    }

     

     

     

    phome = get("/patrolHome");

     

     

     

    1. Get BEST1_HOME.

     

     

     

    Best1Home = getBest1Home();

     

    BEST1_HOME = 0;

     

    if (Best1Home) {

     

      if (trim(ntharg(file(Best1Home, 1), 7), " \t\n") == "DIR") {

     

        if (!DCMVercheck(Best1Home,BEST1_HOME)){

     

           pconfig("REPLACE","/PUK/DCMMonitor/wait_time","-1");

     

        }

     

        elsif ( trim(pconfig("GET","/PUK/DCMMonitor/wait_time"),"\n") == "-1"){

     

           pconfig("DELETE", "/PUK/DCMMonitor/wait_time");

     

        }

     

        pconfig("REPLACE", "/UNIX_OS/PERFORM_HOME", Best1Home);

     

        RunArgs = RunArgs." -b ".Best1Home;

     

      }

     

      else

     

      {

     

        reasonText1 = "$BEST1_HOME (".Best1Home.") is not a directory.\n";

     

        SwitchToPSL(reasonText1);

     

        exit;

     

      }

     

    }

     

    else

     

    {

     

        reasonText2 = "$BEST1_HOME cannot be determined.\n";

     

        SwitchToPSL(reasonText2);

     

        exit;

     

    }

     

    print("$BEST1_HOME=".Best1Home."\n");

     

     

     

    #defaultAccount=get("/AgentSetup/defaultAccount");

     

    #defaultaccountusername = nthargf(defaultAccount,1,"/"); 

     

    #encryptedpassword = nthargf(defaultAccount,2,"/");

     

    #print("/AgentSetup/defaultAccount:  ".defaultAccount."\n");

     

     

     

    print("id: ".system("id"));

     

     

     

    env_cmd = "env";

     

    output = execute("OS",env_cmd);

     

    print("Output of env:\n".output."\n\n");

     

     

     

    dcm_cmd = Best1Home."/bgs/bin/dcm -v";

     

     

     

    output = execute("OS",dcm_cmd);

     

    print("/UNIX_OS/PERFORM_HOME: ".trim(nthlinef(pconfig("GET",

    "/UNIX_OS/PERFORM_HOME"), 2), " \t\n")."\n");

     

    print("dcm_cmd: ".dcm_cmd."\n");

     

    print("Output of dcm -v:\n".output."\n");

     

    ver = nthargf(output,1);

     

    print("ver:     ".ver."\n");

     

    if ( !isnumber(trim(ver,"."))){

     

          

     

         reasonText3 = "DCM version can not be determined.\n";

     

         SwitchToPSL(reasonText3);

     

    }

     

    else

     

    {

     

        print("No problem getting version...");

     

    }

     

    print("\n\n+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    +++++++++++++++++++++++++\n");

     

    find_cmd = "find ".Best1Home." -exec ls -l {}
    ;";

     

    output = execute("OS",find_cmd);

     

    print(output."\n");

     

    #

     

    1. End PSL Code

     

     

1 2 Previous Next