Supporting Programmable Autoscaling Rules for Containers and Virtual Machines on Clouds

Springer Science and Business Media LLC - Tập 17 - Trang 813-829 - 2019
József Kovács1
1Institute for Computer Science and Control, Hungarian Academy of Sciences, Budapest, Hungary

Tóm tắt

With the increasing utilization of cloud computing and container technologies, orchestration is becoming an important area on both cloud and container levels. Beyond resource allocation, deployment and configuration, scaling is a key functionality in orchestration in terms of policy, description and flexibility. This paper presents an approach where the aim is to provide a high degree of flexibility in terms of available monitoring metrics and in terms of the definition of elasticity rules to implement practically any possible business logic for a given application. The aim is to provide a general interface for supporting programmable scaling policies utilizing monitoring metrics originating from infrastructure, application or any external components. The paper introduces a component, called Policy Keeper performing the auto-scaling based on user-defined rules, details how this component is operating in the auto-scaling framework, called MiCADO and demonstrates a deadline-based scaling use case.

Tài liệu tham khảo

Buyya R, Broberg J, Goscinski AM. Cloud Computing: Principles and Paradigms. Wiley: Hoboken, New Jersey, 2011 Mell P, Grance T. The NIST definition of Cloud computing. NIST special publication 800-145 (final). Technical Report, 2011, http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf Al-Dhuraibi, Y., Paraiso, F., Djarallah, N., Merle, P.: Elasticity in Cloud Computing: state of the art and research challenges. IEEE Transactions on Services Computing (TSC). 11(2), 430–447 (2018) The MTA Cloud infrastructure, https://cloud.mta.hu [March 05, 2019] Research projects supported by MTA Cloud, https://cloud.mta.hu/en/projektek [March 05, 2019] COLA: Cloud Orchestration at the Level of Application, http://www.project-cola.eu [March 05, 2019] AWS Auto Scaling, https://aws.amazon.com/autoscaling/ [March 05, 2019] Rightscale, website http://www.rightscale.com [March 05, 2019] Galante, G., Bona, L.C.E.D.: A programming-level approach for elasticizing parallel scientific applications. J. Syst. Softw. 110, 239–252 (2015) Brendan Burns, Brian Grant, David Oppenheimer, Eric Brewer, and John Wilkes. 2016. Borg, Omega, and Kubernetes. Queue 14, 1, Pages 10 (2016), DOI: https://doi.org/10.1145/2898442.2898444 Cloud Native Computing Foundation, https://www.cncf.io [March 05, 2019] Cloudify, http://getcloudify.org/ [March 05, 2019] Topology and Orchestration Specification for Cloud Applications, TOSCA, http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.1/TOSCA-Simple-Profile-YAML-v1.1.html [March 05, 2019] Docker, http://www.docker.com [March 05, 2019] Prometheus monitoring system, https://prometheus.io [March 05, 2019] Kovacs J., Kacsuk P., Occopus: a multi-Cloud orchestrator to deploy and manage complex scientific infrastructures. Journal of Grid Computing, vol 16, issue1, pp 19–37, 2018 Prometheus exporters, https://prometheus.io/docs/instrumenting/exporters/ [March 05, 2019] Official YAML Web Site, http://yaml.org [March 05, 2019] Terraform, https://www.terraform.io [March 05, 2019] Jinja2, http://jinja.pocoo.org/docs/2.10 [March 05, 2019] Flask, http://flask.pocoo.org/ [March 05, 2019] Kiss, T., Kacsuk, P.: Jozsef Kovacs et all: MiCADO—microservice-based Cloud application-level dynamic orchestrator. Future Generation Computer Systems, Volume. 94, 937–946, ISSN 0167-739X (2019). https://doi.org/10.1016/j.future.2017.09.050 Official documentation site of MiCADO, https://micado-scale.readthedocs.io/en/0.6.1 [March 05, 2019] Prometheus Node Exporter, https://prometheus.io/docs/guides/node-exporter/ [March 05, 2019] Prometheus CAdvisor, https://prometheus.io/docs/guides/cadvisor/ [March 05, 2019] RabbitMQ exporter for Prometheus, https://github.com/kbudde/rabbitmq_exporter [March 05, 2019] CQueue simple container queueing system, http://www.lpds.sztaki.hu/occo/user/html/tutorial-building-clusters.html#cqueue-cluster [March 05, 2019] Chen, H.Y., Hsiung, M., Lee, H.C., Yen, E., Lin, S.C., Wu, Y.T.: GVSS: A High Throughput Drug Discovery Service of Avian Flu and Dengue Fever for EGEE and EUAsiaGrid. J Grid Computing. 8, 529–541 (2010). https://doi.org/10.1007/s10723-010-9159-7