What is the best way to sync multiple user accounts and home directories over multiple servers, they will all be the same OS. The servers are in different locations around the world, so if one goes down the others are still available. at the moment there are users on one server but if that server goes down there is no way, other than re-creating users and rsyncing the directories over. So just wondering if there is a better way? I haven't used LDAP but could this be a job for it or not?
I'd recommend starting to use a config management system (Puppet and Chef are two good options at the moment) to deploy user/group data to your servers.
Ideally, you'd have one central LDAP or NIS server, but due to your distributed nature, using a config management system to keep your local user/group databases in sync would be a better option for you.
You can use LDAP for central user management, with replicas on all servers. And some cluster filesystem for the home directories, like: GlusterFS or XtreemFS.
You need to weigh the cost of setting up the LDAP server vs the number of users. As others have noted, if you only have a few users, stick to the easy solution.
If you want a LDAP setup, it is also possible to configure your LDAP server in replication across sites and to set the local machines to their local LDAP.
Instructions for OpenLDAP replication.