1. A method to be executed at least in part in a computing device for metadata driven automatic deployment of distributed server systems, the method comprising: receiving a topology document at a computing device to be configured, wherein the topology document defines a topology of the system including assigned roles for each server in the system; and automatically configuring the computing device by: discovering a first set of roles activated at the computing device; determining a second set of roles assigned to the computing device from the topology document; deactivating and uninstalling roles included in the first set but not in the second set; installing roles included in the second set, but not in the first set; and activating the installed roles.