Web Server Cluster
I need to build a 3 node web server cluster to run a php application.
Since the app requires users to login (which means a session state is to be maintained), I will be sharing sessions save path, I also need to share the application directory across 3 nodes.
I having trouble deciding which cluster file system to select. Can anyone guide me here?
There is no need for a shared filesystem.
In fact, this might be a SPOF in itself and will probably not scale too well.
For a first step, you just need to make sure, that a user always connects to the same backend node.
BalanceNG: The Software Load Balancer can do that via session persistence.
As long as all nodes are up (and that hopefully means: a user always gets the same node), all is well.
A step further is to use e.g. memcache for session storing:
Enhance PHP session management
You probably want to add at least two memcache servers and a adjusted timeout interval, etc to the session.save_path
If you need something a little smarter than memcache, have a look at Redis
And of course, it would make sense that balanceng is redundant.