Published March 22, 2024 | Version v1
Presentation Open

Unikernels in K8s: Performance and Isolation for Serverless Computing with Knative

  • 1. NUBIS PC

Description

Knative enables users to execute workloads on demand, in K8s nodes. Deployments scale as needed, with application code packaged in container images. Ensuring optimal performance and isolation for workloads remains a crucial challenge for service providers. Low-level container runtimes like Kata and gVisor provide isolation for workloads by running containers inside a VM sandbox. However, the process of managing a full virtualization stack for workload execution results in increased usage costs, especially in the serverless paradigm due to the overhead of instantiating VMs. How can providers select the most suitable container runtime to optimize code execution in terms of cost, performance and isolation? In this presentation, we walk through the process of sandboxing Knative function pods. We compare existing sandboxed solutions to urunc, our custom container runtime that is able to spawn cloud-native unikernels. We share benchmark results and discuss the trade-offs of each solution.

Files

NUBIS-Unikernels-k8s-Knative.pdf

Files (4.0 MB)

Name Size Download all
md5:db49c966252333cf2c0ead57c970f7ba
4.0 MB Preview Download

Additional details

Funding

DESIRE6G – Deep Programmability and Secure Distributed Intelligence for Real-Time End-to-End 6G Networks 101096466
European Commission
MLSysOps – Machine Learning for Autonomic System Operation in the Heterogeneous Edge-Cloud Continuum 101092912
European Commission
EMPYREAN – EMPYREAN: TRUSTWORTHY, COGNITIVE AND AI-DRIVEN COLLABORATIVE ASSOCIATIONS OF IOT DEVICES AND EDGE RESOURCES FOR DATA PROCESSING 101136024
European Commission