Green data centers: Using hierarchies for scalable energy efficiency in large web clusters

https://doi.org/10.1016/j.ipl.2013.04.010Get rights and content

Abstract

The growth in the demand for web services requires increasing processing capacity to maintain adequate response time to customer requests and, consequently, results in an increase in the energy consumption to support this infrastructure. This work is directed to the energy saving in large scale web server clusters, towards “green” data center construction. Energy consumption reduction is fundamental due to the economic and environmental aspects involved: energy generation has high costs and produces millions of tons of carbon. However, while saving energy, the quality of service offered to the customers should be maintained above an acceptable minimum level. Our solution involves optimization techniques, the use of Dynamic Voltage and Frequency Scaling technology (DVFS), and the application of a hierarchical architecture that uses a heuristic approach to define the cluster configuration at each instant.

Introduction

The main objective of this work is the reduction of the energy consumed by server clusters of web content providers, while maintaining a contracted SLA (Service Level Agreement). The growth of the demand for these services imposes a larger processing capacity to assist them and, consequently, an increase in the energy consumption to support the necessary infrastructure. It is essential to reduce this consumption due to the economic and environmental aspects involved: energy generation produces millions of tons of carbon at high costs [7].

The energy consumption management of servers can be done in several components, such as: processor, main memory, and disk storage system [7]. We deal with the problem by managing the consumption of the processors using a DVFS (Dynamic Voltage and Frequency Scaling) based strategy, and by turning on and off servers. DVFS uses the capacity of varying the supplied voltage and the operating frequency of the processor. In a brief way, DVFS allows power savings that are approximately proportional to the square or cube of the supply voltage. For more details, see [17].

Server clusters are usually designed to support the applications at their top demand. Therefore, most of the time, servers stay idle and consuming energy [3], [11]. To apply our strategy, the utilization of each one of the processorsʼ cores is periodically collected (this is designated in the remaining of the text as “utilization”). This data is used to define the frequency configuration of the processorsʼ cores, which should maintain the utilization below a certain limit, in a way to offer an appropriate QoS (Quality of Service) and to minimize the energy consumed. However, an exact on-line solution suffers from scalability problems [18]. In this work, we present an alternative to solve this problem, through a hierarchical architecture and a heuristic strategy in the choice of the frequency configuration.

For the validation of our proposal, we made experiments and the results are compared with the optimal solution, obtained through the GLPK package (GNU Linear Programming Kit) [8], and, also, with a well-known off-the-shelf DVFS technique, the OnDemand strategy implemented in the Linux distribution [13].

In the next section we present the contributions of our proposal. The remainder of this paper is as follows: in Section 3 we present related work. In Section 4 we present the problem definition. In Section 5 we describe the hierarchical architecture proposed. In Section 6 we introduce our local DVFS policy. In Section 7 we introduce the heuristic developed for the problem solution. Section 8 was divided in two subsections: in Section 8.1, with deal with the scale problem in the traditional architectures, and in Section 8.2 we show the results for experiments made in a real web cluster. Finally, in Section 9 we present our conclusions and indicate directions for future research.

Section snippets

Contributions

The algorithm used to minimize the power consumption (by capturing the utilization, defining a new distribution for the customersʼ requests among the web servers, and choosing a new frequency configuration for the processorsʼ cores) is based on the NP-hard knapsack problem [16]. In the remaining of the text, we will designate this algorithm by “the solution generation”. Due to variation in the rate of customers requests for web pages, the optimal on-line solution is of difficult application for

Related work

The reduction in the energy consumption in server clusters has become a key point for corporations. A local policy was presented in [13], and it is part of the Linux distribution; this policy is related to the processing load of only one server. In a pioneering work [6], the authors proposed a local policy, Independent Voltage Scaling, as well as a policy to deal with a cluster of homogeneous servers, Coordinated Voltage Scaling. In the same article a strategy to turn on and off servers, in

Problem definition

The traditional architecture of a web server cluster is represented in Fig. 1. In this architecture, the customers make requests for web pages to a single front-end server (S), which distributes the requests among the web servers (Pj), that generate replies to the customers. The processing of these requests, in each one of the servers, generates a processing load, which we name as “utilization” (U). The utilization is captured directly from the local operating system for each one of the

The hierarchical architecture

In our architecture we used the idea of “divide and conquer”. The web servers in the cluster are divided into groups of Pi,j components, that are managed by the Si components shown in Fig. 2 (in the text we use S or segment as convenient). Each processor component (Pi,j) is responsible for the DVFS strategy execution, and the Si components are responsible for the application of the VOVO strategy to their subordinates. The number of Pi,j components is not fixed, and it can be freely defined by

The local DVFS policy

Our local DVFS policy is performed by the Pi,j components. It starts when Si requests the average utilization from its Pi,j components (PUavgi,j), and the PUmini,j (that is computed through the Ulimit and the minimum frequency for each processor, and it represents the minimum utilization necessary to justify the activity of a processor). The Pi,j component captures the CPU utilization of its cores (CUi,j,c,f) in their current frequencies (CFi,j,c,f), where f is the current frequency of corec.

The heuristic strategy

The heuristic strategy is applied by components R and Si to allocate the customersʼ requests among the components under their control (Si and Pi,j, respectively). Our approach privileges turning on and off servers, because, as described in [3], this implies in a larger reduction in energy consumption. “Turning off servers” means, actually, to put them in a sleep mode (S3 state in the ACPI model [2]), allowing for a fast wake. Our strategy arranges the web servers and, consequently, the segments

Experiments

The experiments were conducted in two different ways: with the architecture in its simulation mode (Section 8.1), to evaluate the correctness and the performance of the hierarchy and the heuristic; and using a real cluster, for the evaluation of all strategies together (Section 8.2).

Conclusion

In this work we presented solutions that can solve the issue of scale in managing energy consumption in large clusters of servers. The main features of these solutions are: the division of the problem, that reduced its complexity, and the cooperation in the search for a solution, made by the hierarchy components. Thus, the hierarchical architecture, together with the developed heuristic and the local DVFS strategy, proved to generate good on-line solutions for energy savings in environments of

Acknowledgements

The authors would like to thank the Brazilian research funding agencies Capes, CNPq, and Faperj for the partial support of this work.

References (23)

  • A. Gandhi et al.

    Optimal power allocation in server farms

  • ACPI

    Advanced configuration and power interface

  • D. Meisner et al.

    PowerNap: Eliminating server idle power

    ACM SIGPLAN Notes

    (March 2009)
  • D. Meisner et al.

    Power management of online data-intensive services

  • Electronic Educational Devices

    Watts up PRO

  • E.N. Elnozahy et al.

    Energy-efficient server clusters

  • EPA

    Report to congress on server and data center energy efficiency

    (August 2007)
  • GLPK

    GNU Linear Programming Kit

  • H. Zhang et al.

    Resilient workload manager: Taming bursty workload of scaling internet applications

  • HTTPERF

    Httperf documentation

  • K. Kant

    Toward a science of power management

    IEEE Computer

    (September 2009)
  • Cited by (0)

    View full text