Professional Documents
Culture Documents
Abstract: Composite applications have the versatility of maintaining several functions and services geographically dis-
tributed but being part of the same application. This particular software architecture fits in very easily with
the model of distributed regions present in most cloud players. In this way, the search for leasing applications
at the lowest cost becomes a reality, given that the application services can be in different players at a lower
cost, as long as the performance metrics of the application as a whole are met. Someone who wants to offer
an application along these lines must take into account the sum of the latencies between the different services
in addition to the individual cost of each service that makes up the application, and in a multi-cloud environ-
ment, these decisions become even more complex. This article presents a placement heuristic that positions an
application composed of multiple services in a multi-cloud environment, seeking lower costs while meeting
the latency requirements for the application. The results showed that the proposed heuristic manages to find
the best placement of the application’s services, keeping within the acceptable latency limit.
exceed the service level agreement established to the Public cloud providers offer multiple regions that
application (Pelle et al., 2019). serve as access points distributed worldwide. These
Based on the above, this paper proposes a heuris- regions deliver for services to be in places closer
tic that seeks to place the application‘s services in to customers in order to decrease latency in access-
the cheapest possible region for each service, but ing services. However, the values for maintaining a
that still meets the latency requirements necessary for hosted service differ from region to region (Kozina
the service to maintain QoS. For that, the heuristics and Kozin, 2022).
were tested on real cost and latency data of a public It is due to the local cost of energy consumption,
cloud player and shows that it manages to find a near- air conditioning, and legislation, among others. It
optimal placement for the resource allocation prob- would always be advantageous to host services in the
lem proposed in this work. cheapest regions if not for the latency cost imposed by
The paper is organized as follows: in Section 2, the distance that the region may be from the customer.
we present a background; in Section 3, we discuss The inverse is also a problem because if the cloud op-
some related work that try to place services in cloud erators only consider the service’s latency, they may
environments and some metrics used; in Section 4, be paying more to maintain a minimum latency much
state the problem definition; in Section 5, we propose higher than that needed to offer the service.
a heuristic in order to solve the resource allocation
problem; in Section 6, we give our testbed and discus-
sions about the evaluations performed; ending with
our conclusions and future work in Section 7.
2 Background
38
8
45
We conducted a sensitivity analysis to determine the best
39 10 0
13 parameters for the NSGA-II algorithm. Without loss of gen-
267 53
erality, we define the population size as 400 and crossover
Region 1 Region 2 Region 3
probability to 100%. The algorithm was configured with
the Uniform Crossover and Polynomial Mutation meth-
ods (Blank and Deb, 2020). The initial population was set
Figure 3: Network Latency between regions.
using a Random-Fit Algorithm (Souza et al., 2022). Our
In our dataset, three infrastructure providers manage six analysis evaluates different population sizes = {100, 200,
data centers each. Data centers are evenly positioned across 300, ..., 1500} and mutation probabilities = {0%, 10%,
the nine regions, with capacity = {60, 120}—we consider 20%, 30%, ..., 100%}.
such abstract units to represent data center capacities as real Each parameter combination ω was accessed by a cost
values could not be found publicly. Data centers must host function ∆ (Eq. 16), which considers both the normalized
60 composite applications totaling 132 services. The sam- number of SLA violations and the allocation cost achieved
ple application workflow specifications used in the experi- by the solutions. In total, we evaluated 165 parameter com-
ments are presented in Figure 4. In this setting, applications binations. As indicated in Figure 5, the NSGA-II algorithm
have three distinct SLAs = {100, 150, 200}, and services achieved the lowest cost ∆ with 1200 generations and muta-
have heterogeneous demands = {2, 4, 6, 8}, both uniformly tion probability = 10%—accordingly, we used this configu-
distributed. ration in the evaluation of Section 6.3.
ID Application Workflow ∆(ω) = norm ωSLAViolations + norm ωallocationCost
(16)
1 Web Server
2 Web Server File Storage 1500 0.105 0.026 0.237 0.566 0.669 1.018 0.927 0.905 1.002 1.151 1.132
1400 0.105 0.026 0.237 0.566 0.669 1.018 0.927 0.905 1.002 1.151 1.132 1.4
1300 0.105 0.026 0.454 0.566 0.592 1.018 0.927 0.905 1.002 1.151 1.132
Number of Generations
3 Web Server Database 1200 0.105 0.019 0.454 0.566 0.592 1.018 0.927 0.905 1.002 1.175 1.153 1.2
1100 0.105 0.053 0.368 0.566 0.592 1.151 0.927 0.905 1.002 1.175 1.153
1000 0.105 0.053 0.274 0.515 0.623 1.151 0.927 0.905 1.030 1.175 1.153 1.0
4 Web Server File Storage Database 900 0.105 0.024 0.329 0.515 0.623 1.151 0.927 0.905 1.199 1.175 1.186
800 0.105 0.057 0.303 0.525 0.623 1.151 0.927 0.905 1.199 1.175 1.181 0.8
5 Web Server Database File Storage 700 0.105 0.055 0.339 0.544 0.623 1.037 0.927 1.254 1.417 1.145 1.181
600 0.105 0.084 0.370 0.789 0.692 1.037 0.967 1.021 1.417 1.198 1.416 0.6
500 0.105 0.079 0.415 0.647 0.855 1.025 1.044 1.021 1.417 1.138 1.416
Figure 4: Application workflows used in the evaluation. 400 0.105 0.081 0.415 0.616 0.749 1.025 1.044 1.127 1.417 1.312 1.416 0.4
300 0.105 0.103 0.681 0.685 0.899 1.065 1.146 1.163 1.417 1.312 1.416
200 0.105 0.256 0.567 0.673 0.942 1.024 1.292 1.237 1.373 1.516 1.406 0.2
We compare Clover against three approaches. The 100 0.105 0.413 0.795 0.874 1.216 1.189 1.282 1.334 1.346 1.477 1.506
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
first two baseline strategies, Best Fit and Worst Fit, al- Mutation Probability
low us to evaluate the impact of extreme provisioning de-
cisions on the infrastructure. While Best Fit focuses on Figure 5: NSGA-II sensitivity analysis results.
consolidating services on a subset of data centers, Worst
Fit does the opposite, distributing services across the in-
frastructure as much as possible. As both Best Fit and 6.3 Results and Discussion
Worst Fit are naive strategies that make no optimized de-
cision for the addressed scenario, our evaluation also con- 6.3.1 Latency SLA Violations
siders a metaheuristic called Non-Dominated Sorting Ge-
netic Algorithm II (NSGA-II) (Deb et al., 2002), which em- Figures 6 (a) and (b) present the number of SLA violations
ploys a population-based search procedure to find Pareto- during the execution of the evaluated placement strategies.
1 https://www.cloudping.co/ 2 Omitted for double blind review.
1 2 3 W o r s t F it B e s t F it N S G A - II C lo v e r
7 0 0
5 0
6 0 0
4 0 5 0 0
S L A V io la t io n s
3 0 4 0 0
L a te n c y
3 0 0
2 0
2 0 0
1 0 1 0 0
0 0
W o r s t F it B e s t F it N S G A - II C lo v e r 1 0 0 1 5 0 2 0 0
A lg o r it h m L a te n c y S L A
(a) SLA Violations per Chain Size (b) Latency per SLA
W o r s t F it B e s t F it N S G A - II C lo v e r
1 × 1 0 5
9 6 7 0 0 2 0 0
9 6 0 0 0
A llo c a tio n C o s t
A llo c a t io n C o s t
7 5 4 0 0 7 6 2 0 0 1 5 0
7 × 1 0 4
1 0 0
4 × 1 0 4
5 0
0 0
W o r s t F it B e s t F it N S G A - II C lo v e r W e b S e rv e r F ile S t o r a g e D a ta b a s e
A lg o r ith m S e r v ic e T y p e
(c) Overall Allocation Cost (d) Allocation Cost per Service Type
Figure 6: Experimental results comparing the evaluated strategies.
As expected, the naive algorithms (Worst Fit and Best Fit) deviation related to allocation cost per service, as they over-
showed the worst results, with roughly 4x more SLA vi- look this target metric (Figure 6 (d)). Best Fit’s slightly
olations than Clover and NSGA-II. Although Best Fit and higher overall cost allocation probably comes from its con-
Worst Fit do not incorporate SLA-optimized allocations, we solidation approach. If Worst Fit decides to allocate a ser-
can make some observations about the impact of certain re- vice in an expensive data center, chances are that it will not
source management decisions based on such results. use that data center excessively, given its demand-spreading
As shown in Figure 6 (a), Best Fit’s consolidation led to approach. Conversely, a careless decision in terms of allo-
better outcomes than Worst Fit’s spread strategy, especially cation cost performed by Best Fit can cause a more signifi-
for applications with larger service sets. While demand dis- cant impact, as it tends to host as many services as possible
tribution brings several benefits (e.g., high availability and in the same data center.
mitigation of saturations at specific points in the infrastruc- As shown in Figure 6 (c), Clover’s provisioning deci-
ture), if not accompanied by SLA-aware policies, it can sig- sions resulted in an allocation cost increase of only 1.06%
nificantly degrade users’ experience due to excessively long compared to NSGA-II’s Pareto-optimal outcome. This pos-
response times, which nullify any other potential benefits. itive result derives primarily from two resource manage-
As the number of SLA violations is computed per appli- ment decisions. First, Clover prioritizes applications with
cation, preventing violations from applications with fewer greater cost-saving potential and with a smaller number of
services is easier since they naturally have lower overall de- cheap data centers. Consequently, it avoids wasting (po-
mand than applications with more services. That being said, tentially scarce) cheap resources with applications whose
while Worst Fit and Best Fit had a balanced number of SLA probable cost reduction is negligible. Second, Clover’s data
violations regardless of the application size (i.e., number of center sorting scheme prioritizes hosting services in data
services), we can observe that Clover benefited from this, centers with the lowest allocation cost as long as they don’t
achieving results closer to NSGA-II’s Pareto -optimal out- meet latency SLAs.
come. Figure 6 (a) shows that Clover could reduce the num-
ber of SLA violations of smaller applications, completely
mitigating the violations from applications with a single ser-
vice. In addition, Figure 6 (b) shows that Clover provides 7 Conclusion and Future Work
more steady latency for applications, reaching outcomes
close to NSGA-II’s, unlike the naive algorithms, which dis- A software architecture that allows decomposing the appli-
played a high standard deviation. cation into pieces of software, such as microservices, con-
sists of an organization that is very well suited to the con-
6.3.2 Allocation Cost text of cloud computing. It occurs because using multiple
cloud providers in several locations, especially when de-
Figures 6 (c) and (d) present the application cost alloca- ploying composite applications like microservices, can de-
tion results. Like the SLA violation analysis, Worst Fit and liver many cost benefits.
Best Fit delivered the worst outcomes. Unlike Clover and First, it enables excellent flexibility in selecting cost-
NSGA-II, Best Fit and Worst Fit exhibited a high standard effective alternatives for specific microservices or geo-
graphic regions. Each microservice may have distinct re- Nsga-ii. IEEE Transactions on Evolutionary Compu-
source requirements and performance needs, so using dif- tation, 6(2):182–197.
ferent providers for different microservices can be more Dijkstra, E. W. et al. (1959). A note on two problems
cost-efficient. in connexion with graphs. Numerische mathematik,
Then, using multiple cloud providers in different re- 1(1):269–271.
gions can also help optimize data transfer and reduce egress Faticanti, F., Savi, M., Pellegrini, F. D., Kochovski, P.,
costs, which can be a high cost when transferring data be- Stankovski, V., and Siracusa, D. (2020). Deployment
tween different regions. This article proposed to analyze the of application microservices in multi-domain feder-
cost reduction to maintain composite applications. There- ated fog environments. In 2020 International Con-
fore, we simulate applications composed of multiple ser- ference on Omni-layer Intelligent Systems (COINS),
vices, which could be held in different locations as long as pages 1–6.
the sum of the latencies of these locations does not exceed
Hagberg, A., Swart, P., and S Chult, D. (2008). Explor-
the defined service level agreement.
ing network structure, dynamics, and function using
The results showed that the heuristic is specialized networkx. Technical report, Los Alamos National
enough to seek the ideal place for each service that supports Lab.(LANL), Los Alamos, NM (United States).
the application, always looking for the lowest cost within
Ilie, L., Pop, E., Caramihai, S. I., and Moisescu, M. A.
a minimum latency. Furthermore, the heuristic is generalist
(2022). A soa based e-health services framework.
enough to scale to applications with more than two services,
In 2022 E-Health and Bioengineering Conference
as was the case with the proof of concept of this work.
(EHB), pages 1–4.
As future work, we must consider that having a multi-
cloud strategy can provide redundancy and failover pro- Katsuno, Y. and Takahashi, H. (2015). An automated par-
tection in case of a service disruption or outage with one allel approach for rapid deployment of composite ap-
provider. It can minimize the risk of business interruption plication servers. In 2015 IEEE International Confer-
and ensure the continuity of operations. Also, using multi- ence on Cloud Engineering, pages 126–134.
ple cloud providers can mitigate vendor lock-in, which can Kozina, O. and Kozin, M. (2022). Simulation model of data
be a significant cost consideration when dedicating to a sin- consistency protocol for multicloud systems. In 2022
gle provider long-term. It, similarly, can be modeled and IEEE 3rd KhPI Week on Advanced Technology (KhPI-
included in future cost calculations. Week), pages 1–4.
Li, Y., Dai, W., Gan, X., Jin, H., Fu, L., Ma, H., and
Wang, X. (2022). Cooperative service placement
and scheduling in edge clouds: A deadline-driven ap-
REFERENCES proach. IEEE Transactions on Mobile Computing,
21(10):3519–3535.
Anglano, C., Canonico, M., Castagno, P., Guazzone, M., Liu, J., Qiao, J., and Zhao, J. (2018). Femcra: Fine-grained
and Sereno, M. (2020). Profit-aware coalition forma- elasticity measurement for cloud resources allocation.
tion in fog computing providers: A game-theoretic ap- In 2018 IEEE 11th International Conference on Cloud
proach. Concurrency and Computation: Practice and Computing (CLOUD), pages 732–739.
Experience, 32(21):e5220. e5220 cpe.5220. Mahmud, R., Srirama, S. N., Ramamohanarao, K., and
Aral, A., Demaio, V., and Brandic, I. (2021). Ares: Re- Buyya, R. (2020). Profit-aware application place-
liable and sustainable edge provisioning for wireless ment for integrated fog–cloud computing environ-
sensor networks. IEEE Transactions on Sustainable ments. Journal of Parallel and Distributed Comput-
Computing, pages 1–12. ing, 135:177–190.
Blank, J. and Deb, K. (2020). Pymoo: Multi-objective op- Mao, Z., Yang, J., Shang, Y., Liu, C., and Chen, J. (2013).
timization in python. IEEE Access, 8:89497–89509. A game theory of cloud service deployment. In 2013
IEEE Ninth World Congress on Services, pages 436–
Blinowski, G., Ojdowska, A., and Przybyłek, A. (2022). 443.
Monolithic vs. microservice architecture: A perfor- Mufid, M. R., Basofi, A., Al Rasyid, M. U. H., Rochiman-
mance and scalability evaluation. IEEE Access, syah, I. F., and rokhim, A. (2019). Design an mvc
10:20357–20374. model using python for flask framework development.
Chaudhari, N., Bhadoria, R. S., and Prasad, S. (2016). In- In 2019 International Electronics Symposium (IES),
formation handling and processing using enterprise pages 214–219.
service bus in service-oriented architecture system. In Pelle, I., Czentye, J., Dóka, J., and Sonkoly, B. (2019). To-
2016 8th International Conference on Computational wards latency sensitive cloud native applications: A
Intelligence and Communication Networks (CICN), performance study on aws. In 2019 IEEE 12th Inter-
pages 418–421. national Conference on Cloud Computing (CLOUD),
De Donno, M., Tange, K., and Dragoni, N. (2019). Founda- pages 272–280.
tions and evolution of modern computing paradigms: Raj, P., Vanga, S., and Chaudhary, A. (2023). Design,
Cloud, iot, edge, and fog. IEEE Access, 7:150936– Development, and Deployment of Eventx2010;Driven
150948. Microservices Practically, pages 129–142.
Deb, K., Pratap, A., Agarwal, S., and Meyarivan, T. (2002). Sheikh, W. and Sheikh, N. (2020). A model-view-
A fast and elitist multiobjective genetic algorithm: viewmodel (mvvm) application framework for hear-
ing impairment diagnosis - type dependency architec- ment and observation of cross-provider cross-region
ture. In 2020 Intermountain Engineering, Technology latency for cloud-based iot systems. In 2019 IEEE
and Computing (IETC), pages 1–6. World Congress on Services (SERVICES), volume
Shi, T., Ma, H., Chen, G., and Hartmann, S. (2020). 2642-939X, pages 364–365.
Location-aware and budget-constrained service de- Warren, M. S., Skillman, S. W., Chartrand, R., Kelton, T.,
ployment for composite applications in multi-cloud Keisler, R., Raleigh, D., and Turk, M. (2016). Data-
environment. IEEE Transactions on Parallel and Dis- intensive supercomputing in the cloud: Global analyt-
tributed Systems, 31(8):1954–1969. ics for satellite imagery. In 2016 Seventh International
Souza, P., Ângelo Crestani, Rubin, F., Ferreto, T., and Workshop on Data-Intensive Computing in the Clouds
Rossi, F. (2022). Latency-aware privacy-preserving (DataCloud), pages 24–31.
service migration in federated edges. In International Wen, Z., Cała, J., Watson, P., and Romanovsky, A. (2017).
Conference on Cloud Computing and Services Sci- Cost effective, reliable and secure workflow deploy-
ence, pages 288–295. ment over federated clouds. IEEE Transactions on
Vu, T., Mediran, C. J., and Peng, Y. (2019). Measure- Services Computing, 10(6):929–941.