TCP モード + 「透過クライアント IP」で HAProxy との接続が切断されました

TCP モード + 「透過クライアント IP」で HAProxy との接続が切断されました

基本設定

私たちは PFsense ボックスのペアで HAProxy を実行しています。前面では多数の IP アドレスを提供しており、各 IP アドレスの背後には SSL オフローダーのペアがあります。

HAProxy は 2 つの間の負荷分散に使用されます。設定はおおよそ次のようになります。

frontend FOO_FRONT_80
    bind            5.5.5.5:80 name 5.5.5.5:80  transparent 
    mode            tcp
    log             global
    maxconn         10000
    timeout client  30000
    use_backend FOO_BACK_80



backend FOO_BACK_80
    mode            tcp
    log             global
    option          log-health-checks
    balance         source
    timeout connect 30000
    timeout server  30000
    retries         3
    source ipv4@ usesrc clientip
    server          FOO_LB_001 10.0.0.21:80 check inter 10000  weight 100 
    server          FOO_LB_002 10.0.0.22:80 check inter 10000  weight 100 

これは、数万の同時接続に対応しています。

ここに写真があります:

ここに画像の説明を入力してください

問題

ロードバランサーへの通常の GET リクエストはすべて正常に通過します。ただし、POST リクエスト (リクエスト本文が 50kBytes を超えるもの) は通過せず、HAProxy とバックエンドの Apache 間の接続が切断されているようです。

ラボ環境では、この問題を再現できませんでした。ただし、実稼働環境では、透過クライアント IP 設定をオフにすると、これらの問題は解消されました。

現在、何が原因なのかを突き止めようとしています。大きな問題(それはないと思います)か、どこか(どこ?)の設定ミスでしょうか。

ご協力いただければ幸いです。

ルーベン

関連情報