It's possible but tricky. For database replication you can setup a Galera master:master replication cluster (I have done this a few times). This will introduce a bit of latency on DB writes as commit has to happen across all nodes before it is marked as successful.
For files you can use redundant storage pools for your user files i.e. stuff that changes on a glusterfs volume or a CDN and static files can be replicated at your leisure as they would not change until you do an update of sorts (in which case you'll want one as a master and have a cron job to rsync to your nodes).
As per mouth check on licensing requirements, given it's the same 'site' you may get away with one but check nonetheless.
You will also need a dns system that supports geo zoning like rage4, this way your europe traffic is served by your EU server. You can also setup Geo redundancy (as I have) with DNS so if one server goes down it switches to the other. It seems to work well.