Load balancing 3 front ends, how to sync data/content
I have a cluster of Raspberry Pi’s and BeagleBone Blacks load balancing my website using nginx. The LB works perfectly well. Problem is, if I log into http://www.beagle-pi.com/wp-admin and add a new post and upload an image to it, only the node that I’ve landed on is going to get that image. I have a couple options in my mind:
1) Setup the load balancer to not load balance http://www.beagle-pi.com/wp-admin requests and land on one node all the time for that URL. I can then make posts/upload content from there and run a scheduled rsync task to push out the changes from /var/www/html/wp-content/uploads/… to the other nodes. Problem with this is that the content will be out of sync until that task completes. So, I either need to schedule the task frequently or deal with content issues.
2) Glusterfs – I tried to run a gluster clustered file system. It worked well, but the Raspi’s are too slow to utilize it and it made loading sites a bit slow.
3) NFS share as the content location that all web front ends load from. Tried this, and again, now the hops for http://www.beagle-pi.com are firewall, load balancer, node, NAS, and back out. Its a bit lame.
Any thoughts on how to sync content between load balanced front end servers? MySQL is running on another cluster and does not slow down this processes since it is off-loaded. Are there any plugins within WordPress that detect new content and copy out?
- The topic ‘Load balancing 3 front ends, how to sync data/content’ is closed to new replies.