option, they may not always be the best solution for
any combination of workload and edge device. Other
virtualization options include micro Virtual Machines
(microVMs), which boast improved security and re-
source use compared to containers (Goethals et al.,
2022), or WebAssembly (Wasm) (Sebrechts et al.,
2022), which aims for microVM security and perfor-
mance without the necessity for a hypervisor. Exam-
ple use cases include a home automation edge gate-
way running privacy sensitive processing tasks in a
microVM, while automation rules and dashboards are
run in containers. Another use case involves ad-hoc
federation of networked resources in emergency sit-
uations, running mission critical tasks on possibly
untrusted nodes inside microVMs while support ser-
vices are run in containers.
This paper proposes a Kubernetes-compatible
solution for edge workload orchestration named
Feather. Based on the lightweight FLEDGE orches-
trator (Goethals et al., 2020), Feather extends its ca-
pabilities beyond containers to include microVMs.
As such, it allows developers to choose the right vir-
tualization option for their workloads, and allows re-
searchers to easily compare different virtualization
methods for edge computing. Additionally, Feather
uses relevant Open Container Initiative (OCI) stan-
dards, which are important for interoperability with
Kubernetes and Docker containers.
This paper also presents an end-to-end solution
for packaging, distributing and deploying workloads
in a runtime-agnostic manner, allowing developers to
use an almost identical deployment workflow for both
containers and microVMs that seamlessly integrates
with the Kubernetes ecosystem.
Concretely, the contributions of this paper are:
• Designing an extensible, Kubernetes-compatible
agent which allows for the deployment of non-
container workloads on edge devices
• Providing an OCI-compliant method for pack-
aging and distributing non-container workloads
through a container repository
• Illustrating the potential of multi-runtime work-
loads in a Kubernetes (edge) cluster
• Minimizing the resource overhead of edge orches-
tration, leaving the bulk of device resources for
edge computing
The rest of this paper is organized as follows: Sec-
tion 2 presents existing research related to the various
topics in this paper, from which research questions are
derived in Section 3. Section 4 introduces all the high
level architecture aspects. In Section 5, the evaluation
setup, scenarios and methodology are detailed, while
the results are presented and discussed in Section 6.
Topics for future work are listed in Section 7 and fi-
nally, Section 8 draws high level conclusions from the
paper.
2 RELATED WORK
2.1 Virtualization
The properties and performance of container run-
times have been extensively examined in various stud-
ies (Wang et al., 2022; de Velp et al., 2020).
MicroVMs are a lightweight form of VM de-
signed to run individual workloads or processes.
There are several technologies that enable the cre-
ation of microVMs, among which unikernels are
a varied group with excellent security and perfor-
mance features (Kuenzer et al., 2021; Abeni, 2023).
Unikernels are a type of library operating system in
which a program, along with only the required sys-
tem libraries and system calls, is compiled into a
single kernel space executable embedded in a VM
image, thus minimizing image size and attack sur-
face. Furthermore, they can be roughly classified
into two types: POSIX-compatible (Portable Oper-
ating System Interface(Walli, 1995)) ones that fo-
cus on existing software, and those based on non-
POSIX system interfaces which sacrifice compatibil-
ity for smaller images and lower resource require-
ments. OSv(Kivity et al., 2014) in particular is
a POSIX-compatible unikernel platform with wide
compatibility for existing programs and programming
language runtimes. Although microVMs generally
support a wide variety of hypervisors for their ex-
ecution, QEMU(Bellard, 2005) with KVM (Kernel-
based Virtual Machine(Habib, 2008)) acceleration is
a widely supported option.
Both containers and microVMs are examples of
degrees of virtualization, where at least some degree
of isolation from the host system is established. Dif-
ferent classes of virtualization technologies, includ-
ing gVisor and Firecracker, have been compared and
benchmarked (Goethals et al., 2022), and their per-
formance examined at the kernel level (Anjali et al.,
2020).
The WebAssembly System Interface
(WASI) (M
´
en
´
etrey et al., 2022) is a new and
fundamentally different approach to sandboxing,
interposing itself between WebAssembly (Wasm)
programs and a host system (e.g. Linux kernel). Like
gVisor, it implements its own System Interface to
intercept program system calls, but it focuses on both
security and performance while being entirely device-
and system-agnostic. While still under development,
CLOSER 2024 - 14th International Conference on Cloud Computing and Services Science
28