The present invention is directed to provisioning and managing computing
services in a computing utility system. It receives as an input an
infrastructure independent description of a set of requirements on the
new desired state of a computing service. It uses a knowledge plane to
represent the infrastructure. The method generates a Concrete Model that
describes a resource structure that refines the input and is
implementable over the infrastructure. It then generates and possibly
executes provisioning actions to create an identical resource structure
on the infrastructure. The method can be used to create new computing
services, to destroy existing computing services, to modify the resource
combinations allocated to a computing service, or the configuration of
these resources. Provisioning actions can be executed immediately, or
saved and executed later, and possibly many times. Provisioning actions
may be regenerated using the method whenever infrastructure
characteristics, or the service requirements change.