Managing energy and server resources in hosting centers
Summary (4 min read)
1. INTRODUCTION
- Hosting centers face familiar operating system challenges common to any shared computing resource.
- Several research projects address these challenges for networks of servers; Section 7 surveys related research.
- This paper investigates the policies for allocating resources in a hosting center, with a principal focus on energy management.
- Section 5 outlines the Muse prototype, and Section 6 presents experimental results.
- Section 7 sets their approach in context with related work.
3. OVERVIEW OF MUSE
- Switches dynamically redirect incoming request traffic to eligible servers.
- Each hosted service appears to external clients as a single virtual server, whose power grows and shrinks with request load and available resources.
- The "brain" of the hosting center OS is a policy service that dynamically reallocates server resources and reconfigures the network to respond to variations in observed load, resource availability, and service value.
3.2 Redirecting Switches
- The authors system uses reconfigurable server switches as a mechanism to support the resource assignments planned by the executive.
- Muse switches maintain an active set of servers selected to serve requests for each network-addressable service.
- The switches are dynamically reconfigurable to change the active set for each service.
- Since servers may be shared, the active sets of different services may overlap.
- The switches may use load status to balance incoming request traffic across the servers in the active set.
3.4 Energy-Conscious Provisioning
- One potential concern with this approach is that power transitions (e.g., disk spin-down) may reduce the lifetime of disks on servers that store data locally, although it may extend the lifetime of other components.
- One solution is to keep servers stateless and leave the network storage tier powered.
- A second concern is that power transitions impose a time lag ranging from several seconds to a minute.
4. THE RESOURCE ECONOMY
- The executive's goal of maximizing resource efficiency corresponds to maximizing profit in this economic formulation.
- Crucially, customer utility is defined in terms of delivered performance, e.g., as described in Section 4.1 below.
- The number of resource units consumed to achieve that performance is known internally to the system, which plans its resource assignments by estimating the the value of the resulting performance effects as described in Section 4.3.
- Section 4.4 addresses the problem of obtaining stable and responsive load estimates from bursty measures.
4.1 Bids and Penalties
- Since utilization is an excellent predictor of service quality , the SLA can specify penalties in a direct and general way by defining a maximum target utilization level p~,~rg~ for the allotted resource.
- Suppose that #i is the portion of its allotment #i that customer i uses during some interval, which is easily mea-sured.
- The penaltyi function could increase with the degree of the shortfall rl/#i, or with the resulting queuing delays or stretch factor [47] .
- The center must balance the revenue increase from overbooking against the risk of incurring a penalty.
- Similar tradeoffs are made for seat reservations on American Airlines [37] .
4.3 Estimating Performance Effects
- The optimization problem is in general nonlinear unless the utility functions are also linear.
- It is interesting to note that linear utility functions correspond almost directly to a priority-based scheme, with a customer's priority given by the slope of its utility function scaled by its average per-request resource demand.
- The relative priority of a customer declines as its allotment approaches its full resource demand; this property allocates resources fairly among customers with equivalent priority.
4.4 Feedback and Stability
- Fortunately, persistent load swells and troughs caused by shifts in population tend to occur on the scale of hours rather than seconds, although service popularity may increase rapidly due to advertis- ).
- Even during steady load, this bursty signal varies by as much as 40% between samples.
- For comparison, the authors plot the output from an EWMA filter with a heavily damped a = 7/8, the filter used to estimate TCP round-trip time [21] .
- The flop-flip filter is less agile than the EWMA or flip-flop; its signal is shifted slightly to the right on the graph.
- The step effect reduces the number of unproductive reallocations in the executive, and yields stable, responsive behavior in their environment.
4.5 Pricing
- An important limitation of their framework as defined here is that customers do not respond to the price signals by adjusting their bids or switching suppliers as the resource congestion level varies.
- Thus, the system is "economic" but not "microeconomic".
- Utility functions are revealed in full to the supplier and the bids are "sealed", i.e., they are not known to other customers.
- While this allows a computationally efficient "market", there is no meaningful competition among customers or suppliers.
- The authors approach could incorporate competition by allowing customers to change their bid functions in real time; if the new utility function meets the concavity assumption then the system will quickly converge on a new utility-maximizing resource assignment.
4.6 Multiple Resources
- The authors approach could extend to manage multiple resources given support in the server node OS for enforcing assignments of disk, memory, and network bandwidth [44, 40, 30] .
- Economic problems involving multiple complementary goods are often intractable, but the problem is simplified in Muse because customer utility functions specify value indirectly in terms of delivered performance; the resource allotment to achieve that performance need not be visible to customers.
- Only adjustments to the bottleneck resource (the resource class with the highest utilization) are likely to affect performance for services with many concurrent requests.
- Once the bottleneck resource is provisioned correctly, other resources may be safely reclaimed to bring their utilization down to ptarget with-OUt affecting estimated performance or revenue.
5. PROTOTYPE
- The Muse prototype includes a user-level executive server and two loadable kernel modules for the FreeBSD operating system, implementing a host-based redirecting server switch and load monitoring extensions for the servers.
- In addition, the prototype uses the Resource Containers kernel modules from Rice University [10, 8] as a mechanism to allocate resources to service classes on individual servers.
- The following subsections discuss key elements of the prototype in more detail.
5.1 Monitoring and Estimation
- If a service is not reaching the target utilization level for its resource allotment (pi < ptarget), but smoothed queue lengths exceed a threshold, then the monitor assumes that the service is I/O bound.
- The authors prototype adapts by dropping the ptarget for that service to give it a larger share of each node and avoid contention for I/O.
- Once the ptarget is reached, the system gradually raises it back to the default, unless more queued requests appear.
- Queued requests may also result from transient load bursts or sluggish action by the executive to increase the allotment when load is in an uptrend.
- The adjustment serves to temporarily make the executive more aggressive.
5.2 The Executive
- The cluster adapts only when the executive is functioning, but servers and switches run autonomously if the executive fails.
- The executive may be restarted at any time; it observes the cluster to obtain adequately smoothed measures before taking action.
5.3 The Request Redirector
- The redirector also gathers load information (packet and connection counts) from the redirected connections, and maintains active server sets for each registered service endpoint.
- The active sets are lists of (lPaddr, TCPport) pairs, allowing sharing of an individual server by multiple services.
- Active set membership is controlled by the executive and its actuator, which connects to the redirector through a TCP socket and issues commands using a simple protocol to add or remove servers.
- This allows the executive to dynamically recortfigure the sets for each service, for example, to direct request traffic away from retired (off-power) servers and toward recruited servers.
6. EXPERIMENTAL RESULTS
- This section presents experimental results from the Muse prototype to show the behavior of dynamic server resource management.
- The authors experiments use a combination of synthetic traffic and real request traces.
- SURGE generates highly bursty traffic characteristic of Web workloads, with heavy-tailed object size distributions so that per-request service demand is highly variable.
- These factors stress the prototype's load estimation and resource allocation algorithms.
- Also, the authors can generate synthetic load "waves" with any amplitude and period by modulating the number of generators.
6.2 Allocation Under Constraint
- The second experiment in Figure 9 is identical to the first, except that the utility functions are reversed so that the fixed sO bids higher than sl.
- The behavior is similar when there are sufficient resources to handle the load.
- During the sl swells the executive preserves the allocation for the higher-bidding sO, doling out most of the remaining resources to sl.
7. R E L A T E D W O R K
- Previous research on power management focuses on mobile systems, which are battery-constrained.
- One aspect the authors have not investigated in the server context is the role of application-specific adaptation to resource constraints [31, 17, 30, 2] .
- Most approaches used exponential moving averages of point samples or average resource utilization over some sample period [23, 27, 2, 9, 8] .
- Kim and Noble have compared several statistical methods for estimating available bandwidth on a noisy link [25] ; their study laid the groundwork for the "flop-flip" filter in Muse.
Did you find this useful? Give us your feedback
Citations
2,511 citations
Cites background or methods from "Managing energy and server resource..."
...As in [8], two power saving techniques are applied: switching power of computing nodes on / off and Dynamic Voltage and Frequency Scaling (DVFS)....
[...]
...Despite the variable nature of the workload, unlike [8], the resource usage data are not approximated, which results in potentially inefficient decisions due to fluctuations....
[...]
...[8] have considered the problem of energyefficient management of homogeneous resources in Internet hosting centers....
[...]
2,047 citations
Cites background from "Managing energy and server resource..."
...[6] treat energy as a resource to be scheduled by a hosting center’s management infrastructure, and propose a scheme that can reduce energy us-...
[...]
1,938 citations
1,528 citations
1,002 citations
Cites background from "Managing energy and server resource..."
...dynamic voltage and frequency scaling (DVFS) nearly eliminate processor power consumption in idle systems, presentday servers still dissipate about 60% as much power when idle as when fully loaded [4,6,13]....
[...]
References
5,620 citations
1,549 citations
1,180 citations
882 citations
"Managing energy and server resource..." refers background in this paper
..., cooling failure) in a manner similar to dynamic thermal management [13] within an individual server....
[...]
...thermal management for individual servers [13]....
[...]
827 citations
"Managing energy and server resource..." refers background in this paper
...A good load estimator must balance stability—to avoid overreacting to transient load fluctuations—with agility to adapt quickly to meaningful load shifts [31, 25]....
[...]
...One aspect we have not investigated in the server context is the role of application-specific adaptation to resource constraints [31, 17, 30, 2]....
[...]