Estou usando uma compilação do Windows (e precisa ser o Windows) do Apache 2.4.33 do link
Configurei-o como um balanceador de carga e tudo parece funcionar bem até que eu tente adicionar verificações de integridade. Se eu usar hcmethod = GET, a verificação de integridade será executada e tudo funcionará bem. Mas se eu definir hcmethod = TCP, todas as verificações parecem falhar. Surpreendentemente, não vejo nenhuma tentativa de fazer um teste no Wireshark (posso ver muito bem quando uso a verificação de integridade GET).
Isto é o que eu recebo em logs
[Wed May 23 15:34:36.554601 2018] [proxy_hcheck:debug] [pid 16700:tid 888] mod_proxy_hcheck.c(820): AH03256: Threaded Health checking http://<ip-anonymized>:6001
[Wed May 23 15:34:36.554601 2018] [proxy:debug] [pid 16700:tid 888] proxy_util.c(2160): AH00942: HCTCP: has acquired connection for (<ip-anonymized>)
[Wed May 23 15:34:36.554601 2018] [proxy:debug] [pid 16700:tid 888] proxy_util.c(2175): AH00943: HCTCP: has released connection for (<ip-anonymized>)
[Wed May 23 15:34:36.554601 2018] [proxy_hcheck:debug] [pid 16700:tid 888] mod_proxy_hcheck.c(564): AH03251: Health check TCP Status (-1) for 291afc85400.
Esta é a parte relevante da configuração:
<Proxy balancer://myset>
BalancerMember http://<ip-anonymized>:6001 hcmethod=TCP hcinterval=5 hcpasses=2 hcfails=3
BalancerMember http://<ip-anonymized>:6002 hcmethod=GET hcuri=/<path-anonymized> hcinterval=5
ProxySet lbmethod=byrequests
</Proxy>
ProxyPass "/" "balancer://myset/"
ProxyPassReverse "/" "balancer://myset/"
<Location "/stats">
SetHandler balancer-manager
</Location>
A verificação para 6002 funciona como esperado, então presumo que tenha todos os módulos necessários carregados (não vejo erros nos arquivos de log relacionados a isso).
Ativei a googling no problema e encontrei algo que pode ser relevante: link
Infelizmente, não sei como utilizar este comentário (sou um novato da Apache):
Any chance that you could try the 'no-proxy' variable via SetEnvIf?
Eu não tenho outros leads.
Tags windows apache-2.4 healthcheck