Skip to main content

LUP Student Papers

LUND UNIVERSITY LIBRARIES

Defining an Evaluation Model for Container Orchestration Operator Frameworks

Arnesson, André LU and Alberius, Samuel LU (2023) EITM01 20231
Department of Electrical and Information Technology
Abstract
The growing complexity of cloud native applications has necessitated the intro-
duction of operators to the container orchestration tools’ suite of components.
Operators affords developers the ability to encode domain knowledge and make
fine-grained controllers for their Kubernetes clusters, radically extending the range of feasible applications to host. Operators are however vast software entities and places large requirements on its developing party, almost forcing the use of a software framework. This master’s thesis explores the evaluation and comparison of Kubernetes operator frameworks. To address the challenge, a novel solution design is proposed, presenting an evaluation model that categorizes and assesses the frameworks using... (More)
The growing complexity of cloud native applications has necessitated the intro-
duction of operators to the container orchestration tools’ suite of components.
Operators affords developers the ability to encode domain knowledge and make
fine-grained controllers for their Kubernetes clusters, radically extending the range of feasible applications to host. Operators are however vast software entities and places large requirements on its developing party, almost forcing the use of a software framework. This master’s thesis explores the evaluation and comparison of Kubernetes operator frameworks. To address the challenge, a novel solution design is proposed, presenting an evaluation model that categorizes and assesses the frameworks using predefined attributes and accompanying metrics. The attributes were related to one of two overarching categories deemed appropriate for by the performed framework study, open source health status or operator capability. Profile assignment is done through the concordance non-discordance principle, inspired by multi-criteria decision theory. This research contributes to the understanding of evaluating Kubernetes operator frameworks and offers valuable insights for developers and decision-makers in selecting appropriate tools for managing cloud-based applications. (Less)
Popular Abstract
In today's interconnected world, online services have become an integral part of our lives. This has seen the demand for scalable, reliable, and efficient infrastructure skyrocket. In the wake of this demand cloud services and Kubernetes have taken great strides to become industry standards. However, large parts of Kubernetes's facilitating technologies are still unexplored.

Cloud services have enjoyed great success on the premise of cloud native applications. Such applications are what facilitates sought-after qualities such as scalability and reliability. However, cloud services and their applications are prone to difficulties in hosting due to their micro-service-based architecture approach. This has spurred the uprising of... (More)
In today's interconnected world, online services have become an integral part of our lives. This has seen the demand for scalable, reliable, and efficient infrastructure skyrocket. In the wake of this demand cloud services and Kubernetes have taken great strides to become industry standards. However, large parts of Kubernetes's facilitating technologies are still unexplored.

Cloud services have enjoyed great success on the premise of cloud native applications. Such applications are what facilitates sought-after qualities such as scalability and reliability. However, cloud services and their applications are prone to difficulties in hosting due to their micro-service-based architecture approach. This has spurred the uprising of orchestration tools, such as Kubernetes, which serve as a central hub for management of micro-services.

Kubernetes was introduced by Google in 2014 and offers a set of building blocks that collectively provides mechanisms to deploy and maintain cloud native applications. These building blocks are heavily standardized, and for good reason. Kubernetes delves into very complex areas and developers would rather focus on their application's logic than the intricacies of microservices and orchestration. Such standardization may however prove problematic, something that is made obvious in the cases of more elaborate and multi-faceted applications. Cloud native applications are often divided on the condition of either being stateful or stateless, meaning it either keeps persistent data or it doesn't. Applications of the stateful kind requires knowledge and techniques that the native Kubernetes building blocks have difficulties providing. To rectify this gap of capability Kubernetes recently introduced the operator pattern into its suits of components.

Once implemented, operators can extend Kubernetes with encoded domain knowledge, enabling developers to provide Kubernetes with whatever capability they find missing. As with most things orchestration related, operators are complex pieces of software, and in practice developers are forced to build them from existing frameworks. This however proves a difficult task, frameworks are plentiful and provide vastly different developing conditions for its users. As Kubernetes itself, frameworks are developed through open source development adding a new dimension of considerations, atop of the more obvious of capability and policy compliance.

To address the challenges associated with comparing and selecting operator frameworks, we present a model for their evaluation. Through literature review and a study of the Kubernetes environment, several attributes representing the qualities of an operator framework are in this study defined. When applied, this model should allow developers to draw conclusions based on familiar and relevant concepts instead of figuratively fumbling in the darkness of online articles and user-provided reviews and sales pitches. Because after all, who doesn't want a smooth operator-framework-choosing-experience? (Less)
Please use this url to cite or link to this publication:
author
Arnesson, André LU and Alberius, Samuel LU
supervisor
organization
course
EITM01 20231
year
type
H2 - Master's Degree (Two Years)
subject
keywords
container orchestration, cloud native application, operator, software framework, evaluation model
report number
LU/LTH-EIT 2023-934
language
English
id
9131510
date added to LUP
2023-06-30 09:56:12
date last changed
2023-06-30 09:56:12
@misc{9131510,
  abstract     = {{The growing complexity of cloud native applications has necessitated the intro-
duction of operators to the container orchestration tools’ suite of components.
Operators affords developers the ability to encode domain knowledge and make
fine-grained controllers for their Kubernetes clusters, radically extending the range of feasible applications to host. Operators are however vast software entities and places large requirements on its developing party, almost forcing the use of a software framework. This master’s thesis explores the evaluation and comparison of Kubernetes operator frameworks. To address the challenge, a novel solution design is proposed, presenting an evaluation model that categorizes and assesses the frameworks using predefined attributes and accompanying metrics. The attributes were related to one of two overarching categories deemed appropriate for by the performed framework study, open source health status or operator capability. Profile assignment is done through the concordance non-discordance principle, inspired by multi-criteria decision theory. This research contributes to the understanding of evaluating Kubernetes operator frameworks and offers valuable insights for developers and decision-makers in selecting appropriate tools for managing cloud-based applications.}},
  author       = {{Arnesson, André and Alberius, Samuel}},
  language     = {{eng}},
  note         = {{Student Paper}},
  title        = {{Defining an Evaluation Model for Container Orchestration Operator Frameworks}},
  year         = {{2023}},
}