Key influencing factors of the Kubernetes auto scaler for computing intensive microservice native cloud based applications
Abstract Nowadays, different types of computing intensive services such as mechanical, aerospace, civil and environmental applications are often deployed on the cloud since it offers a convenient on demand model for renting resources and easy to use elastic infrastructures. Moreover, the modern software engineering disciplines exploit orchestration tools such as Kubernetes to run cloud applications based on a set of microservices packaged in containers. On the one hand, in order to ensure the users' experience, it is necessary to allocate enough number of container instances before the workload intensity surges at runtime. On the other hand, renting expensive cloud based resources can be unaffordable over a long period of time. Therefore, the choice of a reactive auto scaling method may significantly affect both response time and resource utilisation. This paper presents a set of key factors which should be considered in the development of auto scaling methods. Through a set of experiments, a discussion follows to help shed light on how such factors influence the performance of auto scaling methods under different workload conditions such as on and off, predictable and unpredictable bursting workload patterns. Due to suitable results, the proposed set of key factors are exploited in the PrEstoCloud software system for microservice native cloud based computationally intensive applications.
Adv. Eng. Softw.