Bug #26606 MySQL agent unable to report to service manager on Windows after installation
Submitted: 23 Feb 2007 19:22 Modified: 23 Feb 2007 20:38
Reporter: Aimee Lin Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Enterprise Monitor: Documentation Severity:S3 (Non-critical)
Version:1.1.0.4810 OS:Any (All)
Assigned to: Peter Lavin CPU Architecture:Any

[23 Feb 2007 19:22] Aimee Lin
Description:
Background info:

Advisory Version: Monitoring and Advisory Service Beta 1.1 (build 4810)
Service Manager & Dashboard installed on Windows XP service pack 2
MySQL agent installed on the database server with Solaris 10 sparc

After installing MySQL agent on the database server, it was not able to connect to the service manager hosted on the Service Manager installed on a Windows XP machine as it encounters "2007-02-23 13:52:12: (critical) connection to merlin-server 'http://agent:test@172.11.1.1:18080/merlin/heartbeat'; failed: connect() timed out!" error.

This is due to the firewall setting in Windows XP machine blocking the mysql agent to access the service agent.

Work around:
Disable windows firewall from start > control panel >  Windows firewall > general and restart mysql agent to enable the agent to connect to the service manager.

The other potenial workaround is to only open port 18080 on the windows machine from start > control panel >  Windows firewall > exceptions > Add ports

How to repeat:
1. installed service manager on windows xp box with windows firewall turned on
2. installed mysql agent on a database server other then the windows xp box hosted the service mananger.
3. start mysql agent on the database server.

Suggested fix:
it would be very helpful to put a note in the installation doc to identify the workarounds for this connection issue.
[23 Feb 2007 19:50] Mark Leith
Thanks for you bug report - I'm setting this as a documentation issue, so that we can have more details about the firewall requirements put in to the documentation.

Best regards

Mark
[23 Feb 2007 20:38] Peter Lavin
Documented in commit 726.

Modified: install.xml
===================================================================
--- install.xml	2007-02-23 00:34:12 UTC (rev 725)
+++ install.xml	2007-02-23 20:32:57 UTC (rev 726)
@@ -1375,6 +1375,15 @@
         Simply select <literal>Start MySQL Network Service Agent
         Service</literal>.
       </para>
+      
+      <warning>
+        <para>
+          To report its findings, the agent needs to be able to connect to the 
+          Dashboard through the port specified during installation. The default value for this port
+          is <literal>18080</literal>; ensure that this port is not blocked. If you need help 
+          troubleshooting the agent installation see, <xref linkend="troubleshooting-agent-start"/>.
+        </para>
+      </warning>
 
       <para>
         Alternately, you can start the agent from the command line by
@@ -1703,6 +1712,15 @@
         to start this agent on reboot, create a system initialization
         script appropriate to your operating system.
       </para>
+      
+      <warning>
+        <para>
+          To report its findings, the agent needs to be able to connect to the 
+          Dashboard through the port specified during installation. The default value for this port
+          is <literal>18080</literal>; ensure that this port is not blocked. If you need help 
+          troubleshooting the agent installation see, <xref linkend="troubleshooting-agent-start"/>.
+        </para>
+      </warning>
 
     </section>
 
@@ -2441,7 +2459,7 @@
         specified in this file is not blocked on the machine hosting the
         &merlin_server;.
       </para>
-
+      
       <note>
         <para>
           The agent will run even if the monitored server is down. To
@@ -2494,10 +2512,26 @@
         connect could also indicate that the port is blocked on the
         machine hosting the &merlin_server;.
       </para>
+      
+      <para>
+        To check if a blocked port is the problem, temporarily bring down your
+        firewall. If the agent is then able to connect, open up the port specified during
+        installation and restart the agent.
+      </para>      
 
       <para>
         You can also check the agent error log file to help determine
-        any problems. For the location of this file see,
+        any problems. An error such as:
+      </para>
+      
+      <programlisting>
+(critical) connection to  merlin-server 'http://agent:test@172.11.1.1:18080/merlin/heartbeat'; failed:
+connect() timed out!" error.
+      </programlisting>
+      
+      <para>
+        might indicate a blocked port.
+        For the location of the agent error log file see,
         <xref linkend="agent-log-and-pid-files"/>.
       </para>