To answer your question yes it not only sounds possible but IS possible.
First, i'm guessing by the phrase you purchased 2 Virtual Servers that these are from some hosting company? OK lets assume thats true, you would honestly be better off using one as the database server and one as the web server if you are limited to just the two. If you think you will be having enough traffic to require two web servers then get a third server and run that as your database server. If you do get two web servers, yes you want your code on both servers.
If you really want two web servers and two database servers and only purchase two servers you can NOT run them in active active mode on the same database. Updates can only be sent to one master and then replication can propagate those changes to slaves.
Simple way to load balance is to do round-robin DNS, this is simple, quick, and not very hard to setup and does an OK job at spreading the load. Based on your question I'm making assumptions of your skill level recommending this as a starting point.
This really only scratches the surface and if your serious about this website and honestly believe it will have enough traffic to require a load balanced configuration please find someone who knows the systems side of things to help you.