? E.g. if I put the code on two servers and let them connect to another database server, would it "just work", or is there any extra work that needs to be done?
You have several components to worry about. 1) Database 2) Code 3) Caches / Search Indexes 4) Assets and uploads. In a load balanced environment you have to work out what to do for each.
First thing to worry about is how to ensure the code is the same on all machines - I have used capistrano to good effect for deploying code to multiple machines.
Next up databases - The usual setup I've had in the ~5 sites with load balancing is have 1 machine dedicated to database and then point the database configuration to that machine.
Dealing with assets and uploads is a little bit tricker depending on if you allow user uploads (say forum signup). One way to implement this is have a file share from the database machine to the individual web servers setup so they all point to the same folder.
Then lastly is the cache - if you don't have anything expensive cached then you can leave the cache generation to the individual servers or you can deploy that with the code deploy but you'll need to test it out.