TrueSight Server Automation (TSSA): Appserver resolves incorrect IP Address for server.

Version 10
    Share This:

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


    PRODUCT:

    BladeLogic Server Automation Suite


    COMPONENT:

    BladeLogic Agent and NSH


    APPLIES TO:

    All BSA/TSSA versions



    PROBLEM:

    The BladeLogic appserver resolves the incorrect IP address for a target system event though resolving the same hostname from the OS shows the correct IP address. Restarting the appserver service results in the appserver resolving the correct IP (until the DNS changes again).

    This problem may manifest itself in other, less obvious ways.

    For example:

    Scenario 1) The wrong IP address is resolved and jobs run against the target continue to run because the IP address is used by another system with the RSCD on it. If the IP address is not in use or the target does not have a RSCD on it, then the job will fail because the appserver cannot connect to the target.

    Scenario 2) After assign a new IP address to target when browsing or executing Verify action from TSSA console takes long time and then receive a pop up message showing below error

    Failed to connect to Server_name:4750

    In application server console.log, there is an stack trace error like below

    Unable to connect to any of the resolved addresses [[Server_name/old_IP_address]] for hostName [Server_name]
    com.bladelogic.om.infra.mfw.util.BlException: Unable to connect to any of the resolved addresses [[Server_name/old_IP_address]] for hostName [Server_name]
        at com.bladelogic.om.infra.app.service.agentservice.XmlRpcBLHttpTransport.connectToCorrectAddress(XmlRpcBLHttpTransport.java:361)
        at com.bladelogic.om.infra.app.service.agentservice.XmlRpcBLHttpTransport.newSocket(XmlRpcBLHttpTransport.java:291)
        at com.bladelogic.om.infra.app.service.agentservice.XmlRpcBLHttpTransport.connect(XmlRpcBLHttpTransport.java:101)
        at com.bladelogic.om.infra.app.service.agentservice.AgentConnectionImpl.<init>(AgentConnectionImpl.java:133)
        at com.bladelogic.om.infra.app.service.agentservice.AgentConnectionPool.createConnection(AgentConnectionPool.java:109)
        at com.bladelogic.om.infra.app.service.agentservice.AgentConnectionPool.getConnection(AgentConnectionPool.java:162)
        at com.bladelogic.om.infra.app.service.agentservice.AgentConnectionServiceImpl.getConnection(AgentConnectionServiceImpl.java:40)
        at com.bladelogic.om.infra.app.service.agentservice.AgentMethodInvocationProvider.executeRequest(AgentMethodInvocationProvider.java:72)
        at com.bladelogic.om.infra.app.service.agentservice.AgentMethodInvocationProvider.invoke(AgentMethodInvocationProvider.java:50)
        at com.bladelogic.om.infra.app.service.routing.RoutingServiceImpl.invokeMethodLocally(RoutingServiceImpl.java:267)
        at com.bladelogic.om.infra.app.service.routing.RoutingServiceImpl.invoke(RoutingServiceImpl.java:210)
        at com.bladelogic.om.infra.app.service.agentservice.AgentRequestManager.invoke(AgentRequestManager.java:157)
        at com.sun.proxy.$Proxy41.getAsset(Unknown Source)
        at com.bladelogic.om.infra.daal.DAALService.getAsset(DAALService.java:178)
        at com.bladelogic.om.infra.model.server.ServerImpl.updatePropertyValuesFromAgent(ServerImpl.java:1539)
        at com.bladelogic.om.infra.model.server.ServerImpl.updatePropertyValuesFromAgent(ServerImpl.java:1510) 

    Scenario 3 After changing IP address in application server it fails to start

    AppServerLauncher.log:

      

    Caused by: com.bladelogic.om.infra.mfw.util.BlException: Unable to connect to any of the resolved addresses [[<blappserver_hostname>/<old_IP_address>]] for hostName [<blappserver_hostname>]       
            at com.bladelogic.om.infra.app.service.manage.ManagementServiceImpl.getAppServerName(ManagementServiceImpl.java:209)
            at com.bladelogic.om.infra.app.service.manage.ManagementServiceImpl.createJMXConnectorServer(ManagementServiceImpl.java:135)
            at com.bladelogic.om.infra.app.service.manage.ManagementServiceImpl.start(ManagementServiceImpl.java:95)

     


    SOLUTION:

     

    > The DNS TTL (cache) settings for the JVM the appserver runs under are the default: cache successful name resolutions as long as the appserver process is running.

    > These settings can be adjusted. In the <appserver install>/br/java/lib/security/java.security (Linux)  or   <appserver install>\jre\lib\security\java.security (Windows) alter the

      
       
    #networkaddress.cache.ttl=-1
    to   
    networkaddress.cache.ttl=600
       
    It will set the successful name resolution cache to refresh every    10 minutes.  
     
    > The value is specified as an integer to indicate the number of seconds to cache the failure for unsuccessful lookups. Here a value of    0 indicates "never cache". A value of    -1 indicates "cache forever".   
     
    The appserver service must be restarted after changing this file to pickup the change.  
     
     
    Scenario 3:  
    Incorrect entries for local host in /etc/hosts file, update to new ip address 

     


    Article Number:

    000085945


    Article Type:

    Solutions to a Product Problem



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