varnish load balance - HLS
Norberto Meijome
numard at gmail.com
Wed Oct 29 22:42:26 CET 2014
Hi Laszlo,
>From the log you sent, it looks look your 4 wowza back ends are sick and
won't get any requests. You would normally get a 503 on your client in this
case unless, as suggested by someone else, you have v long timeouts on
b.end config?
First make sure varnish treats your back end correctly.
It's been some years since I used wowza/hls , but if you are sending
encrypted streams, make sure all your wowza nodes have the key and session
info available - otherwise you need to have sticky sessions. This may apply
ad well for non encrypted streams, wowza may have shared session info
nowadays, YMMV, etc..
As suggested also, first step would make sure you see your client request
in varnishlog (regardless of the success of the request).. As it stands,
there's nothing there, you may be getting firewalled upstream...
Good luck,
On 24/10/2014 12:48 am, "Laszlo Danielisz" <laszlo.danielisz at yahoo.com>
wrote:
> Hi Andreas,
>
> I'm sending the varnishlog, I could not find anything about the request in
> it.
> What is interesting is that varnish reports the backends sick after a
> couple seconds BUT with "HTTP 200 OK", while the .url defined in the probe
> is still up.
>
> root at rdr00-cdn# varnishlog
> 0 WorkThread - 0x7fffff5fabf0 start
> 0 WorkThread - 0x7fffff3f9bf0 start
> 0 WorkThread - 0x7fffff1f8bf0 start
> 0 WorkThread - 0x7ffffeff7bf0 start
> 0 WorkThread - 0x7ffffedf6bf0 start
> 0 CLI - Rd vcl.load "boot" ./vcl.mY4NLfsb.so
> 0 Backend_health - backend0 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend0 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend0 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend2 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend2 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend2 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend3 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend3 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend3 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend3 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend3 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 Backend_health - backend3 Still healthy ------H 0 0 0 0.000000
> 0.000000
> 0 CLI - Wr 200 36 Loaded "./vcl.mY4NLfsb.so" as "boot"
> 0 CLI - Rd vcl.use "boot"
> 0 CLI - Wr 200 0
> 0 CLI - Rd start
> 0 WorkThread - 0x7ffffe7f3bf0 start
> 0 Debug - "Acceptor is kqueue"
> 0 CLI - Wr 200 0
> 0 WorkThread - 0x7ffffdbedbf0 start
> 0 WorkThread - 0x7ffffd9ecbf0 start
> 0 WorkThread - 0x7ffffd7ebbf0 start
> 0 WorkThread - 0x7ffffd5eabf0 start
> 0 Backend_health - backend3 Still healthy 4--X--- 3 3 5 0.000000
> 0.000000 HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend3 Still healthy 4--X--- 3 3 5 0.000000
> 0.000000 HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend2 Still healthy 4--X--- 3 3 5 0.000000
> 0.000000 HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend0 Still healthy 4--X--- 3 3 5 0.000000
> 0.000000 HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070353 1.0
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070356 1.0
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070360 1.0
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070363 1.0
> 0 Backend_health - backend3 Still healthy 4--X--- 3 3 5 0.000000
> 0.000000 HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend0 Still healthy 4--X--- 3 3 5 0.000000
> 0.000000 HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend3 Still healthy 4--X--- 3 3 5 0.000000
> 0.000000 HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend2 Still healthy 4--X--- 3 3 5 0.000000
> 0.000000 HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070366 1.0
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070369 1.0
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070372 1.0
> 0 Backend_health - backend3 Went sick 4--X--- 2 3 5 0.000000 0.000000
> HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend0 Went sick 4--X--- 2 3 5 0.000000 0.000000
> HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend2 Went sick 4--X--- 2 3 5 0.000000 0.000000
> HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 Backend_health - backend1 Went sick 4--X--- 2 3 5 0.000000 0.000000
> HTTP/1.1 200 OK
> Accept-Ranges: bytes
> Server: WowzaStreamingEngine/4.1.0
> Cache-Control: no-cache
> Connection: close
> Content-T
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070375 1.0
> 0 CLI - Rd ping
> 0 CLI - Wr 200 19 PONG 1414070378 1.0
>
>
> This is what I get with curl from varnish, and it times out after a while.
> The firewall os off.
> $ curl -v http://127.29.90.120/crossdomain.xml
> * About to connect() to 127.29.90.120 port 80 (#0)
> * Trying 127.29.90.120...
> * Adding handle: conn: 0x7fc720803000
> * Adding handle: send: 0
> * Adding handle: recv: 0
> * Curl_addHandleToPipeline: length: 1
> * - Conn 0 (0x7fc720803000) send_pipe: 1, recv_pipe: 0
> ^C
>
>
> On Thursday, October 23, 2014 1:43 PM, Andreas Plesner Jacobsen <
> apj at mutt.dk> wrote:
>
>
> On Thu, Oct 23, 2014 at 04:28:53AM -0700, Laszlo Danielisz wrote:
>
> >
> > I'm trying to use varnish for load balance and cache in front of
> streaming servers.
> > The stream is HTTP Live streaming based which means there are a bunch of
> playlists (m3u8) and chunk files (.ts).
> > The thing is if I try to get a http page it is working, but I get no
> response if I'm trying to play a stream?
>
>
> Define "no response", and send a varnishlog of the failed request.
>
> --
> Andreas
>
> _______________________________________________
> varnish-misc mailing list
> varnish-misc at varnish-cache.org
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>
>
>
>
> _______________________________________________
> varnish-misc mailing list
> varnish-misc at varnish-cache.org
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-misc/attachments/20141030/0dfba76c/attachment-0001.html>
More information about the varnish-misc
mailing list