Robustness Evaluation and Performance Analysis of Kubernetes and Kubernetes-based CaaS Platforms

OData support
Dr. Sonkoly Balázs
Department of Telecommunications and Media Informatics

The CaaS platforms appeared with the spread of container technology. Such a platform is the Kubernetes developed by Google, now an open project, which helps the development, deployment, scaling, and maintenance of containerized applications. There are several features, which are useful for both developers and operators. These are AutoScaling and Self-healing that contribute to the robustness of the application. There are many projects that deal with the extending (distributions) of the Kubernetes, or making the installation easier (installer). The Gardener developed by SAP is an open-source installer, that realize the installation and management of Kubernetes clusters. The architecture of the cluster that can be created is different from the standard structure of Kubernetes, because of this the comparison of the two systems is important.

In my thesis, I tested the performance of Kubernetes and Gardener systems at different loads in terms of user experience, during which I analyzed the effect of AutoScaling on the user experience. I measured the response time and other parameters that describe the state of the system, and I made the comparison based on these. To do the measurements, a Kubernetes system was installed at OpenStack and a Gardener system at AWS (Amazon Web Services), then with help of Gardener, I deployed another Kubernetes cluster there too. From the results, I conclude that the architectural modification does not have a significant effect on robustness and performance, but with certain adjustments to automatic scaling, improvement can be achieved. The faster the system collects data and checks the need for scaling, the better it performs. Based on the measurement results, I defined my own metric, the critical utilization, which characterizes the system in terms of performance. Then I made measurements on the clusters to determine the critical utilization. Comparing the values measured on Kubernetes and Gardener, it can be also stated that not the architectural changes, but the different settings of automatic scaling affect the performance. The third aspect of robustness and performance testing was a statistical analysis. I measured the correlation between the different states of the system using two-sample t-test. From the results, I came to the conclusion that automatic scaling with the increase of load affects the user experience.


Please sign in to download the files of this thesis.