HAProxyがHTTP2リクエストをHTTP 1.1に転送するのはなぜですか?

HAProxyがHTTP2リクエストをHTTP 1.1に転送するのはなぜですか?

HAPoxyを使用して2つのサーバー間でロードバランサーを構成しようとしています。構成は次のとおりです。

frontend haproxynode
    bind *:443 ssl crt /etc/ssl/private/isel.pem alpn h2,http/1.1
    mode tcp
    default_backend backendnodes
    
 backend backendnodes
    balance roundrobin
    option forwardfor
    server node1 192.168.1.5:80 check
    server node2 192.168.1.6:80 check

私のネットワークは次のとおりです。

ネットワーク

私は2つのサーバー仮想マシンでテキストニュースサーバーを実行しています。ベンチマークにはh2loadを使用しています。このコマンドを使用すると、h2load -n 30 -c 30 https://192.168.1.26/blog/次の結果が表示されます。

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

ご覧のとおり、アプリケーションプロトコルはh2ですが、WireSharkではリクエストがHTTP 1.1として表示されます。なぜですか?

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

ベストアンサー1

サーバーは暗号化されていないhttp / 2をサポートしていますか?

この試み:

backend servers
   mode http
   server S1 XXX.XXX.XXX:80 proto h2
   server S2 XXX.XXX.XXX:80 proto h2

暗号化が有効になっている場合は、以下を試してください。

backend servers
   mode http
   server S1 XXX.XXX.XXX:443 ssl alpn h2
   server S2 XXX.XXX.XXX:443 ssl alpn h2

おすすめ記事