Monitoring-based auto-scalability across hybrid clouds
Constantin-Cosmin Crecana, Florin Pop
Abstract
Constantin-Cosmin Crecana, Florin Pop
Abstract
Cloud computing is a relatively new type of Internet-based computing that becomes more and more popular. Using methods like virtualization, adopting architectures based on microservices, automation of building and deployment processes, Cloud could provide on-demand resources and scale them accordingly to a Service Level Agreement (SLA). Even if there are a lot of Cloud computing providers (like Amazon AWS, Microsoft Azure, IBM, Google etc.), many of them providing advanced services, already deployed technologies, auto-scaling and monitoring tools, on the long run a private Cloud could cost less than a public Cloud. On the other hand, a private Cloud has the disadvantage of lacking hardware resources for scaling an unexpected spike of usage or periodical growths in the number of requests. This problem could be solved using a public Cloud provider API for extending the hardware by buying and selling resources, using a pay-per-use or a pay-as-you-go model. This paper describes and evaluates a private Cloud architecture capable of on demand deployment of microservices based applications, monitoring every instance using CPU, memory, networking and disk data collectors' software, monitoring every task queue and horizontally auto-scaling the number of instances per service. Using Cloud monitoring data, SLA and budget constraints we decide if a new instance should be spawned or terminated in the private Cloud or in a public Cloud. From the customer point of view the process of auto-scaling across the hybrid Cloud is transparent, but requires a horizontally scalable service. We will illustrate our work running an application packaged as microservices in containers in a Kubernetes private Cloud that will be extended using public resources from AWS. The results of the paper offers an architectural model that can be used to build an in-house, scalable Cloud.
OpenAlex reports 6 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Cloud computing is a relatively new type of Internet-based computing that becomes more and more popular. Using methods like virtualization, adopting architectures based on microservices, automation of building and deployment processes, Cloud could provide on-demand resources and scale them accordingly to a Service Level Agreement (SLA). Even if there are a lot of Cloud computing providers (like Amazon AWS, Microsoft Azure, IBM, Google etc.), many of them providing advanced services, already deployed technologies, auto-scaling and monitoring tools, on the long run a private Cloud could cost less than a public Cloud. On the other hand, a private Cloud has the disadvantage of lacking hardware resources for scaling an unexpected spike of usage or periodical growths in the number of requests. This problem could be solved using a public Cloud provider API for extending the hardware by buying and selling resources, using a pay-per-use or a pay-as-you-go model. This paper describes and evaluates a private Cloud architecture capable of on demand deployment of microservices based applications, monitoring every instance using CPU, memory, networking and disk data collectors' software, monitoring every task queue and horizontally auto-scaling the number of instances per service. Using Cloud monitoring data, SLA and budget constraints we decide if a new instance should be spawned or terminated in the private Cloud or in a public Cloud. From the customer point of view the process of auto-scaling across the hybrid Cloud is transparent, but requires a horizontally scalable service. We will illustrate our work running an application packaged as microservices in containers in a Kubernetes private Cloud that will be extended using public resources from AWS. The results of the paper offers an architectural model that can be used to build an in-house, scalable Cloud.
Key concepts: Cloud computing, Computer science, Microservices, Cloud testing, Scalability, Cloud computing security, Virtualization, Operating system