Kubernetes enables deployment and orchestration of containerized applications across server infrastructures and in the cloud. Services running in separate containers are packed together in pods and are placed in Virtual Machines (VMs) or nodes. Application services must be placed in nodes in a way that minimizes the cost of operating an application. The problem often occurs when deploying applications comprising multiple communicating micro-services which may not fit all together in one node. This work suggests that an application is modeled by means of a graph and handles the problem of service placement as a graph clustering one. Service placement must minimize both, the node resources and the bandwidth consumed by the communicating nodes. Several graph clustering methods are deployed in the Kubernetes infrastructure of the Google Cloud Platform (GCP) to support service placement for two real use cases (an IoT architecture and an e-shop). The experimental results demonstrate that the costs of hosting applications on GCP can be significantly reduced compared to the costs of applications placed using the default Kubernetes method.
CITATION STYLE
Aznavouridis, A., Tsakos, K., & Petrakis, E. G. M. (2022). Micro-Service Placement Policies for Cost Optimization in Kubernetes. In Lecture Notes in Networks and Systems (Vol. 450 LNNS, pp. 409–420). Springer Science and Business Media Deutschland GmbH. https://doi.org/10.1007/978-3-030-99587-4_35
Mendeley helps you to discover research relevant for your work.