Skip to Main Content
The ever-increasing size and complexity of cloud computing, data centers, virtualization, web services, and other forms of distributed computing make automated and effective service management increasingly important. This article treats the service placement problem as a novel generalization of the on-line vector packing problem. This generalization of the service placement problem does not require a priori knowledge of the service resource profiles, allows for resource profiles to change over time, and allows services to be moved once placed on a server. An on-line self-organizing model profiles resource supplies and demands arranging services in a placement based on their resulting quality rating. A policy-driven asymmetric matrix norm quantifies the quality of the placement allowing for administrative preferences regarding service performance versus service inclusion. Service resource usage profiles' variations cause changes in their assigned placement quality; forcing new, better server placements to be found. Because some placements perform better, a proportional integral derivative controller for performance feedback adjusts the services' actual profile according to service's individual response times. This large scale system autonomically organizes placement of services in response to changes in demand and network disruptions. This article presents theorems which demonstrate the theoretical basis for the model. The article includes empirical results from the implementation of this model in a self-organizing testbed of web servers and services.