Robust Cloud Monitor Placement for Availability Verification
Melanie Siebenhaar, Ulrich Lampe, Dieter Schuller and Ralf Steinmetz
Multimedia Communications Lab (KOM), Technische Universit
¨
at Darmstadt, Darmstadt, Germany
Keywords:
Cloud Computing, Service Level Agreements, Verification, Monitoring, Placement, Performance, Availability.
Abstract:
While cloud computing provides a high level of flexibility, it also implies a shift of responsibility to the
cloud provider and thus, a loss of control for cloud consumers. Although existing means such as service
level agreements or monitoring solutions offered by cloud providers aim to address this issue, there is still
a low degree of trust on consumer side that cloud providers properly measure compliance against SLAs. A
solution lies in designing reliable means for monitoring cloud-based services from a consumer’s perspective.
We already proposed such a monitoring approach in our former work. However, our experiments revealed that
our approach is sensitive to network impairments. Hence, in the work at hand, we introduce the Robust Cloud
Monitor Placement Problem and present a formal optimization model. Based on the model, we propose an
initial optimization approach, that allows to obtain an exact solution using off-the-shelf algorithms.
1 INTRODUCTION
Cloud computing provides highly configurable com-
puting resources on-demand and with minimal man-
agement effort via the Internet (Mell and Grance,
2011). Hence, it promises a high level of flexibil-
ity similar to utilities like electricity or water (Buyya
et al., 2009). However, using services from the
cloud implies a shift of responsibility to the cloud
provider and thus, a loss of control for cloud con-
sumers. A negotiation of so-called service level
agreements (SLAs) between a cloud consumer and a
cloud provider addresses this issue by providing qual-
ity guarantees to the cloud consumer and specifying
corresponding penalties for the cloud provider in case
of violating a part of the contract. The quality guar-
antees typically refer to certain quality levels such
as thresholds for performance parameters like avail-
ability. Although a negotiation of SLAs provides a
certain level of control to cloud consumers, this so-
lution does not seem to be sufficient. Still, there
is only a low degree of trust on consumer side that
providers conduct sufficient measurements of perfor-
mance against SLAs (CSA and ISACA, 2012). How-
ever, cloud providers often additionally provide some
means for monitoring to their customers. Neverthe-
less, solely relying on these solutions cannot be per-
ceived as a reliable evidence base for detecting and
documenting SLA violations from a consumer’s per-
spective, particularly in the context that providers of-
ten put the burden of SLA violation reporting on their
customers (Patel et al., 2009).
A solution lies in the design and provision of re-
liable means to enable consumers to verify compli-
ance with SLAs from their perspective. Such an ap-
proach has already been proposed in our former work
in (Siebenhaar et al., 2013). Our approach involves
the placement of monitoring units within both, the
cloud provider’s and consumer’s infrastructure in or-
der to verify the availability of cloud applications.
However, our experiments revealed that our solution
is very sensitive to network impairments. Hence, we
examine the robust placement of monitoring units de-
pending on current network reliability in the work at
hand. This paper introduces the Robust Cloud Mon-
itor Placement Problem (RCMPP) as a new research
problem and presents a formal optimization model.
Furthermore, we propose transformations that can be
applied to this nonlinear, multi-objective optimization
problem in order to obtain an exact solution using off-
the-shelf optimization algorithms.
The remainder of this paper is structured as fol-
lows: Section 2 gives an overview of related ap-
proaches to our work. Section 3 briefly summarizes
our former approach for availability verification. In
Section 4, we describe the RCMPP in detail and in-
troduce a formal optimization model. Based on the
formal model, we propose an optimization approach
in Section 5. The paper closes with a summary and
directions for future work in Section 6.
193
Siebenhaar M., Lampe U., Schuller D. and Steinmetz R..
Robust Cloud Monitor Placement for Availability Verification.
DOI: 10.5220/0004958101930198
In Proceedings of the 4th International Conference on Cloud Computing and Services Science (CLOSER-2014), pages 193-198
ISBN: 978-989-758-019-2
Copyright
c
2014 SCITEPRESS (Science and Technology Publications, Lda.)
2 RELATED WORK
Only a few approaches have been proposed so far for
monitoring the performance of cloud resources from a
consumer’s perspective. For example, (Sharma et al.,
2013) propose a network monitoring framework that
enables tenants to monitor the connectivity between
their allocated compute nodes. Other related publica-
tions focus on robust placement problems in networks
in general. For example, (Natu and Sethi, 2008) try
to minimize the number of monitor locations while
accounting for a maximum of k node/edge failures,
and (Bin et al., 2011) consider relocatable VMs in the
presence of up to k host failures. In the field of Op-
erations Research, the fault-tolerant facility location
problem, first studied by (Kamal and Vazirani, 2000),
where each city must at least be connected to a certain
number of distinct facilities, is related to the work at
hand. But none of the related approaches addresses
robust monitor placement by jointly considering cur-
rent network reliability, monitor redundancy, and re-
source as well as location constraints.
3 AVAILABILITY VERIFICATION
OF CLOUD APPLICATIONS
In this section, we give an overview of our former
work for verifying the availability of cloud applica-
tions introduced in (Siebenhaar et al., 2013), which
serves as a foundation for the work at hand. Our for-
mer work proposed a hybrid monitoring approach for
verifying the availability of cloud applications from a
consumer’s perspective, since availability is one of the
very few performance parameters that are part of the
SLAs of today’s cloud providers (e.g., Elastic Com-
pute Cloud (EC2) by (Amazon, 2008)). However, fur-
ther performance parameters can be easily incorpo-
rated in our approach as well. Basically, our former
approach combines consumer- and cloud-side moni-
toring. In doing so, consumers not only obtain means
to assess the status of a cloud application indepen-
dently from a cloud provider, but also obtain visibil-
ity of the end-to-end performance of a cloud-based
service. Hence, our approach enables consumers to
attribute downtimes to causes either on consumer or
provider side. Three different component types are
considered in our design (cf. Figure 1): Monitoring
units placed on VMs on consumer- and cloud-side ob-
serve the availability of a cloud application and the
VM, where the application is running on. For our
approach we make the assumption that a consumer
has access to the VM where a cloud application is
hosted. However, a monitoring unit on cloud-side ob-
cloud applications
VM 1
VM 2
Consumer-side
Monitor A
Consumer-side
Monitor B
App
VM Monitor
Cloud-side
Monitor
Broker
push to pull from
Figure 1: Overview of the monitoring framework.
serving a specific application is never placed on the
VM where the application is hosted. In this case,
a monitoring unit would not be able to report any
downtimes if the underlying VM crashes. Neverthe-
less, a lightweight software component, a VM moni-
tor, is placed on each VM where a cloud application
is hosted in order to gain access to predefined pro-
cesses that are essential for running the cloud applica-
tion. A periodical pull model is applied by the mon-
itoring units in order to invoke predefined services of
the cloud application or request the status of essential
processes from VM monitors. The set of monitored
services and essential processes of a cloud application
can be defined in advance, e.g., as part of the SLAs.
Finally, a broker component is introduced which col-
lects and aggregates the monitoring data of all mon-
itoring units. The monitoring units apply an event-
based push model to send data to the broker. The bro-
ker maintains a list of the downtimes reported by each
monitoring unit and periodically computes the overall
availability. For more information on the computation
of the overall availability, the interested reader is re-
ferred to (Siebenhaar et al., 2013). Since failures in
the network between a consumer and provider could
prevent monitoring units on consumer-side from de-
tecting a downtime of a cloud application, monitoring
units should be placed on different network domains.
We assume that an enterprise running several data
centers at different branches could assign independent
consumer-side monitors to different locations.
4 ROBUST CLOUD MONITOR
PLACEMENT PROBLEM
4.1 Problem Statement
Our work focuses on a scenario, where an enterprise
cloud user has several regional branches worldwide,
each running a private data center, and makes use of
applications running in the data centers of a cloud
CLOSER2014-4thInternationalConferenceonCloudComputingandServicesScience
194
Internet
Customer
Network
Chicago
Provider
Network
Los Angeles
Provider
Network
New York
Customer
Network
New York
Customer
Network
Miami
Figure 2: Robust Cloud Monitor Placement scenario.
1
provider (cf. Figure 2). We take the perspective of the
enterprise cloud user, who wants to verify the avail-
ability of the running cloud applications. For this
purpose, the enterprise cloud user applies our hybrid
monitoring approach as described in the previous sec-
tion. In doing so, s/he places monitoring units for
each cloud application on consumer- and provider-
side. However, since the experiments in (Siebenhaar
et al., 2013) revealed that our approach is sensitive to
network impairments, the placement of the monitor-
ing units must be conducted in such a way that the ro-
bustness of our monitoring framework is maximized.
Table 1 gives an overview of the symbols introduced
in the following and used in the formal model. The
upper part of the table describes the basic entities,
whereas the lower part contains the parameters.
The scenario considered in this work consists of
a set of data center sites, formally denoted as S =
{1, ..., n}. This set S is a union of the set S
00
=
{1, ..., d}) of data center sites of the enterprise cloud
user and the set S
0
= {d +1,...,n}) of data center sites
of the cloud provider. A set V
s
= {1, ..., i} of VMs is
running on each data center site s S. All VMs V
s
are potential candidates for monitor placement. On
the data center sites s
0
S
0
of the cloud provider,
each VM v
0
V
s
0
is provided to the enterprise cloud
user, e.g., as part of a virtual private network, run-
ning a set of cloud applications C
s
0
v
0
= {1, ..., j} to
be monitored. The VMs v V
s
representing potential
monitor candidates are interconnected with the VMs
v
0
V
s
0
of the cloud applications C
s
0
v
0
via a set of
links L = {l(sv s
0
v
0
)}. Since the enterprise cloud
user is not aware of the underlying network topolo-
gies of the Internet service provider and the cloud
provider when connecting to a cloud application, we
assume that the enterprise cloud user is only able to
measure the end-to-end performance between a given
pair of VMs represented by a single link l L be-
tween this pair of VMs in the model. Each moni-
1
Based on http://docs.aws.amazon.com/AmazonVPC/
latest/NetworkAdminGuide/images/Branch Offices.png
Table 1: Used symbols in the formal model.
Symbol Description
S = {1, ..., n} set of n data center sites
S
00
= {1, ..., d}) consumer sites, S
00
S
S
0
= {d + 1, ..., n}) provider sites, S
0
S
V
s
= {1, ..., i} VM candidates for monitor
placement on site s S
C
s
0
v
0
= {1, ..., j} cloud applications to moni-
tor on VM v
0
V
s
0
, s
0
S
0
L = {l(sv s
0
v
0
)} links interconnecting VM
monitor candidates V
s
and
VMs of applications C
s
0
v
0
R = {1, ..., k} set of k considered VM re-
source types
rd
s
0
v
0
cr
R
+
resource demand for moni-
toring application c C
s
0
v
0
for resource r R
rs
svr
R
+
resource supply of VM
v V
s
for resource r R
r f
s
0
v
0
c
N
>1
redundancy factor for moni-
toring application c C
s
0
v
0
p
l(svs
0
v
0
)
R
+
observed reliability for each
link l L
p
sv
R
+
observed reliability for each
VM v V
s
toring unit for a cloud application c C
s
0
v
0
exhibits
a certain resource demand of rd
s
0
v
0
cr
R
+
for a spe-
cific resource type r R = {1, ..., k} such as, e.g.,
CPU power or memory. Furthermore, each VM v V
s
on a site s S is able to provide a specific resource
supply of rs
svr
R
+
. For reasons of fault-tolerance,
the enterprise cloud user specifies a redundancy fac-
tor r f
s
0
v
0
c
N
>1
for each cloud application c C
s
0
v
0
indicating that application c has to be monitored by
r f
s
0
v
0
c
different monitoring units. We further assume
that the enterprise cloud user is able to utilize tradi-
tional network measurement tools in order to estimate
the reliability of a given VM v V
s
on a site s S or
a link l L between a given pair of VMs. With re-
spect to these measurements, p
sv
R
+
denotes the
observed reliability for a VM v V
s
on a site s S
and p
l(svs
0
v
0
)
R
+
denotes the observed reliability
for a given link l L.
The challenge for the enterprise cloud user now
consists in assigning the monitoring units of all cloud
applications to VMs on consumer and provider sites.
In doing so, the objective of the enterprise cloud user
is to maximize the reliability of the monitoring frame-
work expressed by the probability that at least one
of the redundant monitoring units for each cloud ap-
plication is working. The resource supplies of all
VMs must not be exceeded by the assigned moni-
toring units. Furthermore, all monitoring units for a
RobustCloudMonitorPlacementforAvailabilityVerification
195
Internet
S1
S4
S5
S2
S3
S’’
S’
v1
v2
C
42
C
41
v1
v2
C
52
C
51
v1
v2
v1
v2
v1
v2
Figure 3: Robust Cloud Monitor Placement example.
specific cloud application must be placed on different
sites and, following our hybrid monitoring approach,
at least one monitor must be placed on consumer and
provider side, respectively. In addition, a monitoring
unit for a specific cloud application is not allowed to
be placed on the VM where the cloud application is
running. As already mentioned, this is due to the fact
that a monitoring unit is not able to report a downtime
when the underlying VM is currently down.
We denote this problem as the Robust Cloud Mon-
itor Placement Problem (RCMPP). A simplified ex-
ample for a RCMPP instance neglecting resource de-
mands and supplies for ease of clarity is depicted in
Figure 3. The instance exhibits two provider sites
S
4
, S
5
and three consumer sites S
1
, S
2
, S
3
each running
two VMs. A set of applications is running on each
VM. For example, C
42
denotes the set of applications
running on VM no. 2 on site S
4
. The corresponding
link between this VM and VM no. 1 on consumer site
S
1
exhibits a reliability of p
l(1,14,2)
= 0.99 and VM
no. 1 exhibits a reliability of p
11
= 0.97. In our work,
we are only interested in monitoring the cloud appli-
cations on provider side. However, the applications
running on consumer side are also considered in the
model in the form of remaining resource supplies of
their VMs. If we assume that only one application is
part of each set C
s
0
v
0
on provider side in the example
and that the enterprise cloud user specifies a redun-
dancy factor r f
s
0
v
0
c
= 2 for each application, 8 moni-
toring units will be assigned to VMs in total, thereby
placing one monitoring unit on consumer side and one
on provider side for each application.
4.2 Formal Model
In order to develop strategies to solve the RCMPP,
we transform the problem into an optimization model.
The resulting optimization model is depicted in
Model 1 and will be described in the following.
Model 1: Robust Cloud Monitor Placement Problem.
Maximize {p
mon
s
0
v
0
c
(x)|s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
} (1)
p
mon
s
0
v
0
c
(x) = 1
sS,vV
s
(q
path
svs
0
v
0
)
x
svs
0
v
0
c
(2)
q
path
svs
0
v
0
= [(1 p
sv
) + (1 p
l(svs
0
v
0
)
) (3)
(1 p
sv
) (1 p
l(svs
0
v
0
)
)]
subject to
sS,vV
s
x
svs
0
v
0
c
= r f
s
0
v
0
c
(4)
s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
, r f
s
0
v
0
c
2
s
0
S
0
,v
0
V
s
0
,cC
s
0
v
0
rd
s
0
v
0
cr
x
svs
0
v
0
c
rs
svr
(5)
s S, v V
s
, r R
vV
s
x
svs
0
v
0
c
1 (6)
s S, s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
sS,vV
s
x
svs
0
v
0
c
1 (7)
s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
, s = {d + 1, ..., n}
sS,vV
s
x
svs
0
v
0
c
1 (8)
s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
, s = {1, ..., d}
x
svs
0
v
0
c
= 0 (9)
c C
s
0
v
0
, s = s
0
and v = v
0
x
svs
0
v
0
c
{0, 1} (10)
s S, v V
s
, s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
As already stated, the objective of the RCMPP is
to assign the monitoring units of all cloud applications
to VMs on consumer and provider side so that the re-
sulting placement maximizes the probability that at
least one of the monitoring units for each cloud ap-
plication is working. The objective can be described
by a set of multiple potentially conflicting objective
functions that we want to maximize simultaneously
(cf. Equation 1). Each objective function expresses
the probability p
mon
s
0
v
0
c
(x) to reliably monitor a specific
application, i.e., at least one of the redundant mon-
itoring units is working properly. p
mon
s
0
v
0
c
(x) equals 1
minus the probability that all monitors for a specific
cloud application c C
s
0
v
0
fail (cf. Equation 2). The
decision variable x
svs
0
v
0
c
is defined in Equation 10 as
binary and indicates whether VM v V
s
running on
CLOSER2014-4thInternationalConferenceonCloudComputingandServicesScience
196
Model 2: Optimization of Complementary Objectives.
Minimize {q
mon
s
0
v
0
c
(x)|s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
} (11)
q
mon
s
0
v
0
c
(x) =
sS,vV
s
(q
path
svs
0
v
0
)
x
svs
0
v
0
c
(12)
q
path
svs
0
v
0
= [(1 p
sv
) + (1 p
l(svs
0
v
0
)
) (13)
(1 p
sv
) (1 p
l(svs
0
v
0
)
)]
site s S is selected to monitor cloud application c
C
s
0
v
0
running on VM v
0
V
s
0
on site s
0
S
0
. x denotes
the vector of all decision variables x
svs
0
v
0
c
(cf. Equa-
tion 1). Equation 3 determines the probability q
path
svs
0
v
0
for a monitoring unit of cloud application c C
s
0
v
0
placed on VM v V
s
on site s S to fail, thereby
considering the reliability of the VM v V
s
and the
reliability of the path interconnecting VM v V
s
and
the VM of the cloud application. Equation 4 ensures
that a cloud application c C
s
0
v
0
is monitored by r f
s
0
v
0
c
redundant monitoring units. For each application, at
least two monitoring units must be assigned to VMs,
one on consumer side and one on provider side (cf.
Equations 7 and 8). Equation 5 defines that each VM
v V
s
offers sufficient resource supplies to serve the
assigned monitoring units and Equation 6 makes sure
that all monitoring units for a specific cloud applica-
tion c C
s
0
v
0
are placed on different sites. Finally,
Equation 9 ensures that a monitoring unit for a spe-
cific cloud application c C
s
0
v
0
is not assigned to the
VM v
0
V
s
0
on site s
0
S
0
where the cloud application
is also running on.
As can be seen from Model 1, the RCMPP consti-
tutes a multi-objective optimization problem. Hence,
no unique solution of the problem exists. Further-
more, the RCMPP is nonlinear due to Equation 2.
However, the problem can be linearized and trans-
formed into a single-objective optimization problem
as described in the next section.
5 OPTIMIZATION APPROACH
We propose an initial solution approach based on lin-
earization and transformation of the RCMPP into a
single-objective optimization problem. In doing so,
off-the-shelf optimization algorithms, such as branch-
and-bound (Hillier and Liebermann, 2005), can be ap-
plied in order to obtain an exact solution.
For linearization of the RCMPP, we follow a two-
step approach: In the first step, we build a new set
of objective functions representing the complemen-
tary objectives of the former Model 1 and turn the
Model 3: Linearization of RCMPP.
log(q
mon
s
0
v
0
c
(x)) = log(
sS,vV
s
(q
path
svs
0
v
0
)
x
svs
0
v
0
c
) (14)
leads to
Minimize {q
log
s
0
v
0
c
(x)|s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
} (15)
q
log
s
0
v
0
c
(x) =
sS,vV
s
x
svs
0
v
0
c
log(q
path
svs
0
v
0
) (16)
q
path
svs
0
v
0
= [(1 p
sv
) + (1 p
l(svs
0
v
0
)
) (17)
(1 p
sv
) (1 p
l(svs
0
v
0
)
)]
q
path
svs
0
v
0
> 0 s S, v V
s
, s
0
S
0
, v
0
V
s
0
(18)
maximization problem into a minimization problem
(cf. Model 2). q
mon
s
0
v
0
c
(x) in Model 2 determines the
probability that all monitors for a specific cloud ap-
plication c C
s
0
v
0
fail and thus, represents the comple-
mentary probability to p
mon
s
0
v
0
c
(x) in the former Model 1.
In the second step, we can now linearize the problem
by taking the logarithm of both sides (cf. Equation
14), an approach that is also followed by (Andreas
and Smith, 2008). Model 3 shows the result of the
linearization. Since no system is without failure, we
assume q
path
svs
0
v
0
> 0. Please note, that the Equations 4
to 10 of Model 1 also belong to Model 2 and Model 3,
but have been neglected due to lack of space. Finally,
we have to transform Model 3 into a single-objective
optimization problem. For this purpose, we apply a
so-called minimax strategy (Jensen and Bard, 2003),
i.e., our transformation is based on a worst-case anal-
ysis, where we aim to minimize the worst possible
outcome. Hence, the former objective of minimiz-
ing the probability q
log
s
0
v
0
c
(x) that all monitors fail for
all cloud applications simultaneously can be trans-
formed into minimizing the maximum probability of
all q
log
s
0
v
0
c
(x) (cf. Equation 19 in Model 4). In doing so,
the maximum (i.e., worst) probability of all q
log
s
0
v
0
c
(x)
can be represented by a new decision variable z R.
Furthermore, we have to add |C
s
0
v
0
| new constraints
s
0
S
0
, v
0
V
s
0
(cf. Equation 20 in Model 4) to the set
of former constraints already introduced in Model 1.
As can be seen from Model 4, the resulting prob-
lem constitutes a mixed-integer linear programming
problem that can be solved using branch-and-bound
(Hillier and Liebermann, 2005).
RobustCloudMonitorPlacementforAvailabilityVerification
197
Model 4: Transformation to Single-Objective RCMPP.
Minimize z (19)
subject to
q
log
s
0
v
0
c
(x) z (20)
s
0
S
0
, v
0
V
s
0
, c C
s
0
v
0
, z R
6 SUMMARY AND OUTLOOK
Although cloud-based service delivery is a very flexi-
ble and convenient way for consumers to obtain com-
puting resources, it is attended with a shift of respon-
sibility to the cloud provider and thus, with a loss
of control for consumers. Negotiating SLAs with
providers and using their provisioned monitoring so-
lutions to verify SLA compliance later on is not con-
sidered as sufficient by consumers. Therefore, we
have designed a hybrid monitoring approach for avail-
ability verification of cloud applications from a con-
sumer’s perspective in our former work in (Sieben-
haar et al., 2013). However, since our experiments
revealed that our approach is sensitive to network
impairments, we examined the robust placement of
monitoring units in the work at hand. In this paper,
we introduced the Robust Cloud Monitor Placement
Problem (RCMPP) and a corresponding, formal opti-
mization model. Furthermore, we proposed an initial
solution approach based on transformations turning
the nonlinear, multi-objective RCMPP into a mixed-
integer linear programming problem. An exact solu-
tion can then be obtained using the branch-and-bound
optimization algorithm.
In future work, we will implement and evaluate
our proposed optimization approach. Furthermore,
we plan to extend the proposed model to consider
other objectives such as the total monitoring costs.
ACKNOWLEDGEMENTS
This work was supported in part by the Ger-
man Federal Ministry of Education and Research
(BMBF) under grant no. “01|C12S01V” in the con-
text of the Software-Cluster project SINNODIUM
(www.software-cluster.org), E-Finance Lab Frankfurt
am Main e.V. (http://www.efinancelab.com), and the
German Research Foundation (DFG) in the Collabo-
rative Research Center (SFB) 1053 MAKI. The au-
thors assume responsibility for the content.
REFERENCES
Amazon (2008). Amazon ec2 service level agreement.
http://aws.amazon.com/ec2-sla/, [last access: 3 De-
cember 2012].
Andreas, A. K. and Smith, J. C. (2008). Mathemati-
cal Programming Algorithms for Two-Path Routing
Problems with Reliability Considerations. INFORMS
Journal on Computing, 20(4):553–564.
Bin, E., Biran, O., Boni, O., Hadad, E., Kolodner, E.,
Moatti, Y., and Lorenz, D. (2011). Guaranteeing High
Availability Goals for Virtual Machine Placement. In
31st International Conference on Distributed Com-
puting Systems (ICDCS), pages 700–709.
Buyya, R., Yeo, C. S., Venugopal, S., Broberg, J., and
Brandic, I. (2009). Cloud Computing and Emerging
IT Platforms: Vision, Hype, and Reality for Deliver-
ing Computing as the 5th Utility. Future Generation
Computer Systems, 25(6):599–616.
CSA and ISACA (2012). Cloud Computing Market
Maturity. Study Results. Cloud Security Alliance
and ISACA. http://www.isaca.org/Knowledge-
Center/Research/Documents/2012-Cloud-
Computing-Market-Maturity-Study-Results.pdf,
[last access: 28 November 2012].
Hillier, F. S. and Liebermann, G. J. (2005). Inroduction to
Operations Research. McGraw-Hill, 8th edition.
Jensen, P. A. and Bard, J. F. (2003). Appendix A: Equiv-
alent Linear Programs. In Supplements to Oper-
ations Research Models and Methods. John Wiley
and Sons. http://www.me.utexas.edu/ jensen/ORMM/
supplements/units/lp models/equivalent.pdf [last ac-
cess: 12 January 2014].
Kamal, J. and Vazirani, V. V. (2000). An Approximation
Algorithm for the Fault Tolerant Metric Facility Loca-
tion Problem. In Jansen, K. and Khuller, S., editors,
Approximation Algorithms for Combinatorial Opti-
mization, volume 1913 of Lecture Notes in Computer
Science, pages 177–182. Springer.
Mell, P. and Grance, T. (2011). The NIST Definition of
Cloud Computing. http://csrc.nist.gov/publications/
nistpubs/800-145/SP800-145.pdf, [Last access: 28
November 2012].
Natu, M. and Sethi, A. S. (2008). Probe Station Placement
for Robust Monitoring of Networks. Journal of Net-
work and Systems Management, 16(4):351–374.
Patel, P., Ranabahu, A., and Sheth, A. (2009). Service Level
Agreement in Cloud Computing. Technical report,
Knoesis Center, Wright State University, USA.
Sharma, P., Chatterjee, S., and Sharma, D. (2013). Cloud-
View: Enabling Tenants to Monitor and Control their
Cloud Instantiations. In 2013 IFIP/IEEE Interna-
tional Symposium on Integrated Network Manage-
ment (IM 2013), pages 443–449.
Siebenhaar, M., Wenge, O., Hans, R., Tercan, H., and
Steinmetz, R. (2013). Verifying the Availability of
Cloud Applications. In Jarke, M. and Helfert, M., edi-
tors, Proceedings of the 3rd International Conference
on Cloud Computing and Services Science (CLOSER
2013), pages 489–494. SciTe Press.
CLOSER2014-4thInternationalConferenceonCloudComputingandServicesScience
198