An integer programming approach to resource allocation in large-scale server consolidation
Autoren
Mehr zum Buch
Today's data centers offer many different IT services mostly hosted on dedicated and lowly-utilized physical servers. Server virtualization provides a technical means for server consolidation. Thus, multiple virtual servers – including operating systems and applications – can be reliably hosted on a single physical server sharing the same resources. Server consolidation describes the process of combining the workloads of several different source servers on a set of target servers. In this work the focus is on large-scale server consolidation problems as can be regularly found in data centers. Cost considerations, especially energy savings, are among the key drivers for such projects. First, this work presents different decision models to optimally allocate source servers to physical target servers. Important real world constraints with server consolidation are presented and accounted for in our models. The central model is proven to be an NP-hard problem and, therefore, a heuristic is presented in addition to exact solution methods to address large-scale server consolidation projects. Second, adjusted to the consolidation models, a preprocessing method for source server load data is introduced allowing the determination of statistical assurance levels for the sufficiency of resources being assigned to the virtual servers. Third, extensive experiments were conducted based on a large set of server load data from a data center provider focusing on application-oriented issues on what types of problems can be solved. The results show that, on average, server savings of 31 percent can be achieved just by taking cycles in the server workload into account in the optimization.