Hi,

On Fri, Jun 14, 2013 at 03:38:25PM +0530, Jayadevan M wrote:
> Hi,
> 
> I was trying to make HAProxy's mysql-check option work with the MySQL
> Servers on Windows. HAProxy is on linux, MySQL on windows.There are 2 MySQL
> servers - Server1 and Server2. It was not working (HAProxy was always
> marking the servers down). I tried changing one of the MySQL server entries
> point to MySQL on a linux box and it was working. Won't HAProxy's
> mysql-check work if the target MySQL is on windows? Output from a strace of
> HAProxy -
> 
> connect(5, {sa_family=AF_INET, sin_port=htons(3406),
> sin_addr=inet_addr("192.168.8.37")}, 16) = -1 EINPROGRESS (Operation now in
> progress)
> sendto(5, "\16\0\0\1\0\200\0\0\1haproxy\0\0\1\0\0\0\1", 23,
> MSG_DONTWAIT|MSG_NOSIGNAL, NULL, 0) = -1 EAGAIN (Resource temporarily
> unavailable)
> 
> connect(5, {sa_family=AF_INET, sin_port=htons(3306),
> sin_addr=inet_addr("192.168.2.27")}, 16) = -1 EINPROGRESS (Operation now in
> progress)
> sendto(5, "\16\0\0\1\0\200\0\0\1haproxy\0\0\1\0\0\0\1", 23,
> MSG_DONTWAIT|MSG_NOSIGNAL, NULL, 0) = 23
> 
> 192.168.2.27 is linux and 192.168.8.37 windows. I am able to connect to the
> MySQL server on windows, from mysql command line client on 192.168.2.27. So
> it is not a port blocked issue.

But from what I understand, it means that the windows server is not responding
to the connection request. I don't know if this is intentional or a mistake,
but the port is different on your windows config (3406). Could you check
with telnet from the haproxy host that the connection establishes on this
port :

  # telnet 192.168.8.37 3406

That way we'll be sure that the same parameters are used. Also, it would be nice
to take a tcpdump capture from the haproxy machine, maybe it will reveal why
this does not work.

Regards,
Willy


Reply via email to