Can haproxy sync configuration to another instance for configuration updates?
Hi,all I want to deploy keepalived + haproxy to supply one high availability cluster with master-slave mode. But I am anxious about whether the configuration updates made in the master node can sync to the slave. Any suggestiones will be appreciated. Looking forward to your reply. Thank you!
Re: Application Persistence with WebSockets
Hi Ryan, On Mon, Sep 15, 2014 at 12:11:39PM -0500, Ryan Brock wrote: Willy, I tested these changes in my environment and it all works. So you may move forward with these changes. Great, thanks for the feedback! I really appreciate the help. You're welcome :-) Best regards, Willy
Re: Access backend vía proxy
Hi all, Sorry for the last email. I sent it empty. I would like to know it is possible to configure haproxy to forward the requests to a backend via proxy? Something like the following: backend api_backend *set_proxy http:proxy1:8080* server server1server1:8080 Using curl, it should be like the following curl -x proxy1:8080 http://server1:8080 I would really appreciate any help about this issue. Thank you in advance. Javier Sigler On Tue, Sep 16, 2014 at 11:22 AM, Javier Sigler javiersig...@javiersigler.com wrote: Hi all, Is is possible
Access backend vía proxy
Hi all, Is is possible
MariaDB 5.5.39 + HAProxy v1.5.3
Hello list, This is my first post. I checked a bit online to find a solution to my problem, but it seems that not many people are having the same issues. I use a very simple loadbalancing between two synchronized (Galera) MariaDB nodes. Here is the HAProxy config file : SNIP --- global log 127.0.0.1 local0 notice user haproxy group haproxy defaults log global retries 3 option dontlognull option redispatch maxconn1024 timeout connect 5000 timeout server 5 timeout client 5 listen mysql-cluster bind 127.0.0.1:3306 mode tcp option tcpka option mysql-check user haproxy_check balance roundrobin server db-1 db-1.network.hoggins.fr:3306 check 500 server db-2 db-2.network.hoggins.fr:3306 check 500 backup listen httpstats bind 127.0.0.1:8080 mode http stats enable stats uri / --- When I connect to HAProxy as a MySQL host, and perform a simple request, everything is fine : MariaDB [(none)] show variables like '%wsrep_node_name%'; +-+---+ | Variable_name | Value | +-+---+ | wsrep_node_name | db1 | +-+---+ 1 row in set (0.00 sec) If I issue the same command after a few seconds, here is what I get : MariaDB [(none)] show variables like '%wsrep_node_name%'; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id:743181 Current database: *** NONE *** +-+---+ | Variable_name | Value | +-+---+ | wsrep_node_name | db1 | +-+---+ 1 row in set (0.00 sec) Does it have something to do with my MariaDB setup ? Connecting directly to any of my nodes is normal, I can stay connected as long as I wish without having the MySQL server has gone away message. If someone has a lead to a solution... Thanks in advance ! signature.asc Description: OpenPGP digital signature
MariaDB 5.5.39 + HAProxy v1.5.3
Hello list, This is my first post. I checked a bit online to find a solution to my problem, but it seems that not many people are having the same issues. I use a very simple loadbalancing between two synchronized (Galera) MariaDB nodes. Here is the HAProxy config file : SNIP --- global log 127.0.0.1 local0 notice user haproxy group haproxy defaults log global retries 3 option dontlognull option redispatch maxconn1024 timeout connect 5000 timeout server 5 timeout client 5 listen mysql-cluster bind 127.0.0.1:3306 mode tcp option tcpka option mysql-check user haproxy_check balance roundrobin server db-1 db-1.network.hoggins.fr:3306 check server db-2 db-2.network.hoggins.fr:3306 check listen httpstats bind 127.0.0.1:8080 mode http stats enable stats uri / --- When I connect to HAProxy as a MySQL host, and perform a simple request, everything is fine : MariaDB [(none)] show variables like '%wsrep_node_name%'; +-+---+ | Variable_name | Value | +-+---+ | wsrep_node_name | db1 | +-+---+ 1 row in set (0.00 sec) If I issue the same command after a few seconds, here is what I get : MariaDB [(none)] show variables like '%wsrep_node_name%'; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id:743181 Current database: *** NONE *** +-+---+ | Variable_name | Value | +-+---+ | wsrep_node_name | db1 | +-+---+ 1 row in set (0.00 sec) Does it have something to do with my MariaDB setup ? Connecting directly to any of my nodes is normal, I can stay connected as long as I wish without having the MySQL server has gone away message. If someone has a lead to a solution... Thanks in advance ! signature.asc Description: OpenPGP digital signature
Re: MariaDB 5.5.39 + HAProxy v1.5.3
Wow. First post, first mistake, I hit the button twice after having corrected. Sorry, *this* is the current config I have problems with. Le 16/09/2014 15:48, Hoggins! a écrit : Hello list, This is my first post. I checked a bit online to find a solution to my problem, but it seems that not many people are having the same issues. I use a very simple loadbalancing between two synchronized (Galera) MariaDB nodes. Here is the HAProxy config file : SNIP --- global log 127.0.0.1 local0 notice user haproxy group haproxy defaults log global retries 3 option dontlognull option redispatch maxconn1024 timeout connect 5000 timeout server 5 timeout client 5 listen mysql-cluster bind 127.0.0.1:3306 mode tcp option tcpka option mysql-check user haproxy_check balance roundrobin server db-1 db-1.network.hoggins.fr:3306 check server db-2 db-2.network.hoggins.fr:3306 check listen httpstats bind 127.0.0.1:8080 mode http stats enable stats uri / --- When I connect to HAProxy as a MySQL host, and perform a simple request, everything is fine : MariaDB [(none)] show variables like '%wsrep_node_name%'; +-+---+ | Variable_name | Value | +-+---+ | wsrep_node_name | db1 | +-+---+ 1 row in set (0.00 sec) If I issue the same command after a few seconds, here is what I get : MariaDB [(none)] show variables like '%wsrep_node_name%'; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id:743181 Current database: *** NONE *** +-+---+ | Variable_name | Value | +-+---+ | wsrep_node_name | db1 | +-+---+ 1 row in set (0.00 sec) Does it have something to do with my MariaDB setup ? Connecting directly to any of my nodes is normal, I can stay connected as long as I wish without having the MySQL server has gone away message. If someone has a lead to a solution... Thanks in advance ! signature.asc Description: OpenPGP digital signature
Re: MariaDB 5.5.39 + HAProxy v1.5.3
On Tue, Sep 16, 2014 at 3:52 PM, Hoggins! fucks...@wheres5.com wrote: Wow. First post, first mistake, I hit the button twice after having corrected. Sorry, *this* is the current config I have problems with. Le 16/09/2014 15:48, Hoggins! a écrit : Hello list, This is my first post. I checked a bit online to find a solution to my problem, but it seems that not many people are having the same issues. I use a very simple loadbalancing between two synchronized (Galera) MariaDB nodes. Here is the HAProxy config file : SNIP --- global log 127.0.0.1 local0 notice user haproxy group haproxy defaults log global retries 3 option dontlognull option redispatch maxconn1024 timeout connect 5000 timeout server 5 timeout client 5 listen mysql-cluster bind 127.0.0.1:3306 mode tcp option tcpka option mysql-check user haproxy_check balance roundrobin server db-1 db-1.network.hoggins.fr:3306 check server db-2 db-2.network.hoggins.fr:3306 check listen httpstats bind 127.0.0.1:8080 mode http stats enable stats uri / --- When I connect to HAProxy as a MySQL host, and perform a simple request, everything is fine : MariaDB [(none)] show variables like '%wsrep_node_name%'; +-+---+ | Variable_name | Value | +-+---+ | wsrep_node_name | db1 | +-+---+ 1 row in set (0.00 sec) If I issue the same command after a few seconds, here is what I get : MariaDB [(none)] show variables like '%wsrep_node_name%'; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id:743181 Current database: *** NONE *** +-+---+ | Variable_name | Value | +-+---+ | wsrep_node_name | db1 | +-+---+ 1 row in set (0.00 sec) Does it have something to do with my MariaDB setup ? Connecting directly to any of my nodes is normal, I can stay connected as long as I wish without having the MySQL server has gone away message. If someone has a lead to a solution... Thanks in advance ! Hi, Are you able to reproduce the behavior in a test environment? If so, please turn log level to 'info' then report here the logs of the sequence you ran above. Baptiste
Boostez votre emailing avec les dernières nouveautés SendinBlue
Optimisez la d�livrabilit� de vos emails ! � [Voir dans votre navigateur](http://r.a.d.mailin.fr/fov6vkr71zr6uvf.html) � �[ ](http://r.a.d.mailin.fr/1qrgrib0s7yzb6uvd.html)� � Bonjour � tous, � L'�t� a �t� pluvieux, mais studieux chez SendinBlue :) Nous en avons profit� pour d�velopper des fonctionnalit�s qui vont booster vos emailings. D�couvrez comment optimiser la d�livrabilit� de vos campagnes ... et, chers utilisateurs WordPress, comment vous simplifier (grandement) la vie ... � �[](http://r.a.d.mailin.fr/1qrgrib0s7zdj6uvd.html) Acc�l�rez la livraison de vos campagnes� Le routage de vos campagnes via un pool d'IP d�di�es permettra de livrer plus rapidement vos emails dans la bo�te de r�ception de vos clients. En regroupant plusieurs IP sous une m�me adresse exp�ditrice, vos emails seront envoy�s al�atoirement par les IP du pool. La charge de chaque IP sera r�duite et votre campagne sera d�livr�e plus rapidement. �[ En savoir plus ](http://r.a.d.mailin.fr/kx5l63o9enpp36uvd.html) � � D�couvrez le nouveau plugin SendinBlue pour WordPress !� Il n?a jamais �t� aussi simple et efficace de lier votre site WordPress � votre compte SendinBlue. Vous pouvez d�sormais tout g�rer depuis votre back-office WordPress : du formulaire d'inscription, � la cr�ation de vos emails marketing, en passant par vos emails transactionnels. � �[ En savoir plus ](http://r.a.d.mailin.fr/1qrgrib0s805z6uvd.html) [](http://r.a.d.mailin.fr/kx5l63o9enp3r6uvd.html)� � [](http://r.a.d.mailin.fr/1qrgrib0s7zrr6uvd.html) Personnalisez votre signature DKIM� Le protocole DKIM permet de signer votre email avec votre nom de domaine, comme vous pourriez signer une lettre avec votre signature. Quand vos campagnes sont envoy�es via nos IP mutualis�es, certains FAI, comme Gmail, peuvent faire appara�tre le nom du routeur dans les d�tails de la signature de l?email. Vous pouvez d�sormais personnaliser cette signature, m�me si vous passez par nos IP mutualis�es. � �[ En savoir plus ](http://r.a.d.mailin.fr/1qrgrib0s7zkn6uvd.html) � � On se voit bient�t ? �[ ](http://r.a.d.mailin.fr/1qrgrib0s80d36uvd.html) � Au Salon du e-Commerce� Retrouvez-nous au salon du e-Commerce Stand D038 Quand : du 23 au 25 septembre 2014 O� : Parc des Expositions Pavillon 7-3, Stand D038 Porte de Versailles, Paris Pourquoi : pour rencontrer qui est derri�re SendinBlue, et b�n�ficier de conseils sur vos campagnes. [ ](http://r.a.d.mailin.fr/1qrgrib0s80k76uvd.html) � � la F�te du Cloud fran�ais� Venez f�ter le Cloud fran�ais ! C�l�brons ensemble le dynamisme du Cloud dans l'�conomie fran�aise. [Inscrivez-vous ici !](http://r.a.d.mailin.fr/1qrgrib0s80rb6uvd.html) Quand : le 18 septembre de 18h � 21h � O� : Cit� de la Mode et du Design @N�ba 34 Quai d'Austerlitz, 75013 Paris� � Pourquoi : euh ... pour boire un verre ensemble, �a ne suffit pas ? ;) � � N?h�sitez pas � contacter le [service client](mailto:cont...@sendinblue.com?utm_source=sendinblueutm_campaign=NL_SEPTutm_medium=email) pour plus d?informations sur ces nouvelles fonctionnalit�s. � � A tr�s bient�t, L'�quipe SendinBlue � � SendinBlue 59 rue Beaubourg 75003 PARIS 0 899 25 30 61 cont...@sendinblue.com� � [](http://r.a.d.mailin.fr/kx5l63o9enobb6uvd.html) [](http://r.a.d.mailin.fr/kx5l63o9enoif6uvd.html) [](http://r.a.d.mailin.fr/kx5l63o9enopj6uvd.html) � � Cet email a �t� envoy� � haproxy@formilux.org. Vous avez re�u cet email car vous vous �tes inscrit sur SendinBlue. [Se d�sinscrire](http://r.a.d.mailin.fr/fov6vkr71zr6uvg.html) � Envoy� par [](http://r.a.d.mailin.fr/kx5l63o9enown6uvd.html) � � � 2014 SendinBlue �
Re: MariaDB 5.5.39 + HAProxy v1.5.3
Hi, Le 16/09/2014 15:52, Hoggins! a écrit : (...) defaults timeout connect 5000 timeout server 5 timeout client 5 (...) If I issue the same command after a few seconds, here is what I get : MariaDB [(none)] show variables like '%wsrep_node_name%'; ERROR 2006 (HY000): MySQL server has gone away What are you calling after a few seconds ? Is it more that 50 seconds ? -- Cyril Bonté
Re: Can haproxy sync configuration to another instance for configuration updates?
There is nothing to be anxious about because there is no support in haproxy or keepalived for synchronization of configuration files -- it's something you'll need to handle using whatever node configuration tools you wish (puppet, chef, scripts, etc). On Tue, Sep 16, 2014 at 4:24 AM, Zebra max...@unitedstack.com wrote: Hi,all I want to deploy keepalived + haproxy to supply one high availability cluster with master-slave mode. But I am anxious about whether the configuration updates made in the master node can sync to the slave. Any suggestiones will be appreciated. Looking forward to your reply. Thank you!
Re: MariaDB 5.5.39 + HAProxy v1.5.3
Hello Cyril, Le 16/09/2014 18:54, Cyril Bonté a écrit : Hi, Le 16/09/2014 15:52, Hoggins! a écrit : (...) defaults timeout connect 5000 timeout server 5 timeout client 5 (...) If I issue the same command after a few seconds, here is what I get : MariaDB [(none)] show variables like '%wsrep_node_name%'; ERROR 2006 (HY000): MySQL server has gone away What are you calling after a few seconds ? Is it more that 50 seconds ? yes, it fits the timeout, but I would have expected that with the keepalive option, as long as the connexion is valid (the MySQL backend is still up), there would be no switch between the two backends or a disconnection. It's just that I'm afraid some of my users (a very little french server, not a render farm anyway) might not have implemented reconnection routines in their applications. The commandline mysql client does reconnect automatically, but not everybody does it. Thanks for your help. signature.asc Description: OpenPGP digital signature
Re: 回复: About the health check
Hi Zebra, I think it stops after the 3way because your configuration is not using any send/expect values, so after the connection is made its immediately done 'checking' the layer 7 part.. Something like this would be the proper way to use tcp-check: |option tcp-check tcp-check send PING\r\n tcp-check expect +PONG tcp-check send info\ replication\r\n tcp-check expect string role:master tcp-check send QUIT\r\n tcp-check expect string +OK| Have you tried removing that 'option tcp-check' from your configuration like i wrote before.? It should then default to a simple layer4 3way. Zebra schreef op 16-9-2014 3:53: Hi, PiBa-NL Thank you for your reply . But I used tcpdump and find the check only try to make one tcp three-way handshake and even the packet for tcp ACK will not send. This is the result : root@ubuntuforhaproxy:/home# tcpdump -lnvvvXei eth0 tcp port 22 and src 192.168.10.95 or dst 192.168.10.95 tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 01:52:21.188205 fa:16:3e:29:d8:8e fa:16:3e:05:d6:dd, ethertype IPv4 (0x0800), length 74: (tos 0x0, ttl 64, id 46206, offset 0, flags [DF], proto TCP (6), length 60) 192.168.10.94.60528 192.168.10.95.22: Flags [S], cksum 0x963c (incorrect - 0xa91a), seq 1728571217, win 29200, options [mss 1460,sackOK,TS val 146297647 ecr 0,nop,wscale 7], length 0 0x: 4500 003c b47e 4000 4006 f02f c0a8 0a5e E...~@.@../...^ 0x0010: c0a8 0a5f ec70 0016 6707 e751 ..._.p..g..Q 0x0020: a002 7210 963c 0204 05b4 0402 080a ..r 0x0030: 08b8 532f 0103 0307 ..S/ 01:52:21.189789 fa:16:3e:05:d6:dd fa:16:3e:29:d8:8e, ethertype IPv4 (0x0800), length 74: (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60) 192.168.10.95.22 192.168.10.94.60528: Flags [S.], cksum 0x7eeb (correct), seq 952013707, ack 1728571218, win 28960, options [mss 1460,sackOK,TS val 146298380 ecr 146297647,nop,wscale 7], length 0 0x: 4500 003c 4000 4006 a4ae c0a8 0a5f E@.@.._ 0x0010: c0a8 0a5e 0016 ec70 38be 938b 6707 e752 ...^...p8...g..R 0x0020: a012 7120 7eeb 0204 05b4 0402 080a ..q.~... 0x0030: 08b8 560c 08b8 532f 0103 0307 ..V...S/ 01:52:21.189819 fa:16:3e:29:d8:8e fa:16:3e:05:d6:dd, ethertype IPv4 (0x0800), length 54: (tos 0x0, ttl 64, id 878, offset 0, flags [DF], proto TCP (6), length 40) 192.168.10.94.60528 192.168.10.95.22: Flags [R], cksum 0xdef1 (correct), seq 1728571218, win 0, length 0 0x: 4500 0028 036e 4000 4006 a154 c0a8 0a5e E..(.n@.@..T...^ 0x0010: c0a8 0a5f ec70 0016 6707 e752 ..._.p..g..R 0x0020: 5004 def1 P... -- 原始邮 件 -- *发件人:* PiBa-NL; *发送时间:* 2014年9月16日(星期二) 上午9:31 *收件人:* Zebra; haproxy; *主题:* Re: About the health check Zebra schreef op 16-9-2014 3:08: Hi,all I configure the backend with one server and want to make the health check for it using tcp.And the configuration as below. backend httpservers option tcp-check This actually makes it perform tests on a higher layer: Perform health checks using tcp-check send/expect sequences If you remove the option tcp-check from the config it will probably do layer4. server server2 192.168.10.95:22 check inter 5s fall 1 maxconn 32000 But I find the log output below: Sep 16 01:03:34 localhost haproxy[30429]: Health check for server httpservers/server2 succeeded, reason: Layer7 check passed, code: 0, info: (tcp-check), check duration: 0ms, status: 1/1 UP. I could not understand why Layer 7 check passed for I think the tcp-check only work for Layer 4. Could you tell me more about this ? Looking forward to your reply, thanks!
回复: Can haproxy sync configuration to another instance forconfiguration updates?
I got it.Thank you very much! -- 原始邮件 -- 发件人: Bryan Talbot; 发送时间: 2014年9月17日(星期三) 凌晨1:31 收件人: Zebra; 抄送: haproxy; 主题: Re: Can haproxy sync configuration to another instance forconfiguration updates? There is nothing to be anxious about because there is no support in haproxy or keepalived for synchronization of configuration files -- it's something you'll need to handle using whatever node configuration tools you wish (puppet, chef, scripts, etc). On Tue, Sep 16, 2014 at 4:24 AM, Zebra max...@unitedstack.com wrote: Hi,all I want to deploy keepalived + haproxy to supply one high availability cluster with master-slave mode. But I am anxious about whether the configuration updates made in the master node can sync to the slave. Any suggestiones will be appreciated. Looking forward to your reply. Thank you!
回复: Can I add one new server without stop the haproxy process?
I got it. Thank you very much! -- 原始邮件 -- 发件人: Juho Mäkinen; 发送时间: 2014年9月15日(星期一) 中午1:49 收件人: Zebra; 抄送: haproxy; 主题: Re: Can I add one new server without stop the haproxy process? You can't. The socket admin interface allows you to only disable existing servers and then re-enable them, but you can't add a completely new server. However you can reload haproxy so that it minimises and on some platforms eliminates dropping any existing connections. Probably your init script already does this with the reload-command. For example this blog post tells about this https://medium.com/@Drew_Stokes/actual-zero-downtime-with-haproxy-18318578fde6 but I've also hear that on modern linux kernels even the iptables syn trick isn't needed, but I can't confirm. On Mon, Sep 15, 2014 at 3:02 AM, Zebra max...@unitedstack.com wrote: Hi,all How can I add one new server without stop the haproxy process? Looking forward to your reply! Thanks, Zebra
Re: 回复: About the health check
Hi,PiBa-NL Have you tried removing that 'option tcp-check' from your configuration like i wrote before.? It should then default to a simple layer4 3way. It is indeed as what you say. Thank you for your candid reply, and I gain a lot. Greatly appreciated. Kind regards. Zebra -- Original -- From: PiBa-NLpiba.nl@gmail.com; Date: Wed, Sep 17, 2014 01:45 AM To: Zebramax...@unitedstack.com; haproxyhaproxy@formilux.org; Subject: Re: 回复: About the health check Hi Zebra, I think it stops after the 3way because your configuration is not using any send/expect values, so after the connection is made its immediately done 'checking' the layer 7 part.. Something like this would be the proper way to use tcp-check: |option tcp-check tcp-check send PING\r\n tcp-check expect +PONG tcp-check send info\ replication\r\n tcp-check expect string role:master tcp-check send QUIT\r\n tcp-check expect string +OK| Have you tried removing that 'option tcp-check' from your configuration like i wrote before.? It should then default to a simple layer4 3way. Zebra schreef op 16-9-2014 3:53: Hi, PiBa-NL Thank you for your reply . But I used tcpdump and find the check only try to make one tcp three-way handshake and even the packet for tcp ACK will not send. This is the result : root@ubuntuforhaproxy:/home# tcpdump -lnvvvXei eth0 tcp port 22 and src 192.168.10.95 or dst 192.168.10.95 tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 01:52:21.188205 fa:16:3e:29:d8:8e fa:16:3e:05:d6:dd, ethertype IPv4 (0x0800), length 74: (tos 0x0, ttl 64, id 46206, offset 0, flags [DF], proto TCP (6), length 60) 192.168.10.94.60528 192.168.10.95.22: Flags [S], cksum 0x963c (incorrect - 0xa91a), seq 1728571217, win 29200, options [mss 1460,sackOK,TS val 146297647 ecr 0,nop,wscale 7], length 0 0x: 4500 003c b47e 4000 4006 f02f c0a8 0a5e E...~@.@../...^ 0x0010: c0a8 0a5f ec70 0016 6707 e751 ..._.p..g..Q 0x0020: a002 7210 963c 0204 05b4 0402 080a ..r 0x0030: 08b8 532f 0103 0307 ..S/ 01:52:21.189789 fa:16:3e:05:d6:dd fa:16:3e:29:d8:8e, ethertype IPv4 (0x0800), length 74: (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60) 192.168.10.95.22 192.168.10.94.60528: Flags [S.], cksum 0x7eeb (correct), seq 952013707, ack 1728571218, win 28960, options [mss 1460,sackOK,TS val 146298380 ecr 146297647,nop,wscale 7], length 0 0x: 4500 003c 4000 4006 a4ae c0a8 0a5f E@.@.._ 0x0010: c0a8 0a5e 0016 ec70 38be 938b 6707 e752 ...^...p8...g..R 0x0020: a012 7120 7eeb 0204 05b4 0402 080a ..q.~... 0x0030: 08b8 560c 08b8 532f 0103 0307 ..V...S/ 01:52:21.189819 fa:16:3e:29:d8:8e fa:16:3e:05:d6:dd, ethertype IPv4 (0x0800), length 54: (tos 0x0, ttl 64, id 878, offset 0, flags [DF], proto TCP (6), length 40) 192.168.10.94.60528 192.168.10.95.22: Flags [R], cksum 0xdef1 (correct), seq 1728571218, win 0, length 0 0x: 4500 0028 036e 4000 4006 a154 c0a8 0a5e E..(.n@.@..T...^ 0x0010: c0a8 0a5f ec70 0016 6707 e752 ..._.p..g..R 0x0020: 5004 def1 P... -- 原始邮 件 -- *发件人:* PiBa-NL; *发送时间:* 2014年9月16日(星期二) 上午9:31 *收件人:* Zebra; haproxy; *主题:* Re: About the health check Zebra schreef op 16-9-2014 3:08: Hi,all I configure the backend with one server and want to make the health check for it using tcp.And the configuration as below. backend httpservers option tcp-check This actually makes it perform tests on a higher layer: Perform health checks using tcp-check send/expect sequences If you remove the option tcp-check from the config it will probably do layer4. server server2 192.168.10.95:22 check inter 5s fall 1 maxconn 32000 But I find the log output below: Sep 16 01:03:34 localhost haproxy[30429]: Health check for server httpservers/server2 succeeded, reason: Layer7 check passed, code: 0, info: (tcp-check), check duration: 0ms, status: 1/1 UP. I could not understand why Layer 7 check passed for I think the tcp-check only work for Layer 4. Could you tell me more about this ? Looking forward to your reply, thanks!