Release Automation

Nolio Official KB: Troubleshooting connectivity between NAC and NES

  • 1.  Nolio Official KB: Troubleshooting connectivity between NAC and NES

    Posted Dec 18, 2013 04:37 PM
    The following steps will assist you with troubleshooting connectivity between NAC and NES during regular activities or when adding new NES into your Nolio configuration. In this document we will use the following terminology:
     
    NAC - Nolio Automation Center
     
    NES - Nolio Execution Server
     
    All files and folders paths are relative to the NAC and NES installation root directory
     
    Troubleshooting steps:
     
    1.  Verify NAC and NES version (Check in conf/version)  - they must be identical.
     
    2.  Find NES HTTP and HTTPS listening ports:
     
    a. In NES open conf/server.xml
    b. Locate the following lines: Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"connectionTimeout="20000"  redirectPort="8443". 
    The first port will be use for HTTP and the second for HTTPS
     
    3.  From NES, make sure you can run telnet to those ports locally(e.g. from command line run telnet localhost 8080 or telnet localhost 8443).
     
    a. If you can't connect to those ports check that you don't have any firewall that blocking access to those ports
    b. If no firewall configured on the system verify you using the right ports (See step 2.b)
    c. You can double check if those are the NES HTTP and HTTPS ports (and not being used by another software running on the same platform) by stopping the Nolio server service and try telnet again , this time you should fail connecting to the ports.
     
    4.  Try to telnet NES HTTP and HTTPS ports from the NAC system , make sure to test both using IP and Hostname/FQDN. 
     
    a. If you can telnet only by using IP address this mean you don't have correct name resolution, you can fix the name resolution by adding record to your DNS or to local hosts file.
    b. If you can't telnet both using IP and Hostname/FQDN make sure you don't have any firewall rules blocking your access.
     
    5.  Connect to Nolio UI and select Administration >>  Agents Management.
     
    a. If the NES already configured, select the NES and press on the edit button.
    i. If you specify name in hostname verify you have correct name resolution by trying to ping it.
    ii. Verify the selected port and protocol are matching the values store in the NES server.xml.
    b. If you are adding new execution server. 
    i. Verify the name you are putting in the hostname has correct resolution
    ii. Verify the port and protocol are matching to the values store in the NES server.xml
     
    6.  Open nolio_dm_all.log that locate in NAC logs folder and search for the following line:new ExecutionServerServices for server [NES name or IP]
     
    a. Wait 60 seconds and check the result of adding the new NES. You might see one of the following errors: 
     

    "could not access remote execution server [NES Name:port].Could not access HTTP invoker remote service at [HTTP://[NES Name:port]/execution/ExecutionEngine]; nested exception is java.net.UnknownHostException: [NES Name]"
    Meaning: You don't have correct resolution for the NES name you specified, repeat step 4.a

     
    "could not access remote execution server [NES name:port].Could not connect to HTTP invoker remote service at [HTTP://[NES name:port]/execution/ExecutionEngine]; nested exception is java.net.ConnectException: Connection refused: connect"
    Meaning: The NES is not listening on the port and protocol you specify or the port is blocked, repeat steps 2,3,4
     
    "could not access remote execution server [NES name:port].Invocation of method [public abstract java.util.Set com.nolio.platform.server.dataservices.api.execution.ExecutionEngine.getConnectedSuperNodesDetails()] failed in HTTP invoker remote service at [HTTP://NES name:port/execution/ExecutionEngine]; nested exception is java.lang.NoSuchMethodException" 
    Meaning: The NAC is trying to connect to NES running a different version - you need to run the NES with the same version the NAC is running
     
    "CheckServersConnectivity: could not access remote execution server [NES name:port].Could not access HTTP invoker remote service at [HTTPS://NES name:port/execution/ExecutionEngine]; nested exception is javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake" 
    Meaning: You specified to use the configured HTTP port with HTTPS protocol , you need to verify ports and protocols according to step 2
     
    "could not access remote execution server [NES name:Port].Could not access HTTP invoker remote service at [HTTP://NES name:port/execution/ExecutionEngine]; nested exception is org.apache.commons.httpclient.NoHttpResponseException: The server [NES name] failed to respond"
    Meaning: You specified to use the configured HTTPS port with HTTP protocol , you need to verify ports and protocols according to step 2
     
    "DispatcherTask:: succeed to access remote execution server [NES name]"
    Meaning: The NAC managed to connect to the NES server
     
    b. Return to Nolio UI >>  Administration >>  Agent Management , refresh the list of agents  and verify you can see the new NES in reachable status. 
    c. Switch to  Administration >> Test Agent Management, refresh the list of agents and verify you can see the new NES in reachable status. 
     
    7. Finally, if none of these steps help, please stop the Nolio service (make sure no processes and releases are running at this time!), delete the "persistency" folder from the Nolio installation directory, and start the service once more. 
     
    8.  If you still encounter issues adding or connecting the NES please open a support ticket and attach to it the following files: 
     
    a. Logs folder from NES and NAC. 
    b. Server.xml from NES.