1. A method for automatic management of a virtualization environment in a computer network, the method comprising: providing a virtualization environment that has a virtualization layer, network resources and virtual assets, the virtual assets including at least one software instantiations of equipment objects in the virtualization environment, the virtualization layer managing the virtual assets; providing a controller coupled to the virtualization environment over a network that communicates with the virtualization layer; determining, using the controller that communicates with the virtualization layer, an inventory of network resources and virtual assets available to the virtualization environment; provisioning, by the controller that communicates with the virtualization layer, the virtual assets from among the available inventory, thereby establishing a provisioned virtualization environment; determining, at the controller, real time performance metrics for the provisioned virtualization environment; receiving a Knowledge Block that specifies parameters that send an alert message to an administrator of the network in response to an alert condition and determines one or more reallocation parameters to be considered with the real time performance metrics in producing the reallocation of assets and wherein the Knowledge Block specifies parameters that detect operational degradation of a member of the available inventory which is halted and removed from the available inventory; automatically determining at the controller for the provisioned virtualization environment under control of the controller, a reallocation of the virtual assets in response to the reallocation parameters and real time performance metrics; initiating, by the controller that communicates with the virtualization layer, the reallocation of the virtual assets in the provisioned virtualization environment.