1. A system for executing a maintenance operation on a virtual machine (VM), the system comprising: a host computing device comprising: a first VM and a second VM; a maintenance application installed within the first VM; and an optimization framework providing an interface to the maintenance application, wherein the optimization framework comprises a framework agent and a plurality of framework application programming interfaces; and an optimization server coupled to the maintenance application through the optimization framework, wherein the optimization server comprises a processor that is programmed to: select a maintenance operation to execute on the second VM; command the maintenance application to execute the maintenance operation on the second VM; and receive the results of the maintenance operation.