There are two parts here:
1. Fail over of persistent data (DB, SAN Volume with Video Content etc) 2. Load balancing on stateless web hosts
Issue#2 is very easy to solve, issue#1 is difficult (unless big-budget that makes SAN mirroring feasible across two data centers).
One way to solve these issues is to use AWS / Azure etc. With these:
1. You can use DB and Storage offering provided by Amazon/Google/Azure 1.a : These offering include HA for DB + Storage 1.b: DB is completely managed by provider (scaling / updates / high availability) 1.c: Storage is mounted as a block device and can be formatted as any filesystem (ext3/ext4) 2. For web tier, you can use any Linux AMI and either 2.a: Use load balancer OR 2.b: Setup monitoring to spin up a new VM if primary crashes (or load goes beyond a threshold in web tier VM(s))
With this setup, initial cost in close to Zero and user will not even notice if any component fails over. Say, user is playing a video and Storage fails over. in This scenario:
1. Http server serving video content anyways has to support streaming ( Http 206 for Partial Content, Range, ETag)
2. Player on client side will always ask for video content in small chunks 3. As any tier fails over, next chunk will be served by failed over tier 4. User's data (DB records for authentication/ preferences) will transparently be failed over by provider.
Hope that helps, Shamit
On Fri, Oct 24, 2014 at 3:16 PM, Siji Sunny sijisunny@gmail.com wrote:
Hello All,
We are trying to identify the right approach to do Fail-Over and Load Balancing in Linux server (Centos7), which contains Mariadb(mysql) and web-server (nginx) with some services such as Video On Demand, Games, etc. (streaming through Intranet, not Internet)
Please guide, to select the right technology/solution (Ofcource OpenSource) to do so. Its seems complicated for me because of the dynamic data (eg: If a user watching video and fail over happens, he should get seamless streaming without interruption).
I have considered HA-Cluster (Heartbeat) for Failover and HA-Proxy for load balancing, but still not sure, how to handle dynamic data fail over.
-- Siji Sunny -- http://mm.ilug-bom.org.in/mailman/listinfo/linuxers