1. A method for controlling resource allocation comprising: determining a service metric associated with a first application, said first application associated with one or more virtual machines; comparing said service metric to an application specific service level goal associated with said first application; and modifying a resource allocation associated with said first application at one or more of said virtual machines.