Ya'll,
I'd like to see if we can create a pattern in upstream Kata Containers to help facilitate directly assigning volumes to the VM via virtio-blk, skipping any mounts on the host, and avoiding needing to use a shared file-system for the particular volume. Some of the benefits in doing this:
- we can better isolate the host (no mounted filesystem),
- more efficient and much faster data path that non-dax virtiofs.
- avoid inode caching/memory overheads of virtiofs on the host.
In Kubernetes today, there is not a direct communication channel between CSI and the runtime. To make this work on a shorter timeline, therefore, we need to come up with a less traditional way to communicate between the user, CSI and the runtime. I have a proposal in place that "works" today, and I'd like to get feedback on how to improve it, and see if it could be a good fit for upstream. Please see: the proposal at [1], and the PR associated with that proposal at [2].