Transcript datacenters

University of Massachusetts
Prof. Prashant Shenoy
Upendra Sharma
Rahul Singh
Gabriel Tarasuk-Levin
Timothy Wood
Modern Data Centers
Research Goals
Data centers consist of server clusters with fast network interconnects running
diverse applications. A data center may host thousands of applications with
varying traffic loads.
Improve data center efficiency and simplify management through virtualization.
Develop analytic models of application resource consumption and performance.
Automate resource management and system monitoring tasks to eliminate error
prone, labor intensive administration tasks.
Must allocate resources to each application in order to meet Service-level
Agreements (SLAs) that describe performance guarantees.
Application Workload-mix
Provisioning
Engine
Workload
Predictor
VM
VM
VM
VM
VM
VM
Monitor and Adjust:
Monitor resource utilization of VMs and adjust RAM/CPU
resources based on workload requirements.
Migrate to avoid hotspots:
Automatically detect server overload and transparently
migrate VMs between physical servers.
Server Consolidation:
Virtual machines must be carefully placed on physical
servers
VM Replication:
We are exploring how virtual machine replication can add
a new dimension to resource provisioning.
Solid State Storage:
Solid state flash drives can be used to allow virtual
machines to be saved and restored very quickly, allowing
for rapid server initialization.
…
Application Tier
VM
Tier 2 Workload-mix
Classifier
VM based Data Center:
Each service is run in a VM. Each server in the data
center runs multiple VMs.
VM
Tier 1 Workload-mix
System
Model
Virtualization in Data Centers
…
VM
VM
VM
…
VM
Dynamic Provisioning of
Multi-tier Applications
Model Based Provisioning:
Combines workload and system models to guide dynamic
resource allocation for multi-tier applications.
Workload Classifier:
Identifies key attributes of input requests which can be
used for clustering and thereafter classification of request
classes.
System Model:
Predicts average response-time for a given workload mix.
Workload Predictor:
Considers short-term and long-term variations in load and
historical-patterns to estimate future workload
characteristics.
Provisioning Engine:
Alters the server capacity according to the forecast made
by the capacity planner.
Monitoring and Modeling
System Monitoring:
Data centers host thousands of applications, requiring
large scale, low overhead monitoring.
Data Mining Application Logs:
Application logs can be mined for clues about application
activities and workload characteristics.
Application Modeling:
We create models which relate application resource
utilization and performance to incoming workload
characteristics.
Resource Prediction:
The application models can be used to answer “what if”
scenarios about how application performance will change
under hypothetical workloads.
Modeling Virtualized Applications:
We have developed models of how virtualization
overheads vary based on the types of I/O performed by an
application.