Fine-grained operations in CNFs
Fine-grained operations in CNFs
Proposer
- David Garcia (Canonical)
Target MDG/TF
The feature targets needs changes in N2VC and devops
Description
This feature consists of adding support of fine grained operations in Containerized Network Functions using Pebble. Pebble support will come with the upgrade to Juju 2.9.
Currently, the Kubernetes operators (charms) we can execute actions, but since the operator container (charm) is allocated in a different pod from the workload, the operations have some limitations (i.e. the workload pod needs Python for actions; the operator lives outside of the workload pod so it can only modify the pod spec).
The Kubernetes charms in Juju 2.9 run using the sidecar pattern with the workload container running Pebble. These are some of the main advantages of having Pebble support:
- Operator in the same pod as the Workload --> Shared storage, cpu, and network resources, which allows the operator to get more information about the workload.
- Start/stop services in the workload container
- Push files to the workload container from the operator
- List files from the workload
Demo or definition of done
The feature is considered done when all the current robot tests are working using Juju 2.9 as the VCA. Additionally, the osm bundle in Charmed OSM should be working on Juju 2.9. Also, a robot test should be added for testing a K8s sidecar charm (w/ pebble).