Good day!
I’ve been asked by a customer to research the options for Wowza load balancing and high availability. I’d like to suggest several levels of scaling from two machines to say four or five as a start. Two targets must be fulfilled, the first is more important:
Availability: no single point of failure
Performance: scalability
So far I understood that:
-
An origin server is not needed for video on demand
-
MediaCache might help with the content distribution
-
I can configure a listener on one of the edges to distribute to all edges
Correct me if any one of these conclusions is wrong, please.
What I’d like to find out is:
a) How can I best avoid having the listener as a single point of failure?
b) How can I realize a failover between two listeners?
c) Is a hardware load balancer an option worth looking into?
d) What would the requirements for a hardware load balancer be?
e) Are there any hardware load balancers known to work well with Wowza?
At the moment, I am not interested in configuration details yet, rather in general feasibility and infrastructure requirements.
I’d be grateful if any of you had information, could share experiences or point me in the correct direction.
Thanks!
Henrik
Henrik
I used to work for a major CDN and deployed Wowza in a fault tolerant scenario for live, VOD, and used the mediacache as well
feel free to PM me with contact info and I would be glad to share my experiences with you
Sergio,
If you have 4 servers each with a public IP, you can install Wowza and configure an edge application following the guide in the Load Balance Addon:
https://www.wowza.com/docs/how-to-get-dynamic-load-balancing-addon
Richard
using a client that understands RTMP redirects (such as JW Player), the clients connect to a redirect application on the origin server, which then redirects them to the correct edge server based on which one is least loaded at the time.
-Ian
If you are looking at a live streaming environment you should consider the following options
i) At least two origin servers and two encoders feeding into them, so providing resilience for the source
ii) You can configure edge servers to use both servers in a fail over scenario
iii) You can configure the Wowza load balancer to balance between the edge servers.
If you are doing VOD then the following is worth considering
i) The sinplest method is to distribute the content to each edge server so removing the need for MediaCache and other elements. This is purely a personal choice, but if you mirror the content the edge can lose connectivity to other parts of your network but still function correctly. This option does have financial implications, ie. each server would need the same massive disk space etc etc.
ii) Using the Wowza load balancer should work in this scenario.
iii) A hardware load balancer would limit where you put your servers, ie. they would all have to be behind it. Using the Wowza load balancer means they could be anywhere on your network, perhaps avoiding any bandwidth bottlenecks.
Shamrock
Hi bipshoft,
did you get my PM?
Hi all,
I am still looking for answers to my questions. Anyone? Or is this scenario so uncommon, maybe completely off the mark?
Best
Henrik
Hi Shamrock,
thanks for your answer. It will be VOD and rather static, so we’ll probably distribute “manually”.
One question still: I understand the listener distributes the connections to the edge servers. So it might prove a single point of failure. How would you HA the listener? Two and use heartbeat? Would that be an option?
Best
Henrik
I am confused with one thing how i setup public VIP address to 4 edge servers using Wowza Load Balancing ?
Best Regards,
Sérgio
Ok but what ip will show to clients? Only one public IP the VIP? how it works with wowza balancer?
Thats strange so Origin Server will have all the balance on him and not Edge Servers…
I have this scenario:
10Gb
4 edge servers 10Gb nics connecting 2 origin servers 1Gbit to be redundant.
Wowza Load Balancer is not valid.
can i put Haproxy 10 Gb balancing clients to the 4 edge Servers?