Mod_proxy_http2 - got a 503

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Mod_proxy_http2 - got a 503

Olivier Mallassi
Hello all

We are trying to use the mod_proxy_http2 of httpd. Our use case is for now "simple"
- multiple backedns (configured in HTTP2)
- one httpd acting as proxy 
-- mod_proxy_http2 is activated
-- we use the Balancer directive to load balanced accross backends (round-robin)
- the client is a curl -kv --http2 ...

The tests are the following:
- while using curl to access one of the backend directly, the access log shows that we use HTTP/2
- then the balancer directive is configured with http://mybackend1
In taht case, while accessing to the proxy with curl, we see that the communication between curl & httpd is HTTP/2 but that the communication with the backends is HTTP1/1
- then we change the balancer directive to h2://mybackend.... 
In that case, the curl returns 503 (like if the proxy is unable to route). 

I suspect a misconfiguration but any help is welcomed. Does someone already did something similar? 

thanks. 
Reply | Threaded
Open this post in threaded view
|

Re: Mod_proxy_http2 - got a 503

Stefan Eissing
Hi,

do you talk http: or https: to the backend? h2://mybackend is for the SSL case, for unencrypted calls, use h2c://mybackend.

Maybe that is the problem?

-Stefan

> Am 17.06.2017 um 15:26 schrieb Olivier Mallassi <[hidden email]>:
>
> Hello all
>
> We are trying to use the mod_proxy_http2 of httpd. Our use case is for now "simple"
> - multiple backedns (configured in HTTP2)
> - one httpd acting as proxy
> -- mod_proxy_http2 is activated
> -- we use the Balancer directive to load balanced accross backends (round-robin)
> - the client is a curl -kv --http2 ...
>
> The tests are the following:
> - while using curl to access one of the backend directly, the access log shows that we use HTTP/2
> - then the balancer directive is configured with http://mybackend1
> In taht case, while accessing to the proxy with curl, we see that the communication between curl & httpd is HTTP/2 but that the communication with the backends is HTTP1/1
> - then we change the balancer directive to h2://mybackend....
> In that case, the curl returns 503 (like if the proxy is unable to route).
>
> I suspect a misconfiguration but any help is welcomed. Does someone already did something similar?
>
> thanks.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Mod_proxy_http2 - got a 503

Olivier Mallassi
thanks for the help but it does not seem to be this.

my proxy config (extract) is minmum 
ProxyPass / balancer://mycluster/
ProxyPassReverse / balancer://mycluster/

<Proxy balancer://mycluster>
    BalancerMember h2://localhost:8081
</Proxy>


note that everything is running on the same machine for now. 

In the httpd error_log, I see
...
[Sat Jun 17 22:26:32.174438 2017] [ssl:info] [pid 77593:tid 140135766828800] [remote 127.0.0.1:8081] AH01964: Connection to child 0 established (server xxxx:443)
[Sat Jun 17 22:26:32.176707 2017] [http2:warn] [pid 77593:tid 140135766828800] [client 127.0.0.1:57210] h2_mplx(78): task(78-1) has not-shutdown engine(ngn-78-1)



On Sat, Jun 17, 2017 at 6:54 PM, Stefan Eissing <[hidden email]> wrote:
Hi,

do you talk http: or https: to the backend? h2://mybackend is for the SSL case, for unencrypted calls, use h2c://mybackend.

Maybe that is the problem?

-Stefan

> Am 17.06.2017 um 15:26 schrieb Olivier Mallassi <[hidden email]>:
>
> Hello all
>
> We are trying to use the mod_proxy_http2 of httpd. Our use case is for now "simple"
> - multiple backedns (configured in HTTP2)
> - one httpd acting as proxy
> -- mod_proxy_http2 is activated
> -- we use the Balancer directive to load balanced accross backends (round-robin)
> - the client is a curl -kv --http2 ...
>
> The tests are the following:
> - while using curl to access one of the backend directly, the access log shows that we use HTTP/2
> - then the balancer directive is configured with http://mybackend1
> In taht case, while accessing to the proxy with curl, we see that the communication between curl & httpd is HTTP/2 but that the communication with the backends is HTTP1/1
> - then we change the balancer directive to h2://mybackend....
> In that case, the curl returns 503 (like if the proxy is unable to route).
>
> I suspect a misconfiguration but any help is welcomed. Does someone already did something similar?
>
> thanks.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: Mod_proxy_http2 - got a 503

Eric Covener
On Sat, Jun 17, 2017 at 4:27 PM, Olivier Mallassi
<[hidden email]> wrote:
>     BalancerMember h2://localhost:8081

I suggest re-reading Stefan's reply.


--
Eric Covener
[hidden email]

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]