Modeling, Characterising and Scheduling Applications in Kubernetes

The simplification of resource management for container is one of the most important services of Kubernetes. However, the simplification of distributed provisioning and scheduling decisions can impact significantly in cost outcomes. From an economic point of view, the most important factor to consider in container management is performance interference among containers executing in the same node. We propose a model driven approach to improve resource usage in overall deployment of applications. Petri Net models, a Confirmatory Factor Analysis (CFA)-based model and a regression model allows to predict performance degradation of the execution of containers in applications. Time series indices can provide an accurate enough characterisation of the performance variations in the execution lifetime of applications. These indices can be used in new scheduling strategies to reduce the number of resources used in shared cloud environments as Kubernetes.