1. A computer-implemented method for deploying a set of virtual software resource templates to a plurality of nodes, the computer-implemented method comprising: identifying a set of virtual machine images and metadata to form the set of virtual software resource templates; creating a model that indicates a performance metric based on a number of nodes on which a number of virtual machine images is deployed, wherein the number of nodes is in the plurality of nodes, and wherein the number of virtual machine images is in the set of virtual machine images; receiving a quality of service requirement; determining, using the model, a number of virtual software resource templates in the set of virtual software resource templates and a number of nodes in the plurality of nodes to fulfill the quality of service requirement; and deploying the number of virtual software resource templates on the number of nodes using the metadata.