This supersedes https://github.com/kata-containers/kata-containers/pull/12622. I replaced Zensical with mkdocs-materialx. Materialx is a fork of mkdocs-material created after mkdocs-material was put into maintenance mode. We'll use this platform until Zensical is more feature complete. Added a few of the existing docs into the site to make a more user-friendly flow. Signed-off-by: LandonTClipp <11232769+LandonTClipp@users.noreply.github.com>
2.0 KiB
Hypervisors
Introduction
Kata Containers supports multiple hypervisors. This document provides a very high level overview of the available hypervisors, giving suggestions as to which hypervisors you may wish to investigate further.
Note:
This document is not prescriptive or authoritative:
- It is up to you to decide which hypervisors may be most appropriate for your use-case.
- Refer to the official documentation for each hypervisor for further details.
Types
| Hypervisor | Written in | Architectures | GPU Support | Intel TDX | AMD SEV-SNP |
|---|---|---|---|---|---|
| Cloud Hypervisor | rust | aarch64, x86_64 |
❌ | ❌ | ❌ |
| Firecracker | rust | aarch64, x86_64 |
❌ | ❌ | ❌ |
| QEMU | C | all | ✅ | ✅ | ✅ |
| Dragonball | rust | aarch64, x86_64 |
❌ | ❌ | ❌ |
| StratoVirt | rust | aarch64, x86_64 |
❌ | ❌ | ❌ |
Each Kata runtime is configured for a specific hypervisor through the runtime's configuration file. For example:
[hypervisor.qemu]
path = "/opt/kata/bin/qemu-system-x86_64"
[hypervisor.clh]
path = "/opt/kata/bin/cloud-hypervisor"
Cloud Hypervisor
Cloud Hypervisor is a more modern hypervisor written in Rust.
Firecracker
Firecracker is a minimal and lightweight hypervisor created for the AWS Lambda product.
QEMU
QEMU is the best supported hypervisor for NVIDIA-based GPUs and for confidential computing use-cases (such as Intel TDX and AMD SEV-SNP). Runtimes that use this are normally named kata-qemu-nvidia-gpu-*. The Kata project focuses primarily on QEMU runtimes for GPU support.
Dragonball
Dragonball is a special hypervisor created by the Ant Group that runs in the same process as the Rust-based containerd shim.