1. A method for capability-based resource allocation in a software-defined environment, the method comprising: determining a set of capability characteristics for a plurality of workload resources within a software-defined environment; determining a set of workload components for a specified workload; and identifying a set of workload resources from the plurality of workload resources to allocate to the specified workload based, at least in part, on the set of capability characteristics corresponding to each workload within the set of workload resources; wherein: a workload component of the set of workload components has a unique set of workload characteristics; and at least the identifying step is performed by computer software running on computer hardware.