haproxy passa IP de origem no cluster galera db

0

Temos um cluster galera, mariadb versão 10.3 e haproxy.

Queremos que os usuários se conectem como este cliente- > haproxy- > galera_cluster. O usuário que criamos no banco de dados, permitimos o IP para o cliente. Para o http, descobrimos que você pode usar o send-proxy ou o X-Origin IP no cabeçalho.

Queremos, da mesma forma com o cluster galera, o protocolo TCP.

Adicionamos isso no arquivo de configuração do mariadb: "proxy_protocol_networks = haproxy_server / 32"

Nós usamos o Ubuntu 16.04 e o haproxy 1.6.

arquivo de configuração haproxy

 backend galera
 bind 0.0.0.0:3306
 balance leastconn
 mode tcp
 option tcpka
 option forwardfor
 option log-health-checks
 retries                   3
 timeout queue             1m
 timeout connect           15s
 timeout client            50m
 timeout server            50m
 timeout check             10s
 option mysql-check user haproxy
 server node1 IP_Cluster_1:3306 check send-proxy 

Qualquer ideia de como podemos fazer isso.

Obrigado :)

    
por cdemet 13.06.2018 / 11:45

2 respostas

0

O MariaDB suporta o protocolo de proxy a partir de 10.3, portanto send-proxy deve funcionar.

Mas primeiro, você precisa configurar proxy-protocol-networks com a sub-rede do proxy (não dos clientes).

link

    
por 14.06.2018 / 01:43
0

O problema estava no arquivo de configuração haproxy. Este é o arquivo de configuração correto do haproxy.

frontend mysqld_listen
    bind *:3306
    mode tcp
    log global
    option  dontlognull
    option tcplog
    use_backend galera

backend galera
    balance leastconn
    mode tcp
    option tcpka
    option tcplog
    option log-health-checks
    retries                   3
    option mysql-check user haproxy
    server node1 IP_1:3306 check weight 1 send-proxy-v2 

Muito obrigado:)

    
por 14.06.2018 / 14:49