ERROR 2013 ao conectar-se ao mysql via HAProxy

6

Eu estou tentando usar o HAProxy como um balanceador de carga para 2 nós mysql. Eu tenho HAProxy escutando em 3307 e encaminha solicitações para os bancos de dados em 3306. Quando o cliente está tentando se conectar ao proxy (mysql -u ... -h .. -P3307 -p ...) obtém o seguinte erro :

ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system >error: 0

Quando o cliente está tentando se conectar diretamente ao DB, ele funciona bem. Não tenho ideia do motivo de sua falha quando o tráfego passa pelo proxy.

Veja o que eu já verifiquei:

  1. /etc/hosts.allow inclui "mysqld: ALL: permitir"

  2. O arquivo de configuração do MySQL (my.cnf) não possui uma linha de endereço de ligação (aberta para todos).

Estou usando o HAProxy 1.5dev, o Mysql 5.1.xe todo o enchilada está sendo executado em ec2 no Amazon linux.

Aqui está o arquivo de configuração do HAProxy:

    global
     log 127.0.0.1   local0
     log 127.0.0.1   local1 notice
     #log loghost    local0 info
     user haproxy
     group haproxy
     maxconn 4096
     daemon
     #debug
     #quiet

    defaults
     log     global
     mode    tcp
     option  tcplog
     option  dontlognull
     retries 3
     option redispatch
     maxconn 4096
     contimeout      5000
     clitimeout      50000
     srvtimeout      50000

    frontend mysql_cluster
     bind 10.0.0.150:3307
     default_backend mysql_cluster

    backend mysql_cluster
     mode tcp
     balance roundrobin
     option tcpka
     option httpchk
     server lb1 10.0.0.140:3306 check port 9200 inter 5s rise 2 fall 2
     server lb2 10.0.0.214:3306 check port 9200 inter 5s rise 2 fall 2 

    listen stats 10.0.0.150:8081
     mode http
     option httpclose
     balance roundrobin
     stats uri /
     stats realm Haproxy\ Statistics
     stats auth ***:***

Alguém já resolveu esse problema antes? Alguma idéia de como resolver isso?

Qualquer ajuda muito apreciada

    
por A.RG 28.09.2011 / 21:25

3 respostas

2

OK, eu resolvi isso. Eu tive um problema com o meu script xinetd.

Falha ao ligar no 9200 - corrigido no arquivo / etc / services.

    
por 01.10.2011 / 01:01
0

Obrigado querido, ótimo,

HAproxy precisa de xinetd para ser configurado corretamente para funcionar abaixo do erro aparece,

ERROR 2013 (HY000): Perda de conexão com o servidor MySQL na 'leitura do pacote de comunicação inicial', erro do sistema: 0

O Xinetd deve ser atualizado se já estiver em execução.

link

    
por 01.06.2017 / 06:51
0

Ocorre geralmente quando o erro de respostas do serviço de verificação de integridade xinetd .
você pode depurar xinetd by telnet assim:

telnet IPADDR PORT     # IPADDR: one of the IPs of your nodes
                       # PORT: the port that node is listening.

a saída informa sobre o problema.

    
por 20.06.2017 / 14:11

Tags