Information related to the non-differentiating parts of deploying of VSC defined functions/capabilities/services in containers.
Possible examples might include:
- Open standards for the definition of the 'control' aspects of the defined service
- Service migration
- Service discovery
At the time of writing this could be considered an ancillary topic to 'VSC Core' which defines the core API model of those functions.
Initial discussions 4/6/22
Discussion in the group lead to a request for Renesas/Epam to make a container deployment definition proposal as a starting point. A proposal based on the open definition of containers taking the OCI standards as a starting point was created, with an example of how it might be integrated into a production system. This proposal was presented in the 4/6/22 meeting covering four broad areas:
- Container definition
- Container deployment
- Resource management
- API control
As discussed in the scope there is a need for open standardisation of various aspects of deploying a VSC defined function. These can be tracked in more detail in this section.
Please add topics to the list below by adding a title and summary description. Topics can then be expanded upon in a sub-section or sub-page as needed.
Rather than repeat it for each topic there is a general working assumption that collaboration on non-differentiating parts is beneficial for interoperability, open marketplaces and avoidance of fragmentation.
- OCI runtime specification gaps
The OCI Container runtime specification is missing some controls typically required in embedded applications. The task is to specify them in an open specification.
OCI runtime specification gaps
The OCI container runtime specification has somewhat of a cloud focus, for example concentrating on network port connections, which lacks some controls typically required in embedded applications that has more diverse IP in h/w. Standardisation of the missing controls and their definition is therefore beneficial. Controls should be upstreamed where possible.
OCI specifications provide a detailed explanation of how to limit resources for the container, but currently, there is no specification that covers how to provide limits that will be used by OCI runtime specifications.
Thes deployment specification could be divided into two parts:
- Container deployment that is created by the user to define limits
- Container deployment configuration that is used by container compositor to generate OCI runtime specification
Key parameters and limits should be covered by deployment specifications:
- Container quotas
- Container network configuration
- Access to host devices and resources
Examples can be found in VSC PR #39