mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-04-28 11:44:38 +00:00
Move the historical details out of the architecture doc and into a separate file. Partially fixes: #3246. Signed-off-by: James O. D. Hunt <james.o.hunt@intel.com>
42 lines
1.6 KiB
Markdown
42 lines
1.6 KiB
Markdown
# History
|
|
|
|
## Kata 1.x architecture
|
|
|
|
In the old [Kata 1.x architecture](https://github.com/kata-containers/documentation/blob/master/design/architecture.md),
|
|
the Kata [runtime](README.md#runtime) was an executable called `kata-runtime`.
|
|
The container manager called this executable multiple times when
|
|
creating each container. Each time the runtime was called a different
|
|
OCI command-line verb was provided. This architecture was simple, but
|
|
not well suited to creating VM based containers due to the issue of
|
|
handling state between calls. Additionally, the architecture suffered
|
|
from performance issues related to continually having to spawn new
|
|
instances of the runtime binary, and
|
|
[Kata shim](https://github.com/kata-containers/shim) and
|
|
[Kata proxy](https://github.com/kata-containers/proxy) processes for systems
|
|
that did not provide VSOCK.
|
|
|
|
## Kata 2.x architecture
|
|
|
|
See the ["shimv2"](README.md#shim-v2-architecture) section of the
|
|
architecture document.
|
|
|
|
## Architectural comparison
|
|
|
|
| Kata version | Kata Runtime process calls | Kata shim processes | Kata proxy processes (if no VSOCK) |
|
|
|-|-|-|-|
|
|
| 1.x | multiple per container | 1 per container connection | 1 |
|
|
| 2.x | 1 per VM (hosting any number of containers) | 0 | 0 |
|
|
|
|
> **Notes:**
|
|
>
|
|
> - A single VM can host one or more containers.
|
|
>
|
|
> - The "Kata shim processes" column refers to the old
|
|
> [Kata shim](https://github.com/kata-containers/shim) (`kata-shim` binary),
|
|
> *not* the new shimv2 runtime instance (`containerd-shim-kata-v2` binary).
|
|
|
|
The diagram below shows how the original architecture was simplified
|
|
with the advent of shimv2.
|
|
|
|

|