In this Dagstuhl talk, I presented my current research on cloud auto-scaling and component connector self-adaptation and how I employed type-2 fuzzy control to tame the uncertainty regarding knowledge specification.
Size: 5.54 MB
Language: en
Added: Sep 15, 2014
Slides: 52 pages
Slide Content
Fuzzy Control meets Software Engineering
Pooyan Jamshidi
IC4-Irish Centre for Cloud Computing and Commerce
School of Computing,Dublin City University [email protected]
DagstuhlSeminar
Control Theory meets Software Engineering
September, 2014
Naeem Esfahani and Sam Malek ,
“Uncertainty in Self-Adaptive
Software Systems”
Knowledge
Specification
Uncertainty
2
3
Application #1:
Auto-scaling
~50% = wasted hardware
Actual
traffic
Typical weekly traffic to Web-based applications (e.g., Amazon.com)
5
Problem 1: ~75% wasted capacity
Actual
demand
Problem 2:
customer lost
Traffic in an unexpected burst in requests (e.g. end of
year traffic to Amazon.com)
6
Really like this??
Auto-scaling enables you to realize this ideal on-demand provisioning
Time
Demand ?
Enacting change in the
Cloud resources are not
real-time
7
Capacity we can provision
with Auto-Scaling
A realistic figure of dynamic provisioning
8
These quantitative
values are required to
be determined by the
user
requires deep
knowledge of
application (CPU,
memory,
thresholds)
requires
performance
modeling expertise
(when and how to
scale)
A unified opinion
of user(s) is
required
Amazon auto scaling
Microsoft Azure Watch
12
Microsoft Azure Auto-
scaling Application Block
12
13
Uncertainty related to enactment latency:
The same scaling action (adding/removing
a VM with precisely the same size) took
different time to be enacted on the
cloud platform (here is Microsoft Azure)
at different points and
this difference were significant
(up to couple of minutes).
The enactment latency would be also different
on different cloud platforms.
14
Offline benchmarking
Trial-and-error
Expert knowledge
Costly and
not systematic
A. Gandhi, P. Dube, A. Karve, A. Kochut, L. Zhang,
Adaptive, “Model-driven Autoscalingfor Cloud
Applications”, ICAC’14
arrival rate (req/s)
95% Resp. time (ms)
400 ms
60 req/s 15
0 0.5 1 1.5 2 2.5 3
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Region of
definite
satisfaction
Region of
definite
dissatisfaction
Region of
uncertain
satisfaction PerformanceIndex
Possibility
PerformanceIndex
Possibilitywords can mean different
things to different people
Different users often
recommend
different elasticity policies0 0.5 1 1.5 2 2.5 3
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Type-2 MF
Type-1 MF
17
�=1
??????
??????
�
�
??????
Goal: pre-computations of costly calculations
to make a runtime efficient elasticity
reasoning based on fuzzy inference
20
Liang, Q., Mendel, J. M. (2000). Interval type-2 fuzzy
logic systems: theory and design.Fuzzy Systems, IEEE
Transactions on,8(5), 535-550.
Scaling Actions
Monitoring Data
21
SUT CriteriaBig spikeDual phase
Large
variations
Quickly
varying
Slowly
varying
Steep tri
phase
RobusT2Scale
????????????
95% 973ms 537ms 509ms 451ms 423ms 498ms
�??????3.2 3.8 5.1 5.3 3.7 3.9
Overprovisioning
????????????
95% 354ms 411ms 395ms 446ms 371ms 491ms
�??????6 6 6 6 6 6
Under
provisioning
????????????
95% 1465ms1832ms 1789ms 1594ms1898ms 2194ms
�??????2 2 2 2 2 2
SLA: ��
??????�≤�????????????��
For every 10s control interval
•RobusT2Scale is superior to under-provisioning in terms of
guaranteeing the SLA and does not require excessive
resources
•RobusT2Scale is superior to over-provisioning in terms of
guaranteeing required resources while guaranteeing the SLA 30
0.05
0.1
0.15
0.2
0.25
0.3
0.35
Type-1 FLS Type-2 FLS RMSE
•The rule reduction reduced the rules
quite considerably.
•IT2 FLCs are more robust due to less
mean error and less variation in the
estimation error.
•T1 FLCs in some realization drop more
rules in comparison with the IT2 FLCs.
•IT2 FLC original designs can be designed
with less rules.
37