Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

runtime-rs: Enhancing Direct Volume Mount Handling with Patching Support for current infra(K8S/CSI) #8300

Closed
Apokleos opened this issue Oct 24, 2023 · 0 comments · Fixed by #8301
Assignees
Labels
enhancement Improvement to an existing feature needs-review Needs to be assessed by the team.

Comments

@Apokleos
Copy link
Contributor

Which feature do you think can be improved?
The current infrastructure for Kata containers, which includes Kubernetes (K8s), Container Storage Interface (CSI), Container Runtime Interface (CRI), and Containerd, lacks the capability to effectively manage direct volumes. This limitation necessitates workarounds, such as modifying mount type and options after the volume's creation.

Direct volumes, unlike other types of storage volumes, are directly attached to the virtual machine (VM) hosting the Kata container. This direct attachment necessitates additional information, such as the block device path and filesystem type, for proper mounting within the container.

However, the current infrastructure fails to convey this crucial information during the volume creation process. As a result, workarounds are required to rectify the mount configuration after the volume has been created. This involves adjusting the mount type to reflect the direct volume's nature and specifying the appropriate mount options to ensure proper functionality within the Kata container environment.

The need for these workarounds highlights a gap in the current infrastructure's ability to seamlessly handle direct volumes for Kata containers. Addressing this limitation would eliminate the need for post-creation modifications and streamline the overall volume management process for Kata containers.

One word:The current infra(K8S, CSI, CRI, Containerd) for Kata containers is unable to properly handle direct volumes, resulting in the need for workarounds like patching up mount type and options after it created.

How can it be improved?

Do some work to patch up mount type and options after direct volume created during amend OCI spec.

@Apokleos Apokleos added enhancement Improvement to an existing feature needs-review Needs to be assessed by the team. labels Oct 24, 2023
@Apokleos Apokleos self-assigned this Oct 24, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Oct 24, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like patching up mount type and options after it created.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
@katacontainersbot katacontainersbot moved this from To do to In progress in Issue backlog Oct 24, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Oct 24, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like patching up mount type and options after it created.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Oct 25, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like patching up mount type and options after it created.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Oct 26, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like patching up mount type and options after it created.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Oct 26, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like patching up mount type and options after it created.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Oct 26, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like patching up mount type and options after it created.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Oct 31, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like patching up mount type and options after it created.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 15, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 15, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like patching up mount type and options after it created.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 19, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like searching/comparision and then patch up volume type.

As spdkvol/vfiovol/directvol are based on DirectVolume, it needs to
re-orignize the directories for them. Add a new directory(direct-volumes)
containing them all, and renamed direct_block_volume.rs.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 19, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like searching/comparision and then patch up volume type.

As spdkvol/vfiovol/directvol are based on DirectVolume, it needs to
re-orignize the directories for them. Add a new directory(direct-volumes)
containing them all, and renamed direct_block_volume.rs.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 23, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 23, 2023
Add a new dire direct_volumes containing spdk, block and vfio volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 23, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 23, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 23, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like searching/comparision and then patch up volume type.

In this commit, reimplement of handling method is added to support
block volume and direct volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 23, 2023
Reimplement spdk volume into direct_block_volume and do alignment
of block volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 23, 2023
Reimplement vfio volume into direct_block_volume and do alignment
of block volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 25, 2023
(1) rawblock volume is directvol mount type.
(2) block volume is based on the bind mount type.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 25, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 25, 2023
Add a new dire direct_volumes containing spdk, rawblock and vfio volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 25, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 25, 2023
Apokleos added a commit to Apokleos/kata-containers that referenced this issue Nov 25, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like searching/comparision and then patch up volume type.

In this commit, reimplement of handling method is added to support
raw block volume which backends may be rawdisk or other format file.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
Add a new dire direct_volumes containing spdk, rawblock and vfio volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like searching/comparision and then patch up volume type.

In this commit, reimplement of handling method is added to support
raw block volume which backends may be rawdisk or other format file.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
(1) Add enum DirectVolumeType for direct volumes.
(2) Reimplement spdk volume into direct_volume and
do alignment of rawblock volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
Reimplement vfio volume into direct_volume and do alignment
of rawblock/spdk volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
(1) rawblock volume is directvol mount type.
(2) block volume is based on the bind mount type.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
Add a new dire direct_volumes containing spdk, rawblock and vfio volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like searching/comparision and then patch up volume type.

In this commit, reimplement of handling method is added to support
raw block volume which backends may be rawdisk or other format file.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
(1) Add enum DirectVolumeType for direct volumes.
(2) Reimplement spdk volume into direct_volume and
do alignment of rawblock volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
Reimplement vfio volume into direct_volume and do alignment
of rawblock/spdk volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
(1) rawblock volume is directvol mount type.
(2) block volume is based on the bind mount type.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
Add a new dire direct_volumes containing spdk, rawblock and vfio volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like searching/comparision and then patch up volume type.

In this commit, reimplement of handling method is added to support
raw block volume which backends may be rawdisk or other format file.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
(1) Add enum DirectVolumeType for direct volumes.
(2) Reimplement spdk volume into direct_volume and
do alignment of rawblock volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
Reimplement vfio volume into direct_volume and do alignment
of rawblock/spdk volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
(1) rawblock volume is directvol mount type.
(2) block volume is based on the bind mount type.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
Add a new dire direct_volumes containing spdk, rawblock and vfio volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
The current infra(K8S, CSI, CRI, Containerd) for Kata containers is
unable to properly handle direct volumes, resulting in the need for
workarounds like searching/comparision and then patch up volume type.

In this commit, reimplement of handling method is added to support
raw block volume which backends may be rawdisk or other format file.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
(1) Add enum DirectVolumeType for direct volumes.
(2) Reimplement spdk volume into direct_volume and
do alignment of rawblock volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
sprt pushed a commit to microsoft/kata-containers that referenced this issue Dec 20, 2023
Reimplement vfio volume into direct_volume and do alignment
of rawblock/spdk volume.

Fixes: kata-containers#8300

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improvement to an existing feature needs-review Needs to be assessed by the team.
Projects
Issue backlog
  
In progress
Development

Successfully merging a pull request may close this issue.

1 participant