Skip to main content

Opportunistic scheduling and resources consolidation system based on a new economic model

Abstract

This paper presents a new opportunistic scheduling and resource consolidation system based on an economic model related to different service level agreements (SLAs) classes. The goal is to address the problem of companies that manage a private infrastructure of machines, i.e., a cloud platform and would like to optimize the scheduling of several requests submitted online by users. For the sake of simplicity of the presentation, the proposed economic model has two SLAs classes (qualitative and quantitative) with three Quality of Service for each SLA class (Premium, Advanced and Best effort). The consequence of this choice as well as the need to serve requests as they come have an impact on the algorithmic ways to consolidate an infrastructure. Indeed, our system proposes a new allocation heuristic that adapts the number of active machines in the cloud according to the global resources usage of all machines inside the infrastructure. This heuristic can be examined as a consolidation heuristic, based on the idea that the system can make reasonable choices, based on the SLAs, for the placement and the allocation of resources for each request. Experimentation with our system is conducted on Prezi (Web workload) and Google Cloud Data (HPC-oriented workload) traces, and they demonstrate the potential of our approach under different scenarios. From a methodological point of view, we propose a general framework which is limited in scope, for the sake of simplicity in reading the paper, with a small number of SLAs, but the idea can be extended to many more SLAs and performance metrics. In this way, the user or the provider operating the cloud have more latitude, thanks to our multi-criteria approach, to control the workload without a sacrifice on performance.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Notes

  1. 1.

    https://github.com/tmenouer/Opportunistic-Scheduling-System.

  2. 2.

    See https://wiki.archlinux.org/index.php/cgroups.

  3. 3.

    The traces were available at http://prezi.com/scale/ and now they are available at https://github.com/SAFC/Prezi.git.

References

  1. 1.

    Alboaneen DA, Pranggono B, Tianfield H (2014) Energy-aware virtual machine consolidation for cloud data centers. In: Proceedings of the 7th IEEE/ACM International Conference on Utility and Cloud Computing, UCC 2014, IEEE Computer Society, London, United Kingdom, December 8–11, 2014, pp 1010–1015

  2. 2.

    Amazon (2019) Amazon ec2. https://aws.amazon.com/ec2/. Accessed 09 Nov 2019

  3. 3.

    Arnold D, Agrawal S, Blackford S, Dongarra J, Miller M, Seymour K, Sagi K, Shi Z, Vadhiyar S (2002) Users’ guide to NetSolve V1.4.1. Innovative Computing Department Technical Report ICL-UT-02-05, University of Tennessee, Knoxville, TN, June 2002

  4. 4.

    Behzadian M, Kazemzadeh R, Albadvi A, Aghdasi M (2010) PROMETHEE: a comprehensive literature review on methodologies and applications. Eur J Oper Res 200(1):198–215

    Article  Google Scholar 

  5. 5.

    Beloglazov A, Buyya R (2015) Openstack neat: a framework for dynamic and energy-efficient consolidation of virtual machines in openstack clouds. Concurr Comput Pract Exp 27(5):1310–1333

    Article  Google Scholar 

  6. 6.

    Buyya R, Abramson D, Giddy J, Stockinger H (2002) Economic models for resource management and scheduling in grid computing. Concurr Comput Pract Exp 14:1507–1542

    Article  Google Scholar 

  7. 7.

    Chapin S, Katramatos D, Karpovich J, Grimshaw A (1997) Resource management in legion. Technical report, J Future Gener Comput Syst. https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.29.5265

  8. 8.

    de Oliveira e Silva JN, Veiga L, Ferreira P (2011) A2HA—automatic and adaptive host allocation in utility computing for bag-of-tasks. J Internet Serv Appl 2(2):171–185

    Article  Google Scholar 

  9. 9.

    Deshmukh SC (2013) Preference ranking organization method of enrichment evaluation (PROMETHEE). Int J Eng Sci Invent 2:28–34

    Google Scholar 

  10. 10.

    Dimopoulos S, Krintz C, Wolski R (2017) Justice: a deadline-aware, fair-share resource allocator for implementing multi-analytics. In: 2017 IEEE International Conference on Cluster Computing (CLUSTER), pp 233–244, September 2017

  11. 11.

    Dong F, Akl SG (2006) Scheduling algorithms for grid computing: state of the art and open problems. Technical report, School of Computing, Queen’s University, Kingston, Ontario

  12. 12.

    Feitelson D, Jettee M (1997) Improved utilization and responsiveness with gang scheduling. In: Feitelson D, Rudolph L (eds) Job scheduling strategies for parallel processing, vol 1291. Lecture notes in computer science. Springer, Berlin, pp 238–261

    Chapter  Google Scholar 

  13. 13.

    Ferdaus MH, Murshed MM, Calheiros RN, Buyya R (2014) Virtual machine consolidation in cloud data centers using ACO metaheuristic. In: Silva FMA, de Castro Dutra I, Costa VS (eds) Euro-Par 2014 Parallel Processing—20th International Conference, Porto, Portugal, August 25–29, 2014, vol 8632. Lecture Notes in Computer Science. Springer, pp 306–317

  14. 14.

    Foster I, Kesselman C (1998) The globus project: a status report. In: 1998 Seventh Heterogeneous Computing Workshop, 1998 (HCW 98) Proceedings, pp 4–18, March 1998

  15. 15.

    Google. Google cluster data traces. https://github.com/google/cluster-data/. Accessed 09 Nov 2019

  16. 16.

    Goudarzi H, Pedram M (2011) Maximizing profit in cloud computing system via resource allocation. In: ICDCS Workshops. IEEE Computer Society, pp 1–6

  17. 17.

    Grandl R, Ananthanarayanan G, Kandula S, Rao S, Akella A (2014) Multi-resource packing for cluster schedulers. SIGCOMM Comput Commun Rev 44(4):455–466

    Article  Google Scholar 

  18. 18.

    Grid500. Grid5000. https://www.grid5000.fr/. Accessed 09 Nov 2019

  19. 19.

    Jean-Pierre Brans BM (2005) PROMETHEE methods—multiple criteria decision analysis: state of the art surveys. International series in operations research and management science. Springer, New York, p 78

    Google Scholar 

  20. 20.

    kubernetes. kubernetes. https://kubernetes.io/. Accessed 09 Nov 2019

  21. 21.

    Menouer T, Cérin C, Darmon P (2020) Accelerated PROMETHEE algorithm based on dimensionality reduction. In: Hsu C-H, Kallel S, Lan K-C, Zheng Z (eds) Internet of vehicles. Technologies and services toward smart cities. Springer, Cham, pp 190–203

    Chapter  Google Scholar 

  22. 22.

    Menouer T, Clavière S, Cun BL (2015) Parallel scheduling system in cloud infrastructure. In: 11th Metaheuristics International Conference (MIC’2015), Agadir, Morocco, June 2015

  23. 23.

    Menouer T, Cérin C (2017) Scheduling and resource management allocation system combined with an economic model. In: 2017 IEEE International Symposium on Parallel and Distributed Processing with Applications and 2017 IEEE International Conference on Ubiquitous Computing and Communications (ISPA/IUCC), pp 807–813, Dec 2017

  24. 24.

    Meyer LAVC, Scheftner D, Vöckler J, Mattoso M, Wilde M, Foster IT (2006) An opportunistic algorithm for scheduling workflows on grids. In: 7th International Conference on High Performance Computing for Computational Science—VECPAR 2006, Rio de Janeiro, Brazil, June 10–13, 2006, Revised Selected and Invited Papers, pp 1–12

  25. 25.

    Raman R, Livny M, Solomon M (1998) Matchmaking: distributed resource management for high throughput computing. In: Proceedings of the 7th IEEE International Symposium on High Performance Distributed Computing, HPDC ’98. IEEE Computer Society, Washington, DC, USA, p 140

  26. 26.

    Raman R, Livny M, Solomon M (2000) Resource management through multilateral matchmaking. In: The Ninth International Symposium on High-Performance Distributed Computing, 2000. Proceedings, pp 290–291

  27. 27.

    Rosenberg AL (2016) Scheduling DAGs opportunistically: the dream and the reality circa 2016. In: Euro-Par 2016: Parallel Processing—22nd International Conference on Parallel and Distributed Computing, Grenoble, France, August 24–26, 2016, Proceedings, pp 22–33

  28. 28.

    Sherwani J, Ali N, Lotia N, Hayat Z, Buyya R (2002) Libra: an economy driven job scheduling system for clusters. In: Proceedings of the 6th International Conference on High Performance Computing in AsiaPacific Region (HPC Asia 2002), pp 16–19

  29. 29.

    Simão J, Veiga L (2012) QoE-JVM: an adaptive and resource-aware java runtime for cloud computing. In: Meersman R, Panetto H, Dillon T, Rinderle-Ma S, Dadam P, Zhou X, Pearson S, Ferscha A, Bergamaschi S, Cruz IF (eds) On the Move to Meaningful Internet Systems: OTM 2012. Springer, Berlin, Heidelberg, pp 566–583

  30. 30.

    Simão J, Veiga L (2016) Partial utility-driven scheduling for flexible SLA and pricing arbitration in clouds. IEEE Trans Cloud Comput 4(4):467–480

    Article  Google Scholar 

  31. 31.

    Singh S, Chana I, Buyya R (2018) Star: sla-aware autonomic management of cloud resources. IEEE Trans Cloud Comput 4:1

    Google Scholar 

  32. 32.

    Skovira J, Chan W, Zhou H, Lifka DA (1996) The EASY—LoadLeveler API project. In: Proceedings of the Workshop on Job Scheduling Strategies for Parallel Processing, IPPS ’96, Springer, London, UK, pp 41–47

  33. 33.

    Taillandier P, Stinckwich S (2011) Using the PROMETHEE multi-criteria decision making method to define new exploration strategies for rescue robots. In: 2011 IEEE International Symposium on Safety, Security, and Rescue Robotics, pp 321–326, November 2011

  34. 34.

    Tannenbaum T, Wright D, Miller K, Livny M (2002) Condor: a distributed job scheduler. In: Sterling T (ed) Beowulf cluster computing with Linux. MIT Press, Cambridge, pp 307–350

    Google Scholar 

  35. 35.

    Teng F (2011) Management des données et ordonnancement des tâches sur architectures distribuées. PhD thesis, Ecole Centrale Paris

  36. 36.

    Ullman J (1975) NP-complete scheduling problems. J Comput Syst Sci 10(3):384–393

    MathSciNet  Article  Google Scholar 

  37. 37.

    Verma A, Pedrosa L, Korupolu M, Oppenheimer D, Tune E, Wilkes J (2015) Large-scale cluster management at Google with Borg. In: Proceedings of the Tenth European Conference on Computer Systems, ACM, p 18

  38. 38.

    Wang L, Gelenbe E (2018) Adaptive dispatching of tasks in the cloud. IEEE Trans Cloud Comput 6(1):33–45

    Article  Google Scholar 

  39. 39.

    Wei G, Vasilakos AV, Zheng Y, Xiong N (2010) A game-theoretic method of fair resource allocation for cloud computing services. J Supercomput 54(2):252–269

    Article  Google Scholar 

  40. 40.

    Wei L, Foh CH, He B, Cai J (2018) Towards efficient resource allocation for heterogeneous workloads in IaaS clouds. IEEE Trans Cloud Comput 6(1):264–275

    Article  Google Scholar 

  41. 41.

    Xiao Z, Song W, Chen Q (2013) Dynamic resource allocation using virtual machines for cloud computing environment. IEEE Trans Parallel Distrib Syst 24(6):1107–1117

    Article  Google Scholar 

  42. 42.

    Xiong K, Perros H (2008) Sla-based resource allocation in cluster computing systems. In: International Parallel and Distributed Processing Symposium, pp 1–12

Download references

Acknowledgements

We thank the Grid5000 team for their help to use the testbed. Grid’5000 is supported by a scientific interest group (GIS) hosted by INRIA and including CNRS, RENATER and several Universities as well as other organizations. This work is partially supported by the National Natural Science Foundation of China (Grant No. 61872084).

Author information

Affiliations

Authors

Corresponding author

Correspondence to Tarek Menouer.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Menouer, T., Cérin, C. & Hsu, CH. Opportunistic scheduling and resources consolidation system based on a new economic model. J Supercomput 76, 9942–9975 (2020). https://doi.org/10.1007/s11227-020-03231-z

Download citation

Keywords

  • Scheduling
  • Optimization
  • Distributed computing
  • Cloud computing
  • Service computing
  • Consolidation of servers