I can get the Load Balancer Add-On to work but I cannot get the Wowza Player to stream it properly. I can get the Player to stream the original feed from the Origin server but not from the Edge server.
My setup:
- Origin Server running Wowza 4.7.4 on Linux Mint 18.1
- Edge Server running Wowza 4.7.4 on Ubuntu 16.04.3
I’ve pushed to the Origin with Adobe FMLE and could see that stream.
I’ve pushed to the Edge with Adobe FMLE and could see that stream.
I use the standard live app and I’ve turned off source and playback authentication.
I put the com.wowza.wms.plugin.loadbalancer.listeners.ServerListener Server Listener in the Server.xml for both instances.
The Origin server Load Balancer setup (Server.xml):
- loadbalanceType: Server, Client
- loadbalanceServerListenIP: [Origin IP]
- loadbalanceKey: [random 16-byte key]
- loadbalanceServerDecisionOrder: Connection
- loadbalanceClientConnectionEnable: on
- loadbalanceClientConnectionLimit: 2
The Edge server Load Balancer setup (Server.xml):
- loadbalanceType: Client
- loadbalanceServerListenIP: [Origin IP]
- loadbalanceKey: [same key as above]
- loadbalanceServerDecisionOrder: Connection
- loadbalanceClientConnectionEnable: on
- loadbalanceClientConnectionLimit: 4
When I hit http://[Origin IP]:1935/loadbalanceinfo page with a browser I see
- Origin server with 2 connections max
- Edge server with 4 connections max
I have success hitting the source stream on the Origin server with the Wowza Player with the URL
http://[Origin IP]:1935/live/test.mp4
but that only hits the Origin server. No player will pull from the Edge server. It’ll even run over the maximum; I can get 4/2 connections.
If I use the redirect URL with Wowza Player I can’t watch it at all
http://[Origin IP]:1935/redirect/live/test.mp4?type=m3u8
If I run the command
wget --max-redirect 0 --server-response http://[Origin IP]:1935/redirect/live/test.mp4?type=m3u8
I will get the HTTP 302 redirect response with a valid Location HTTP header.
On page 31 of the Load Balancing Add-On PDF there’s some extra Javascript to add to the Wowza Player’s embed code but that doesn’t seem to help either.
I added these to the WowzaPlayer.create() call but with no effect:
- “loadBalancerFilter”: “redirect”,
- “scheme”: “http://”,
- “loadBalancerHost”: “[Origin IP]:1935”,
- “loadBalancerAppRequired”: “live”,
- “loadBalancerAssetRequired”: “mp4:sample.mp4”
I feel like I’m missing one simple step to get this all to work.