Patent ID: 7945669

Claim:
A method, of provisioning at least a portion of a computer system to meet a specification provided in a provisioning request, the method comprising: reading the provisioning request, wherein the provisioning request includes physical requirements for one or more storage elements and requirements relating to a logical association of the one or more storage elements; and automatically provisioning the at least a portion of the computer system to meet the specification provided in the provisioning request, including automatically provisioning at least one-resource from at least one host computer, at least one resource from at least one storage system, and at least one resource from at least one connectivity resource that connects the at least one host computer to the at least one storage system, wherein the provisioning request specifies a provisioning preference and said automatically provisioning attempts to implement the provisioning request satisfying the provisioning preference, and if unable to implement the provisioning request and satisfy the provisioning preference, said automatically provisioning includes processing to implement the provisioning request without satisfying the provisioning preference, wherein said automatically provisioning further includes performing first processing, said first processing including: selecting a set of one or more resources; determining whether the set satisfies the physical requirements, wherein if it is determined that the set does not satisfy the physical requirements, the physical requirements are modified, another set of one or more resources is selected, and it is determined whether the another set satisfies the modified physical requirements; and wherein, after a first set of resources is determined that satisfies the physical requirements or a modified set of the physical requirements, it is determined whether the first set also satisfies the requirements relating to a logical association, and wherein if it is determined that the first set does not satisfy the requirements relating to a logical association, any of the physical requirements and the requirements relating to a logical association are modified, and additional processing is performed to select resources satisfying the provisioning request.