Autonomic computing is inspired in the human autonomic nervous system: â âThe autonomic nervous system consists of sensory neurons and motor neurons ...
Autonomic Computing Daniel A. Menascé Department of Computer Science George Mason University 1 © 2007 D.A. Menasce. All Rights Reserved.
Credits • My former Ph.D. students: – Mohamed Bennani, Oracle – Ron Dodge, West Point
2 © 2007 D.A. Menasce. All Rights Reserved.
Motivation for AC • “…main obstacle to further progress in IT is a looming software complexity crisis.” (from an IBM manifesto, Oct. 2001). – Tens of millions of lines of code – Skilled IT professionals required to install, configure, tune, and maintain. – Need to integrate many heterogeneous systems – Limit of human capacity being achieved 3 © 2007 D.A. Menasce. All Rights Reserved.
Motivation for AC (cont’d) • Harder to anticipate interactions between components at design time: – Need to defer decisions to run time
• Computer systems are becoming too massive, complex, to be managed even by the most skilled IT professionals • The workload and environment conditions tend to change very rapidly with time 4 © 2007 D.A. Menasce. All Rights Reserved.
Multi-scale time workload variation of a Web Server 3600 sec
60 sec
1 sec 5 © 2007 D.A. Menasce. All Rights Reserved.
Self-Optimizing Systems • Complex middleware and database systems have a very large number of configurable parameters. Web Server (IIS 5.0) HTTP KeepAlive Application Protection Level Connection Timeout Number of Connections Logging Location Resource Indexing Performance Tuning Level Application Optimization MemCacheSize MaxCachedFileSize ListenBacklog MaxPoolThreads worker.ajp13.cachesize
Application Server
Database Server
(Tomcat 4.1) acceptCount
(SQL Server 7.0) Cursor Threshold
minProcessors maxProcessors
Fill Factor Locks Max Worker Threads Min Memory Per Query Network Packet Size Priority Boost Recovery Interval Set Working Set Size Max Server Memory Min Server Memory User Connections
6 © 2007 D.A. Menasce. All Rights Reserved.
Autonomic Computing • System that can manage themselves given high-level objectives. – High-level objectives can be expressed in term of servicelevel objectives or utility functions.
• Autonomic computing is inspired in the human autonomic nervous system: – “The autonomic nervous system consists of sensory neurons and motor neurons that run between the central nervous system and various internal organs such as the: heart, lungs, viscera, glands. It is responsible for monitoring conditions in the internal environment and bringing about appropriate changes in them. The contraction of both smooth muscle and cardiac muscle is controlled by motor neurons of the autonomic system.” http://users.rcn.com/jkimball.ma.ultranet/BiologyPages/P/PNS.html
– The autonomic nervous system functions in an involuntary, reflexive manner. 7 © 2007 D.A. Menasce. All Rights Reserved.
Autonomic Systems • Self-managing – Self-configuring – Self-optimizing – Self-healing – Self-protecting
• Self-* systems
8 © 2007 D.A. Menasce. All Rights Reserved.
Self-optimizing systems: motivation 1
Software threads
2 . . .
Arriving requests queue for threads
M cpu disk
Q: How does the response time vary with the number of software threads, M? © 2007 D.A. Menasce. All Rights Reserved.
9
2.5
Obs: For each workload level there is an optimal number of threads.
Response Time (sec)
2.0
1.5
1.0
0.5
0.0 0
5
10
15
20
25
Number of Threads
L=1 © 2007 D.A. Menasce. All Rights Reserved.
L=2
L=3
L=3.5
SLA
(M) 10
30
Workload and QoS metrics Computer system Workload: • transactions • HTTP requests • video downloads • calls to Call Center
QoS metrics: • response time • throughput • availability • page download time • revenue throughput • abandonment rate 11
© 2007 D.A. Menasce. All Rights Reserved.
Self-optimizing System Computer system Workload: • transactions • HTTP requests • video downloads • calls to Call Center
Controller
QoS metrics: • response time • throughput • availability • page download time • revenue throughput • abandonment rate
Service Level Objectives © 2007 D.A. Menasce. All Rights Reserved.
12
Self-optimizing System Computer system Monitoring
Workload: • transactions • HTTP requests • video downloads • calls to Call Center
Monitoring
Controller
QoS metrics: • response time • throughput • availability • page download time • revenue throughput • abandonment rate
Service Level Objectives © 2007 D.A. Menasce. All Rights Reserved.
13
Self-optimizing System Computer system Workload: • transactions • HTTP requests • video downloads • calls to Call Center
Parameter Change
Controller
QoS metrics: • response time • throughput • availability • page download time • revenue throughput • abandonment rate
Service Level Objectives © 2007 D.A. Menasce. All Rights Reserved.
14
Examples of Autonomic Computing Systems • E-commerce system • Internet Data Center • Virtualized Environment
15 © 2007 D.A. Menasce. All Rights Reserved.
Examples of Autonomic Computing Systems • E-commerce system • Internet Data Center • Virtualized Environment
16 © 2007 D.A. Menasce. All Rights Reserved.
Multi-tier Architecture
17 © 2007 D.A. Menasce. All Rights Reserved.
arriving requests
(6)
E-commerceSystem System Computer
(12)
(1)
Service Demand Computation
(7)
QoS Controller Algorithm
(2)
QoS goals
(5) (8)
Workload Analyzer (3)
QoS Controller © 2007 D.A. Menasce. All Rights Reserved.
completing requests
(10)
(9)
(11)
Performance Model Solver (4)
18
arriving requests
Ui
(6)
E-commerceSystem System Computer
X0
(12)
(1)
Service Demand Computation
(7)
QoS Controller Algorithm
(2)
QoS goals
(5) (8)
Workload Analyzer (3)
QoS Controller © 2007 D.A. Menasce. All Rights Reserved.
completing requests
(10)
(9)
(11)
Performance Model Solver (4)
19
arriving requests
(6)
Ui
Di = U i / X 0
E-commerceSystem System Computer
X0
(12)
(1)
Service Demand Computation
(7)
QoS Controller Algorithm
(2)
QoS goals
(5) (8)
Workload Analyzer (3)
QoS Controller © 2007 D.A. Menasce. All Rights Reserved.
completing requests
(10)
(9)
(11)
Performance Model Solver (4)
20
arriving requests
(6)
E-commerceSystem System Computer
(12)
(1)
Service Demand Computation
(7)
QoS Controller Algorithm
(2)
QoS goals
(5) (8)
Workload Analyzer (3)
QoS Controller © 2007 D.A. Menasce. All Rights Reserved.
completing requests
(10)
(9)
(11)
Performance Model Solver (4)
21
arriving requests
(6)
E-commerceSystem System Computer
(12)
(1)
Service Demand Computation
(7)
QoS Controller Algorithm
(2)
QoS goals
(5) (8)
Workload Analyzer
(10)
QoS Controller
(11)
Performance Model Solver
(9)
(3)
© 2007 D.A. Menasce. All Rights Reserved.
completing requests
(4)
22
arriving requests
(6)
E-commerceSystem System Computer
(12)
(1)
Service Demand Computation
(7)
QoS Controller Algorithm
(2)
QoS goals
(5) (8)
Workload Analyzer (3)
QoS Controller © 2007 D.A. Menasce. All Rights Reserved.
completing requests
(10)
(9)
(11)
Performance Model Solver (4)
23
Controller Interval reconfiguration commands
i-th interval
reconfiguration commands
reconfiguration commands
(i+1)-th interval
measurements from measurements from servers in e-commerce servers in e-commerce site. site. controller algorithm 24 © 2007 D.A. Menasce. All Rights Reserved.
Self-Optimization Approach Server Parameter 2
Current configuration
• The space of configuration points is searched using combinatorial search techniques. • Each point has a QoS value computed through an analytic performance model.
Server Parameter 1 25 © 2007 D.A. Menasce. All Rights Reserved.
Self-Optimization Approach Server Parameter 2
New configuration
• The space of configuration points is searched using combinatorial search techniques. • Each point has a QoS value computed through an analytic performance model.
Server Parameter 1 26 © 2007 D.A. Menasce. All Rights Reserved.
Self-Optimization Approach Server Parameter 2
• The space of configuration points is searched using a combinatorial search technique. • Each point has a QoS value computed through an analytic performance model.
Server Parameter 1
r QoS = f (W , c1 , c2 ,..., cm ) 27
© 2007 D.A. Menasce. All Rights Reserved.
A Queuing Model is Used to Compute QoS Values
28 © 2007 D.A. Menasce. All Rights Reserved.
Combined QoS Metric QoS = wR QoS R + wP QoS P + w X QoS X wR, wP , and w X are relative weights that indicate the relative importance of response time, throughput, and probability of rejection.
29 © 2007 D.A. Menasce. All Rights Reserved.
QoS Metric QoS = wR QoS R + wP QoS P + w X QoS X wR, wP , and w X are relative weights that indicate the relative importance of response time, throughput, and probability of rejection.
QoS R
QoS P QoS X are relative deviations of the response time, throughput, and probability of rejection metrics with respect to their desired levels.
30 © 2007 D.A. Menasce. All Rights Reserved.
QoS Metric QoS = wR QoS R + wP QoS P + w X QoS X wR, wP , and w X are relative weights that indicate the relative importance of response time, throughput, and probability of rejection.
QoS R , QoS P , and QoS X are relative deviations of the response time, throughput, and probability of rejection metrics with respect to their desired levels. The QoS metric is a dimensionless number in the interval [-1, 1].
31 © 2007 D.A. Menasce. All Rights Reserved.
QoS Metric QoS = wR QoS R + wP QoS P + w X QoS X wR, wP , and w X are relative weights that indicate the relative importance of response time, throughput, and probability of rejection.
QoS R, QoS P , and QoS X are relative deviations of the response time, throughput, and probability of rejection metrics with respect to their desired levels. The QoS metric is a dimensionless number in the interval [-1, 1]. If all metrics meet or exceed their QoS targets, QoS 0. 32 © 2007 D.A. Menasce. All Rights Reserved.
Response Time Deviation Rmax Rmeasured QoS R = max( Rmax , Rmeasured ) • = 0 if the response time meets its target. • > 0 if the response time exceeds its target. • < 0 if the response time does not meet its target. K
• QoS R 1 ( Di ) / Rmax < 1 i =1
• 1 < (1 Rmax / Rmeasured ) QoS R 33 © 2007 D.A. Menasce. All Rights Reserved.
Probability of Rejection Deviation Pmax Pmeasured QoS P = max( Pmax , Pmeasured ) • = 0 if the probability of rejection meets its target. • > 0 and 1 if the probability of rejection exceeds its target. • < 0 and -1 if the probability of rejection does not meet its target.
34 © 2007 D.A. Menasce. All Rights Reserved.
Throughput Deviation * min * min
X measured X QoS X = max( X measured , X
)
* • X min = min( , X min ) • = 0 if the throughput meets its target. • > 0 and < 1 if the throughput exceeds its target. • < 0 and > -1 if the throughput does not meet its target.
35 © 2007 D.A. Menasce. All Rights Reserved.
Prototype Configuration
TPC-W site
QoS Controller
Database Server
Web Server
Application Server
100 Mbps Hub
Workload Generator Workstation © 2007 D.A. Menasce. All Rights Reserved.
36
Experiment Results Arrival rate 100 90 80
Arrival Rate (requests/sec)
70 60 50 40 30 20 10 0 0
5
10
15
20
25
30
35
Time (Controller Intervals)
37 © 2007 D.A. Menasce. All Rights Reserved.
Results of QoS Controller 0.8
0.6
0.4
QoS
0.2
14 .4 14 .0 14 .4 41 .3 38 .1 36 .6 62 .2 61 .5 63 .5 77 .3 80 .4 78 .5 83 .8 85 .7 85 .9 88 .2 88 .3 89 .2 90 .0 90 .3 89 .5 85 .7 81 .4 83 .7 79 .0 75 .9 73 .5 66 .2 64 .1 64 .4
0.0
-0.2
-0.4
-0.6
-0.8
Arrival Rate (req/sec)
Controlled QoS
Uncontrolled QoS
38 © 2007 D.A. Menasce. All Rights Reserved.
Experiment Results Arrival rate 100
QoS is not met!
90 80
Arrival Rate (requests/sec)
70 60 50 40 30 20 10 0 0
5
10
15
20
25
30
35
Time (Controller Intervals)
39 © 2007 D.A. Menasce. All Rights Reserved.
Examples of Autonomic Computing Systems • E-commerce system • Internet Data Center • Virtualized Environment
40 © 2007 D.A. Menasce. All Rights Reserved.
Motivation for Dynamic Resource Allocation in Data Centers • Large data centers host several application environments (AEs) • AEs run customers’ applications (either online transactions or batch processes) on assigned servers (resources) • AEs are subject to workloads that exhibit wide and unpredictable variations in their intensities • Resources need to be redeployed dynamically among AEs to optimize some global utility function
41 © 2007 D.A. Menasce. All Rights Reserved.
Dynamic Resource Allocation Problem (cont’d) • The data center has the following characteristics: – – – –
M Application Environments (batch and online) A fixed number, N, of physical resources (servers) All servers have the same installed software A server can be assigned to any AE
42 © 2007 D.A. Menasce. All Rights Reserved.
Dynamic Resource Allocation Two-level Controllers Decides how many servers to assign to each AE.
Global Controller
Local Controller
Local Controller
Server Server
Server Server
Server
Server
Application Environment 1
Application Environment M
© 2007 D.A. Menasce. All Rights Reserved.
Implements Global Controller’s decisions.
43
Dynamic Resource Allocation Problem – Utility Functions • The global controller uses a global utility function, Ug, to assess the adherence of the overall data center performance to desired service levels (SLAs) U g = h(U1 ,..., U M ) Si
U i = ai , s U i , s
U s =1
0 < ai , s < 1 Si
a
i,s
s =1
© 2007 D.A. Menasce. All Rights Reserved.
=1 44
Utility Function as a Function of the Response Time 100 90 80 70
Utility
60
U i,s =
50
K i,s e 1+ e
Ri ,s + i ,s
Ri ,s + i ,s
40 30 20 10 0 0
2
4
6
8
10
12
14
Response Time (sec) 45 © 2007 D.A. Menasce. All Rights Reserved.
Utility Function as a Function of the Throughput 100 90 80 70
Utility
60 50 40 30
U i,s
20
1 1 = K i,s X i ,s + i ,s i ,s 1+ e 1+ e
10 0 0
1
2
3
4
Throughput (tps) © 2007 D.A. Menasce. All Rights Reserved.
5
6
7
46
Workload Variation for Online AEs 140
Arrival Rate (tps)
120 100 80 60 40 20
29
27
25
23
21
19
17
15
13
11
9
7
5
3
1
0
Control Interval Lambda1,1
Lambda1,2
Lambda1,3
Lambda2,1
Lambda2,2 47
© 2007 D.A. Menasce. All Rights Reserved.
Response Times for Class 1 of AE 1 0.40 0.35
Resp. Time (sec)
0.30 0.25 0.20 0.15 0.10 0.05 0.00 1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
Control Interval R1,1 (no controller)
R1,1 (controller) 48
© 2007 D.A. Menasce. All Rights Reserved.
Response Times for Class 2 of AE 1 0.35 0.30
Resp. Time (sec)
0.25 0.20 0.15 0.10 0.05 0.00 1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
Control Interval R1,2 (no controller)
R1,2 (controller) 49
© 2007 D.A. Menasce. All Rights Reserved.
Response Times for Class 3 of AE 1 0.40 0.35
Resp. Time (sec)
0.30 0.25 0.20 0.15 0.10 0.05 0.00 1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
Control Interval R1,3 (no controller)
R1,3 (controller) 50
© 2007 D.A. Menasce. All Rights Reserved.
Variation of the Number of Servers 14 12
No. Servers
10 8 6 4 2
29
27
25
23
21
19
17
15
13
11
9
7
5
3
1
0
Control Interval N1 (no controller) N2 (controller)
N1 (controller) N3 (no controller)
N2 (no controller) N3 (controller) 51
© 2007 D.A. Menasce. All Rights Reserved.
Variation of Global Utility 99 98 97
Ug
96 95 94 93 92 91
29
27
25
23
21
19
17
15
13
11
9
7
5
3
1
90
Control Interval No Controller
With Controller 52
© 2007 D.A. Menasce. All Rights Reserved.
CPU Utilization for Servers in AE 1 0.6
0.5
Ucpu
0.4
0.3
0.2
0.1
0 1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
Control Interval No controller
With controller 53
© 2007 D.A. Menasce. All Rights Reserved.
Examples of Autonomic Computing Systems • E-commerce system • Internet Data Center • Virtualized Environment
54 © 2007 D.A. Menasce. All Rights Reserved.
Autonomic Virtualized Environments •
OSs (guest OSs) run in user mode and the VMM runs in supervisor mode App 1
•
Advantages of virtualization: – Increased security and reliability – Reduced cost – Better maintenance – Easy support for legacy systems – Load balancing
App 2
OS 1
App 1
App1
App2
App3
OS 2
Virtual Machine Monitor •
•
Virtual machines are allocated the CPU based on their priority or assigned CPU shares
Hardware
Examples: VMWare, Sun Zones, Xen, IBM LPARs. 55
© 2007 D.A. Menasce. All Rights Reserved.
Autonomic Virtualized Environments •
OSs (guest OSs) run in user mode and the VMM runs in supervisor mode App 1
•
Advantages of virtualization: – Increased security and reliability – Reduced cost – Better maintenance – Easy support for legacy systems – Load balancing
App 2
OS 1
App 1
App1
App2
App3
OS 2
Virtual Machine Monitor •
•
Virtual machines are allocated the CPU based on their priority or assigned CPU shares
Hardware
Examples: VMWare, Sun Zones, Xen, IBM LPARs. 56
© 2007 D.A. Menasce. All Rights Reserved.
CPU Allocation Problem for Autonomic Virtualized Environments • Existing systems allow for manual allocation of CPU resources to VMs using CPU priorities or CPU shares. • Need automated mechanism for the adjustment of CPU shares or the priorities of the virtual machines in order to maximize the global utility of the entire virtualized environment 57
© 2007 D.A. Menasce. All Rights Reserved.
CPU Allocation Problem for Autonomic Virtualized Environments (Cont’d) – Use utility functions: maps performance metrics and SLAs to a scalar. – Each service class of any given VM has a utility function that depends on the type of the class, the value of the performance metric for the class, and on the SLA for the class. – The total utility function of a VM is a function of the utility functions of all its service classes. – The global utility function is a function of the utility functions of all VMs. 58 © 2007 D.A. Menasce. All Rights Reserved.
CPU Allocation Problem for Autonomic Virtualized Environments (Cont’d) Workload 1 Workload 2 …. Workload n
U1,1 Virtual Machine 1 Un,1
Virtual Machine 2 ...
U1 U2 UM
Ug Virtualized Environment
Virtual Machine M
59 © 2007 D.A. Menasce. All Rights Reserved.
Performance Model-Based Autonomic Computing state
60 © 2007 D.A. Menasce. All Rights Reserved.
Performance Model-Based Autonomic Computing state (30,45,25)
(25,50,25)
(25,60,15)
(25,45,30)
(35,30,35)
(15,60,25)
(15,50,35)
(35,15,50)
(35,25,40)
(15,70,15)
(15,45,40)
(30,25,45)
61 © 2007 D.A. Menasce. All Rights Reserved.
Performance Model-Based Autonomic Computing state utility (30,45,25)
0.3
0.2 (35,30,35) 0.5
0.8
(35,25,40) 0.6
(25,60,15)
(25,50,25)
0.6
(15,60,25)
0.1
(15,70,15) 0.9
0.95
(15,50,35)
(15,45,40)
-0.2
-0.1
0.5
(25,45,30)
(35,15,50)
(30,25,45)
62 © 2007 D.A. Menasce. All Rights Reserved.
Performance Model-Based Autonomic Computing state utility (30,45,25)
0.3
0.2 (35,30,35) 0.5
0.8
(35,25,40) 0.6
(25,60,15)
(25,50,25)
0.6
(15,60,25)
0.1
(15,70,15) 0.9
0.95
(15,50,35)
(15,45,40)
-0.2
-0.1
0.5
(25,45,30)
(35,15,50)
(30,25,45)
63 © 2007 D.A. Menasce. All Rights Reserved.
Performance Model-Based Autonomic Computing state utility (30,45,25)
0.3
0.2 (35,30,35) 0.5
0.8
(35,25,40) 0.6
(25,60,15)
(25,50,25)
0.6
(15,60,25)
0.1
(15,70,15) 0.9
0.95
(15,50,35)
(15,45,40)
-0.2
-0.1
0.5
(25,45,30)
(35,15,50)
(30,25,45)
64 © 2007 D.A. Menasce. All Rights Reserved.
Performance Model-Based Autonomic Computing state utility (30,45,25)
0.3
0.2 (35,30,35) 0.5
0.8
(35,25,40) 0.6
(25,60,15)
(25,50,25)
0.6
(15,60,25)
0.1
(15,70,15) 0.9
0.95
(15,50,35)
(15,45,40)
-0.2
-0.1
0.5
(25,45,30)
(35,15,50)
(30,25,45)
65 © 2007 D.A. Menasce. All Rights Reserved.
Performance Model-Based Autonomic Computing state utility (30,45,25)
0.3
0.2 (35,30,35) 0.5
0.8
(35,25,40) 0.6
(25,60,15)
(25,50,25)
0.6
(15,60,25)
0.1
(15,70,15) 0.9
0.95
(15,50,35)
(15,45,40)
-0.2
-0.1
0.5
(25,45,30)
(35,15,50)
(30,25,45)
66 © 2007 D.A. Menasce. All Rights Reserved.
Performance Model-Based Autonomic Computing state utility (30,45,25)
0.2
(25,60,15)
(25,50,25)
0.3
0.6
-0.2
(25,45,30)
State: CPU share or priority allocated to each VM: (35,30,35) (15,60,25(a1, ) …, aM) (15,50,35) (35,15,50) 0.8 at each state 0.1is computed-0.1 0.5 utility function The with the help of a predictive queuing network model. The best state to move to is determined using combinatorial search (35,25,40) (15,70,15 ) (15,45,40) (30,25,45) techniques. 0.95 0.5 0.6 0.9 67 © 2007 D.A. Menasce. All Rights Reserved.
Virtualization Controller Architecture CPU disk 1 Performance Predictor
... disk k Autonomic Controller Algorithm to the VMM resource manager © 2007 D.A. Menasce. All Rights Reserved.
Utility Function Computation SLAs
Performance Monitor workload 68
Priority Based CPU Allocation: Workload Variation 70
Out of synch peaks and valleys to force change of CPU priorities.
60
Arrival Rate (tps)
50
40
30
20
10
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Control Interval
69 © 2007 D.A. Menasce. All Rights Reserved.
29
30
Priority Based CPU Allocation: Variation of VM Priority 2.5
2
Priority
1.5
1
0.5
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Control Interval
70 © 2007 D.A. Menasce. All Rights Reserved.
29
30
Priority Based CPU Allocation: Response Time for VM1 8
7
6
VM1 Resp. Time (sec)
no controller 5
with controller
4
3
2
1
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Control Interval
71 © 2007 D.A. Menasce. All Rights Reserved.
29
30
Priority Based CPU Allocation: Response Time for VM2 0.1
no controller
0.09
0.08
VM2 Resp. Time (sec)
0.07
0.06
0.05
0.04
0.03
0.02
0.01
with controller
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Control Interval
72 © 2007 D.A. Menasce. All Rights Reserved.
30
Priority Based CPU Allocation: Global Utility 1
with controller
0.8
Virtual Environment Global Utility
0.6
0.4
0.2
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
-0.2
-0.4
no controller
-0.6
Control Interval
73 © 2007 D.A. Menasce. All Rights Reserved.
30
CPU Shares Based Allocation: Workload Variation 70
60
Arrival Rate (tps)
50
40
30
20
10
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Control Interval
74 © 2007 D.A. Menasce. All Rights Reserved.
29
30
CPU Shares Based Allocation: CPU Shares Variation 90
80
70
CPU_SHARE (in %)
60
50
40
30
20
10
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Control Interval
75 © 2007 D.A. Menasce. All Rights Reserved.
29
30
CPU Shares Based Allocation: Response Time for VM1 10
9
8
VM1 Resp. Time (sec)
7
no controller
6
5
4
with controller
3
2
1
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Control Interval
76 © 2007 D.A. Menasce. All Rights Reserved.
29
30
CPU Shares Based Allocation: Response Time for VM2 0.45
0.4
0.35
no controller
VM2 Resp. Time (sec)
0.3
0.25
0.2
with controller
0.15
0.1
0.05
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Control Interval
77 © 2007 D.A. Menasce. All Rights Reserved.
29
30
CPU Shares Based Allocation: Global Utility 0.6
with controller
0.5
Virtual Environment Global Utility
0.4
0.3
0.2
0.1
0 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
-0.1
-0.2
no controller
-0.3
Control Interval
78 © 2007 D.A. Menasce. All Rights Reserved.
29
30
Concluding remarks • Autonomic computing is an area of growing importance due to its potential to deal with complexity. • Other techniques used: – Machine learning – Control theory
79 © 2007 D.A. Menasce. All Rights Reserved.
Bibliography •
“Autonomic Computing: Guest-editor introduction,” D.A. Menasce and J.O. Kephart, IEEE Internet Computing, Vol. 11, No. 1, January/Febrary 2007.
•
“Dynamic Server Allocation for Autonomic Service Centers in the Presence of Failures," Menascé and Bennanni, in the book Autonomic Computing: Concepts, Infrastructure, and Applications, eds. S. Hariri and M. Parashar, CRC Press, 2006.
•
"Autonomic Virtualized Environments," D.A. Menasce and M.N. Bennani, IEEE International Conference on Autonomic and Autonomous Systems, July 19-21, 2006, Silicon Valley, CA, USA.
•
"Resource Allocation for Autonomic Data Centers using Analytic Performance Models," Bennani and Menascé, Proc. 2005 IEEE International Conf. Autonomic Computing (ICAC-05), Seattle, WA, June 13-16, 2005.
•
"On the Use of Online Analytic Performance Models in Self-Managing and Self-Organizing Computer Systems," Menascé, Bennanni and Ruan, in the book Self-Star Properties in Complex Information Systems, O. Babaoglu, M. Jelasity, A. Montresor, C. Fetzer , S. Leonardi, A. van Moorsel, and M. van Steen, eds., Lecture Notes in Computer Science, Vol. 3460, Springer Verlag, 2005.
•
"Assessing the Robustness of Self-Managing Computer Systems under Highly Variable Workloads," Bennani and Menascé, Proc. 2004 IEEE International Conf. Autonomic Computing (ICAC-04), New York, NY, May 17-18, 2004.
•
"On the Use of Performance Models to Design Self-Managing Computer Systems," Menascé and Bennani, Proc. 2003 Computer Measurement Group Conference, Dallas, TX, Dec. 7-12, 2003.
•
Preserving QoS of E-commerce Sites Through Self-Tuning: A Performance Model Approach," D.A. Menasce, R. Dodge and D. Barbara, Proc. 2001 ACM Conference on E-commerce, Tampa, FL, 80 October 14-17, 2001
© 2007 D.A. Menasce. All Rights Reserved.
Thanks! Questions?
www.cs.gmu.edu/faculty/menasce.html
81 © 2007 D.A. Menasce. All Rights Reserved.