[CONC-171] F5 load balancer tcp ip check Created: 2016-04-07 Updated: 2016-04-10 |
|
| Status: | Open |
| Project: | MariaDB Connector/C |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major |
| Reporter: | Aysha Pervez | Assignee: | Georg Richter |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Dev |
||
| Description |
|
Hi, We are deploying F5 load balancer for tcp monitoring and have come across the below issue. F5 load balancer opens a socket connection, to the port on the host which is being load balanced (in this case, it’s port 3306 on each of the mariadb hosts. To open a tcp socket, it needs to complete a tcp handshake and close it gracefully. The tcp handshake process happens as follows: Packet 1: F5 uses random source port and sends a SYN to MariaDB host on port 3306 The tcp handshake is complete at this stage. Usually, application data flows on this open socket (like SQL query or http GET requests, etc). But in the case of health check, F5 will simply close this connection gracefully, which means: Packet 4: F5 sends a FIN ACK packet to Mariadb host on port 3306 However after few minutes MAriadb blocks the connections coming from the F5 load balancer IP. The following error is seen on F5 load balancer: [root@LDGSFSCS103:/S2-green-P:Active:Changes Pending] config # telnet 10.72.100.119 3306 How can we resolve this issue, how can we exempt Load balancer IPs from being blocked by Mariadb? |
| Comments |
| Comment by Aysha Pervez [ 2016-04-08 ] |
|
Hi. any update on this issue? regards |
| Comment by Georg Richter [ 2016-04-10 ] |
|
This behavior is documented. Max_connect_errors should protect MariaDB server against flood attacks. You can disable it with skip-name-resolve option or you should think about other possibilities to check if the server is alive (e.g. having a service connection for each server and check via mysql_ping if server is available). |