2016-11-11 28 views
0

ハプロキシ設定を閉じて、以下を示す:Redisの - 複数の接続試行と接続Redisのため

frontend redis 
    bind *:6379 name port6379 
    mode tcp 
    timeout client 15s 

    #define hosts 
    acl redis_3 hdr(host) -i im.test.com 

    #figure out which one to use 
    use_backend test_redis if redis_3 

backend test_redis 
    mode tcp 
    timeout connect 4s 
    timeout server 30s 
    #balance leastconn 
    option tcplog 
    option tcp-check 
    tcp-check send PING\r\n 
    tcp-check expect string +PONG 
    #tcp-check send QUIT\r\n 
    #tcp-check expect string +OK 
    server node1_redis 10.146.99.164:6379 check inter 1s 

HAのproxylogsがREDIRする複数コネクトを示しています。 Redirサーバーでは、「ピアによって接続がリセットされました」と表示されます。

ブラウザに「再初期化されたセッション」が表示されます。

しかし、redis-cli -h pingでは正しいPONG応答が得られます。ブラウザをポート6379のredis serverに直接接続すると、しばらくすると次のようになります。012proは、バックエンドが稼動していることを示します。

誰もがこれを手伝ってくれますか? HAプロキシ経由で接続するときにエラーが発生するのはなぜですか?

+0

Redisのサーバー上でのRedis-CLIハローワールドセットを使用しているとき、私は直接Redisのサーバーにカールして接続する接続を取得します。しかし、私がHAproxyを使って接続するとエラーが出ます(52)サーバからの空の返信 –

答えて

0

解決済み!何らかの理由でホスト名がaclで読み込まれませんでした。即座にデフォルトのバックエンドに変更したときに機能しました。

誰かが、この例のホスト名が機能しなかった理由を教えてくれますか?

私にとっては今のところうまくいきます。

関連する問題