-
Notifications
You must be signed in to change notification settings - Fork 374
support config options through annotations #753
Comments
This is in fact an old topic. The problem is that docker labels are not passed to the container and (atleast the last time I looked) docker doesn't provide a way to inject OCI annotations into the The OCI spec of course does now support the specification of a hypervisor, kernel and image as first-class objects. Also, virtcontainers already provides a way to specify those same details as annotations:
If we want to add kata config as annotations it would need a prefix like
If we are going to consider adding another set of config via annotations we need to:
|
@jodh-intel The cli config options are already an API for kata containers, even w/o being able to be set via annotations. I've updated the description to focus on providing the set-via-annotation capability so that k8s controllers become the main focus. And we don't need to introduce case-by-case annotations as being done in #1695. /cc @mcastelino @egernst |
Nice! Thanks @bergwolf. |
/cc @amshinde |
Agent has to wait for pmem/nvdimm devices to appear in the guest. The agent can use udev and the ACPI device path to identify when a pmem/nvdimm device has been hotplugged in the guest. For example when `/dev/pmem1` is hotplugged, the ACPI dev path may look like: ``` /devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0012:00/ndbus0/region1/pfn1.1/block/pmem1 ``` The udev routine catches the above path and return the full path to the device: `/dev/pmem1` Depends-on: github.com/kata-containers/tests#2356 fixes kata-containers#753 Signed-off-by: Julio Montes <[email protected]>
As we were discussing the agent hook pr (kata-containers/agent#365 (comment)), we might want to support specifying all kata configs through labels or annotations, and then there is no dependency on a fixed cli configuration and each pod can be customized. The issue is created to track the feature/discussion.
A simple suggestion can be that we define a format like
io.kata-containers.config.<subsystem>.<key>
. Then we can have labels/annotations:io.kata-containers.config.hypervisor.qemu.path
: the qemu path inhypervisor.qemu
sectionio.kata-containers.config.shim.kata.enable_debug
: theenable_debug
option inshim.kata
sectionetc.
We can still have a default config in
configuration.toml
, and the per pod annotation configs takes a higher priority and override the values inconfiguration.toml
.The use case is to support very flexible controllers that can customize any config options we support on a per pod basis.
/cc @jodh-intel @amshinde @eguzman3 @egernst
The text was updated successfully, but these errors were encountered: