- 3.2 backport bunch - stable-3.2: Backport everything related to the tests - 3.2 backport | kata-deploy: Use host's systemctl - 3.2 backport | dragonball: use version 0.10.4 of `fuse-backend-rs`2cda69b284release: Adapt kata-deploy for 3.2.093c7d165dcci: k8s: Fix bogus firecracker check in k8s-credentials-secrets.bat12b8cbb4f6tests: Adjust timeout for agent stability test37c99a46b1tests: Enable agent stability test92f283f062runtime: Validate hypervisor section name in config file8cf5506700metrics: fixes common.sh function to always return true544f261433metrics: skips docker restart when it is not installed or is masked.26c6ca93d3metrics: removing trailing comma characters from json file.0e0aabfd87metrics: removal of reference in the documentation to the dax test.5d911db5e2tests: Remove unused function from scability testa380437380tests: Fix path for versions yaml for soak parallel test4495a79721tests: Enable scability test for stability CI961daee983scripts: Use install_yq from the `kata-containers` repo9b48525af1release: tag_repos: Stop tagging / updating the `tests` repo668c8979f0runtime: fix reading cgroup stats of sandboxes11e2f2a458versions: Bump virtiofsd to v1.8.09eb8723a5bclh: arm: Use static_sandbox_resource_mgmt=truee7579d20f7runtime/qemu: Rework QMP/HMP supportf0278f41d7runtime/virtiofsd: Drop all references to "--cache=none"4679aa7712runtime/qemu: Pass "--xattr" to virtiofsd instead of "-o xattr"03d712ab25runtime: Allow virtio_fs_extra_args annotatione0513094a0runtime/vc: runPrestartHooks should ignore GetHypervisorPid failurec17cbd30f0runtime: fail early when starting docker container with FC7e6f8010bdruntime: run prestart hooks before starting VM for FCfa824af234qemu: tdx: Workaround SMP issue with TDX 1.507471cd7a6qemu: tdx: Adapt to the TDX 1.5 stack2f28866f26versions: tdx: Update Kernel to 6.2 + TDXa36064c729versions: tdx: Update TDVF to the "edk2-stable202302"65e0b99eb4versions: tdx: Update QEMU to v7.2 + TDX v1.109ce8ee6c0cruntime/fc: fix image/initrd annotation handlingf86bfe0da3runtime/clh: fix image/initrd annotation handling59fae423b5runtime/qemu: fix image/initrd annotation handlingef65c5767fkata-agent: use default filemode for block device when it is set to 093609aa0cddeps: Bump dependent crate versions7ff98daecfgha: Add install dependencies for stability testsef49db59f7gha: Add general dependencies to stability testsa818f628d7tests: Add soak parallel stability test602c56c0d7tests: Enable soak parallel testa195539307ci: k8s: set KUBERNETES default valuec4456c21d9tests: run k8s-volume on a given node58ad833300tests: run k8s-file-volume on a given nodea54bdd00d5tests: exec_host() now gets the node name0eaf81c1a2tests: add get_one_kata_node() to tests_common.sh5f2c7c78ffci: k8s: set KATA_HYPERVISOR default value7fceb21362ci: k8s: configurable deploy kata timeoutc4b0f1f31bci: k8s: shellcheck fixes to gha-run.sh6fb40ad47dkata-deploy: re-format kata-[deploy|cleanup].yaml5cd2e947dcci: k8s: run_tests() for kcli56cebfb485ci: k8s: add deploy-kata-kcli() to gh-run.sh6b76d21568ci: k8s: add cleanup-kcli() to gha-run.sh308ce26438ci: k8s: set default image for deploy_kata()c3b91ed394ci: k8s: create k8s clusters with kcli33791f0944metrics: stops kata components and k8s deployment when test finishes621e6e6d8cgha: combine coco jobs into a single yamlfe52c0900cgha: combine basic amd64 jobs into a single yaml301a7d94e3gha: ci: Revert tracing test PR to unbreak CIc1da29b9b1ci: Port runk tests to this repo63be808730ci: Add placeholder for runk tests6541969a83ci: Move tracing tests here5d232c8143ci: Add placeholder for tracing tests619ef169fbci: Create a function to install docker16e31dd409metrics: Use jq tool to pretty-print json metrics output1f9a4e908fmetrics: Enables FIO test for kata containersfe4f72e0a1gha: Add containerd stability tests to ci yaml7963298ba2gha: Add stability gha run scripta4e0929054gha: Add stability tests workflow for ghabe3a3c221bgha: arm64: Ensure the builder is arm64-builderf20164dc75packaging: tools: Remove `set -x` leftover1941d87b84packaging: release: Mention newly added images95da1c71ecpackaging: tools: Fix container image env var name508016fca1packaging: Allow passing the TOOLS_CONTAINER_BUILDERbb1efe0d46packaging: stable-3.2: Remove everything related to agent policy892c9f2f03gha: Build the kata-agent as part of our workflowsa586b8c581packaging: Build the kata-agent766a5fa118agent: Allow specifying DESTDIR and AGENT_POLICY via env vars050a4260b9packaging: Add get_agent_image_name()3770b200a8gha: Fix k0s deploymentcf254bc4eetests: Add general stability fixes1edf2d9bc1tests: Add agent stability testa8eec39559tests: Add cassandra stress in stability tests240c584ae2tests: Add stressng dockerfile for stability testse95d3b1be5tests: Add stressor CPU test for stability tests4393f553e9metrics: Add stability test for kata CI362adea8cdmetrics: Fix general check static warnings16c349e76cdocs: Update url in kata vra document5800be5029ci: Build src/tools components as part of our tests / releases41b509e0a6kata-deploy: Build components from src/toolsa5d7ba6662static-build: Add scripts to build content from src/toolsd503daf75epackaging: Add get_tools_image_name()b2e432c024packaging: Use git abbreviated hashc22fdb46e3metrics: Increase qemu jitter value8a1af8689bmetrics: Increase jitter value for clhf3fcf6cbf9metrics: Add checkmetrics for latency testce03e9f97ametrics: Add qemu latency value limitcd82a351bdmetrics: Add latency value limits for kata CI1709f99975ci: kata-monitor: Move tests overa50c7f1972ci: Add placeholder for kata-monitor testsc42d19619dci: Make install_kata aware of container engines5017435734ci: Create a generic install_crio function98e9434be4ci: Add install_cni_plugins helperc61b488b66ci: Modify containerd default config7c4617cfacmetrics: Add init_env function to latency teste106ecd1e4metrics: Fix latency yamls path665805c81cmetrics: Fix spelling warningsb0c9b4254bmetrics: Fix metrics READMEc28a0a03f0metrics: Fix C-Ray documentation48a9b4ab13ci: crio: Trail '\r' from exec_host() output2de1c8bac2ci: crio: Enable default capabilitiesd1d3c7cbdakata-deploy: Fix CRI-O detection0de3216b08kata-deploy: Add k0s support468a3218f5ci: crio: Pass `-y` to apt3f2780fca6metrics: Add latency benchmark for gha73a084a7d4metrics: Enable latency test in gha run scriptcf3abd308flocal-build: Fix .docker ownership before build-payload8b607ff79agha: Add pandoc as a dependency for static checks6a9384ed40gha: Install hunspell for static checksa11e8867afci: Trigger payload-after-push on workflow_dispatch390bde3182ci: Actually enable the CRI-O testsf2953e6448ci: k8s: rke2: Use sudo to call systemd08bdb6b5daci: k8s: Add a CRI-O testb41fa6d946ci: k8s: Add a method to install CRI-O67fef9d5c6ci: k8s: k0s: Allow passing parameters to the k0s installer2c3f130c85ci: kata-deploy: Fix runner name7a8d848a92ci: Enable kata-deploy tests for all the supported k8s flavours7fc2f7d003ci: kata-deploy: Add the ability to deploy rke259a4b00d29ci: kata-deploy: Add the ability to deploy k0s1a605c33adci: kata-deploy: Add deploy-k8s argument to gha-run.sh19ee6c9fd7ci: kata-deploy: Expland tests to run on k0s / rke203a8bed32bci: kata-deploy: Add placeholder for tests on GARMf09c255766ci: kata-deploy: Export KUBERNETES env varabe9dc9904ci: Move deploy_k8s() to gha-run-k8s-common.shea6489653eci: Properly set K8S_TEST_UNION7892e04dd1ci: Add first letter of the K8S_TEST_HOST_TYPE to resource group name882d7d7d89ci: Create clusters in individual resource groupsb09a3f8f8emetrics: Add parallel bandwidth limit for qemu63e8c38a7ametrics: Enable parallel bandwidth iperf limitf3c42ff5fenydus: Temporarily skip tests on dragonball49c1a37330nydus: Use `kata-${KATA_HYPERVISOR}` instead of `kata`ae55c0b510static-build: Fix arch error on nydus build65e5bfe9ebtests: nydus: Update nydus tests079ab1e0acversions: Bump nydus and nydus-snapshotter to its latest released9e910702bgha: nydus: Populate run()33a4427845gha: nydus: Populate install_dependencies()70c1c7d868gha: nydus: Actually install kata when `install-kata` is called30efa3e563gha: nydus: Get rid of nydus{,-snapshotter} install from nydus_test.sh9ad6000676tests: nydus: Add timeout to the crictl calls6d9b8e2437tests: nydus: Add uid / namespace to the nydus container / sandboxfd5935da9dtests: nydus: Decorate some calls with `sudo`4b58777eectests: nydus: Adapt "source ..." to GHA82c531978ftests: nydus: Adapt check to "clh" instead "cloud-hypervisor"4915605b20tests: common: Add install_nydus_snapshotter()8e4180f697tests: common: Add install_nydus()625a05aa2aci: static-checks: Clean up static-checks job9784ded336ci: static-checks: Run tests depending on KVM668b7effb4ci: static-checks: Move "sudo make test" to the new test matrix4b660a4991ci: static-checks: Move "make test" to the new test matrix9e614ce466runtime-rs: Ensure static-checks-build is a dep of `make test`d5d21f4cb4kata-ctl: Use `loop` instead of `kvm` module in tests93577381a5kata-ctl: Ensure GENERATED_CODE is a dep of `make test`93440dc141agent: Ensure GENERATED_CODE is a dep of `make test`d269f09a66ci: install_libseccomp: Do not depend on the tests repobb920178adci: static-checks: Move "make check" to the new test matrixd6996d01c0kata-ctl: Add `kata-types` to the Cargo.lock filea62e18b27fkata-ctl: Ensure GENERATED_CODE is a dep of `make check`cd6ab3cf07tests: install_rust: Also install clippyd288e1ab87ci: static-checks: Move vendor check to its own job755057c9edtests: Move install_rust.sh from the tests repod3a04b7b8ftests: install_go: Remove tests repo dependencyc18c412db7tests: Move functions from kata_arch script herebb8d1be300ci: static-checks: Move kernel config check to its own job7c4a0f7facci: Use variable size of VMs depending on the tests running7019a25f25ci: cache: Fix ovmf-sev cachedc9f2c24f1ci: cache: Check the sha256sum of the componenta55c082fa1ci: cache: Remove the script used to cache artefacts on Jenkinse464bbfc93ci: cache: Also store the ${component} sha256sumb5da4ce0d8ci: cache: Use the cached artefacts from ORAS2f280659b1ci: k8s: Temporarily disable tests that require a bigger VM instancef160effaeeci: cache: Push cached artefacts to ghcr.io6f8ded36b6kata-deploy: Generate latest_{artefact,image_builder} files0210db6e34ci: cache: Install ORAS in the kata-deploy binaries builder container27dd77469dci: k8s: devmapper: Use a smaller / cheaper VM instance3b64c8d687ci: nydus: Use a smaller / cheaper VM instance03857041e4ci: nerdctl: Use a smaller / cheaper VM instance301edcb92eci: docker: Use a smaller / cheaper VM instance594fcdce56ci: cri-containerd: Use a smaller / cheaper VM instancefa9dd46041ci: k8s: Don't set cpu limit request for k8s-inotofy test767ccb117fci: Reduce the size of the AKS VMs054895fcddci: cache: For consistency, read all used env vars5e22a3085bci: cache: Pass the exposed env vars to the kata-deploy binaries in dockerbda0354491ci: cache: Export env vars needed to use ORASc78f740854metrics: Add iperf cpu utilization limit for qemu73e989c4b1metrics: Add iperf value for cpu utilization1c32b31589tests: Apply timeout to 'ctr t kill'1d78871713tests/vfio: Bump VM image to Fedora 38b40a42699dtests/vfio: Accept single device in vfio group for CLH82a0225159tests/vfio: Get rid of sync'sa1aed0c78egha: vfio: Set test timeout to 15m32be55aa8apackaging: kernel: Enable VIRTIO_IOMMU on x86_643b5c5bcfa4runtime: clh: Support enabling iommua0f59829b2tests/vfio: Give commands 30s to execute65943d5b77tests/vfio: Configure a value for 'hot_plug_vfio' for both vmms18a8b8df03runtime: Remove redundant check in checkPCIeConfigd86af5923fruntime: Add test cases for checkPCIeConfig0a918d0d20runtime: Check config for supported CLH (cold|hot)_plug_vfio values86201ace5aruntime: clh: Add hot_plug_vfio entry to config01265fb217tests/vfio: Gather debug info and disable tdp_mmu44f37f689atests/vfio: Capture journal from vma69d0d1772tests/vfio: Change to get the test working in GHAe90027f38ctests/vfio: Move dependency installation to gha-run.sh62804d637cgha: vfio: Import jobs scripts from tests repo97283b18b4metrics: Increase jitter value for qemu3c5bd8c44dmetrics: Increase value limit for jitter in clh6abf513f06ci: docker: nerdtl: Use io.containerd.kata-${KATA_HYPERVISOR}.io9a664ea8bbci: nerdctl: Create the containerd config5734c4cbcaci: nerdctl: Switch to tcp port 80 ping55c8a47a40ci: docker: Switch to tcp port 80 ping31c3d9bd80metrics: Add iperf bandwidth value for qemu40ae855f0emetrics: Add iperf bandwidth value for kata metricsdeadacd58fmetrics: Ensure docker is running in init_env31c33f9c1cmetrics: Add Cassandra Metrics documentation0968bf1eb9metrics: this PR skips the FIO test temprarily to fix issuese5e3951398ci: docker: Also run the smoke test with runcc7147dabceci: docker: Run the tests after the kata-static is created33430ad60cci: Add a very basic nerdctl sanity test69dd11f459ci: Add a very basic docker sanity testfcfa6c6e1aci: use github.ref_name instead of $GITHUB_REF_NAME19d9fd9eb1ci: Add more target-branch related fixesfe4247a90cci: Fix target-branch usage9f510d059bmetrics: Remove warning from metrics documentation400418bce0kata-deploy: Remove curl after it's used1df997c38ckata-deploy: Fix aarch64 image build61b1a99fcagha: Manually rebase PR atop of the target branch before testingdb563709e3kata-deploy: Switch to an alpine imagebb5dbfbbcek8s: ci: Skip "Pod quota" test with firecracker263ed4afd1ci: k8s: Remove useless skip statement from tests7e135294a7ci: k8s: Also check for "fc" (for firecracker)8892d9a7b2ci: k8s: Add clean-up-garm argument for gha-run.shc723a7d9c8ci: k8s: devmapper tests should be using ubuntu 20.04aee6f36c86ci: k8s: Add a kata-deploy-garm target5bb77b628dci: k8s: Export KUBERNETES env var7ce5c8b3faci: k8s: Install bats on GARM runners9fb291d88aci: k8s: Wait some time after restarting k3s053308eefcmetrics: fix FIO test initialization89345b6731ci: k8s: Append, instead of overwrite, the devmapper configbb675f8101ci: k8s: Decrease k3s sleep from 4 to 2 minutes695c7162efci: k8s: Use vanilla kubectl with k3s7f865be398ci: k8s: Ensure k3s is deploy with --write-kubeconfig-mode=6447a96d0a589ci: k8s: Use the proper command for sleep92fdaf9719metrics: Use TensorFlow optimized image1b7ffeac53ci: k8s: Fix typo in run-k8s-tests-on-garm.yaml79de72592fci: k8s: Add k8s devmapper tests (part 0)a41a56e326ci: k8s: Add a function to configure devmapper for containerd315288a000ci: k8s: Add a function to deploy k3s899c823c0bpackaging: do not install docker-compose-plugin for s390x|ppc64le374e77d330metrics: Add write 95 percentile for FIO for qemu22ce1671a6metrics: Add write 95 percentile FIO value5e90c8e176metrics: Add checkmetrics to gha run script651b89ba41metrics: Add checkmetrics value for qemu for iperf907baa3464metrics: Add jitter value for clhd9408a7283metrics: Add test selector to iperf metrics3583f373f5metrics: Enable iperf benchmark on gha for kata metrics7fd7186780CI: switch static-checks-dragonball CI machines to Azure9b6c5eaff1kata-deploy: Create kata-static.tar with correct ownership4403af74ecmetrics: re-enable memory-usage initialization stepd2d7c041f3metrics: fix parsing issue on memory-usage test8c7a4fd121gha: Rebase atop of the target branch75dcca5a53metrics: Add grabdata script for metrics report59e7c3a347gha: Update to checkout@v3 action8f1cc278cametrics: Add report generator link to general documentation05180b61a0metrics: Add README for kata metrics report17c88a1a7fmetrics: Add limit for 90 percentile for qemu valuedbb4761c4bmetrics: Add limit for write 90 percentile value for clhaebf392e45metrics: Enable FIO limits for kata metrics41d05b8857metrics: Fix memory footprint qemu limit3491407581metrics: Fix memory inside limits for kata metrics08027f2282metrics: Add test setup details to metrics report99103db1fbmetrics: Add boot lifecycle times to metrics report75c92ba474metrics: Add memory inside container to metrics report1c1eb98107metrics: Add scaling system footprint in metrics report01f6e6a1a3metrics: Add metrics reportgen428eb6908dmetrics: Add report file titlesa8fa3d99dametrics: Generate PNGs alongside the PDF report80625ed573metrics: Add metrics report R files9f8e194e6fmetrics: Add report dockerfile03c206f87fmetrics: Add metrics report script2684b267f7tests: Expand confidential test to support TDX4976629aeetests: Expand confidential test to support SNP019849071etests: Add confidential test for SEV1b7c7901d9local-build: Remove $HOME/.docker/buildx/activity/default6a34bae03dgha: Avoid "fail-fast" in tests that are known to be flaky17d22cae34tests: use unique test namee8c24fa0b9tests: delete k8s deployment at the test's end3e07c89d39metrics: Remove unused variable in tensorflow nhwc script5b9a69433dkata-deploy: Don't try to remove /opt/katae99a13d26cgha: vfio: Run on Ubuntu 23.04 runner394d146b89local-build: Remove GID before creating group7421737229metrics: Add TensorFlow ResNet50 fp32 Dockerfile9acbf2faf7metrics: Add TensorFlow ResNet50 FP32 benchmark4f2c9372c3kata-deploy: Avoid failing on content removal6ea1d3bffdmetrics: Add disk link to READMEad2036927fmetrics: Fix FIO pathabcb225ce3metrics: Use function from metrics common in pytorch script508f1bba15gha: capture additional kata-deploy outputd46c300608metrics: Enable kata runtime in K8s for FIO test.3d3882a06ametrics: Update tensorflow name in gha run script7d0a3dbf24metrics: Fix check results for tensorflow benchmark3e2a383b7dgha: kata-deploy: Do the runtime class cleanup as part of the cleanup2c5db14a1agha: kata-deploy: Add the first kata-deploy test0b4fb826demetrics: Remove unused variable in tensorflow mobilenet scriptb38624e2b3tests: common: Ensure test_type is used as part of the cluster's namecdfcd9aba8tests: commob: Don't fail if yq is not part of the cache74edbaac96gha: kata-deploy: Add run-kata-deploy-tests.shd7130f48b0gha: k8s: Stop running kata-deploy tests as part of the k8s suite810507e8a3tests: k8s: Call ensure_yq() in setup.sh915bace795kata-deploy: Properly create default runtime class870d8004a0metrics: Fix MobileNet help me description145450544dgha: ci: Start running kata-deploy testsbd29413721docs: Fix TensorFlow word across the documenta845e94139docs: Add Tensorflow Resnet50 documentation6e5a5b8249metrics: Add Dockerfile for ResNet50 int85d85cac1d6metrics: Add Tensorflow ResNet50 int8 benchmark7474e50ae2gha: cri-containerd: Enable tests20be3d93d5gha: cri-containerd: Add timeout to the crictl calls on testContainerStop10058f718agha: cri-containerd: Show pod before deleting it585d5fba03gha: cri-containerd: Print kata logs in case of error2fea5a5f8bgha: cri-containerd: Group containerd logs3c7597f4bagha: cri-containerd: Ensure RUNTIME takes KATA_HYPERVISOR into account738d808cacmetrics: Rename tensorflow scripts4bb8fcc0c0tests: kata-deploy: Add placeholder for kata-deploy-tests-on-tdxf5e14ef283tests: kata-deploy: Add placeholder for kata-deploy-tests-on-akse812c437fetests: kata-deploy: Add functional/kata-deploy/gha-run.sh placeholderc19cebfa80tests: Add gha-run-k8s-common.sh4e8c512346metrics: fix the loop used to stop kata components #762947f32c4983metrics: Add cassandra statefulset yamld5a14449fcmetrics: Add cassandra service yaml1292b51092metrics: Add block loop pvc yaml for cassandra105a556a30metrics: Add block loop pv yaml for cassandra test1b126eb4cemetrics: Add block loop pvc for cassandra test671ad98451metrics: Add Cassandra Kubernetes benchmark for kata metrics058b304455gha: static-checks: Move to the Azure instancesb600659df2metrics: Add check containers are running in tensorflow mobilenet1b30aa818emetrics: Add check containers are up in tensorflow script3502bb4b20metrics: Remove unused variable in tensorflow scriptb07c19eb5fmetrics: Add check containers are running functionfc89392745metrics: Add check containers are up in tensorflow mobilenet script73843b786dmetrics: Use check containers are up in tensorflow script7fffa7f9cemetrics: Add check containers are up in common script1b68145b6ametrics: Use collect_results function in tensorflow mobilenet testf29f811470metrics: Remove collect results function definition6b6a6ee724metrics: Add common functions to the common scripta341c2f324metrics: compute tensorflow statisticsb8b4ca10e9ci: unencrypted-image: Fix build contextdcc35781f7ci: unencrypted-image: Don't fail to build on s390xbabbd4186cci: create-confidential-image: Add dependent actionscecb30dbb2metrics: Add nginx documentation to network README1971fe4986metrics: Add nginx kubernetes yaml6c921ce3dbmetrics: Add network nginx benchmarka5a3e4124fci: k8s: tees: Ensure PR_NUMBER is exported3a21c485bfci: {{ pr-number }} should be {{ inputs.pr-number }}218d83bd3ftests: k8s: Ensure the runtime classes are properly created0625d8dfc1ci: Add build-and-publish-tee-confidential-unencrypted-image6ae591c618ci: k8s: Add the image used for unencrypted confidential tests8d4f9ef256tests: upgrade bats versiona484666890metrics: install kata once and run multiple checks759b0fa385metrics: General improvements to mobilenet tensorflow testd6398ccf9emetrics: Add iperf to gha run scripta75db20167gha: Add iperf network metricsb33d4de013metrics: Add latency test to network READMEdb23b95b53metrics: Add latency server yaml2b60fe0fe0metrics: Add latency client yamlaa71d6f931metrics: Add network latency testb2c627aac9metrics: Improve naming testing containers in launch times testea1fdd2cb9metrics: Clean kata components before start a metric test.7d5f65be7ckata-deploy: Use host's systemctl2881bad407dragonball: use version 0.10.4 of `fuse-backend-rs` Signed-off-by: Greg Kurz <groug@kaod.org>
Kata Containers
Welcome to Kata Containers!
This repository is the home of the Kata Containers code for the 2.0 and newer releases.
If you want to learn about Kata Containers, visit the main Kata Containers website.
Introduction
Kata Containers is an open source project and community working to build a standard implementation of lightweight Virtual Machines (VMs) that feel and perform like containers, but provide the workload isolation and security advantages of VMs.
License
The code is licensed under the Apache 2.0 license. See the license file for further details.
Platform support
Kata Containers currently runs on 64-bit systems supporting the following technologies:
| Architecture | Virtualization technology |
|---|---|
x86_64, amd64 |
Intel VT-x, AMD SVM |
aarch64 ("arm64") |
ARM Hyp |
ppc64le |
IBM Power |
s390x |
IBM Z & LinuxONE SIE |
Hardware requirements
The Kata Containers runtime provides a command to determine if your host system is capable of running and creating a Kata Container:
$ kata-runtime check
Notes:
This command runs a number of checks including connecting to the network to determine if a newer release of Kata Containers is available on GitHub. If you do not wish this to check to run, add the
--no-network-checksoption.By default, only a brief success / failure message is printed. If more details are needed, the
--verboseflag can be used to display the list of all the checks performed.If the command is run as the
rootuser additional checks are run (including checking if another incompatible hypervisor is running). When running asroot, network checks are automatically disabled.
Getting started
See the installation documentation.
Documentation
See the official documentation including:
Configuration
Kata Containers uses a single configuration file which contains a number of sections for various parts of the Kata Containers system including the runtime, the agent and the hypervisor.
Hypervisors
See the hypervisors document and the Hypervisor specific configuration details.
Community
To learn more about the project, its community and governance, see the community repository. This is the first place to go if you wish to contribute to the project.
Getting help
See the community section for ways to contact us.
Raising issues
Please raise an issue in this repository.
Note: If you are reporting a security issue, please follow the vulnerability reporting process
Developers
See the developer guide.
Components
Main components
The table below lists the core parts of the project:
| Component | Type | Description |
|---|---|---|
| runtime | core | Main component run by a container manager and providing a containerd shimv2 runtime implementation. |
| runtime-rs | core | The Rust version runtime. |
| agent | core | Management process running inside the virtual machine / POD that sets up the container environment. |
dragonball |
core | An optional built-in VMM brings out-of-the-box Kata Containers experience with optimizations on container workloads |
| documentation | documentation | Documentation common to all components (such as design and install documentation). |
| tests | tests | Excludes unit tests which live with the main code. |
Additional components
The table below lists the remaining parts of the project:
| Component | Type | Description |
|---|---|---|
| packaging | infrastructure | Scripts and metadata for producing packaged binaries (components, hypervisors, kernel and rootfs). |
| kernel | kernel | Linux kernel used by the hypervisor to boot the guest image. Patches are stored here. |
| osbuilder | infrastructure | Tool to create "mini O/S" rootfs and initrd images and kernel for the hypervisor. |
| kata-debug | infrastructure | Utility tool to gather Kata Containers debug information from Kubernetes clusters. |
agent-ctl |
utility | Tool that provides low-level access for testing the agent. |
kata-ctl |
utility | Tool that provides advanced commands and debug facilities. |
log-parser-rs |
utility | Tool that aid in analyzing logs from the kata runtime. |
trace-forwarder |
utility | Agent tracing helper. |
runk |
utility | Standard OCI container runtime based on the agent. |
ci |
CI | Continuous Integration configuration files and scripts. |
katacontainers.io |
Source for the katacontainers.io site. |
Packaging and releases
Kata Containers is now available natively for most distributions.
Metrics tests
See the metrics documentation.
Glossary of Terms
See the glossary of terms related to Kata Containers.