ACRN + Kata Containers (and 'acrnctl')


Geoffroy Van Cutsem
 

Hi folks, Vijay,

The ACRN + Kata Containers configuration (described here [1]) includes a definition for 'ctlpath' that points at the 'acrnctl' binary. That binary is only built and installed for the debug version of ACRN (see also [2] for more details), which means you cannot run Kata Containers with a released version of ACRN today. I think we need to solve this and I can see two ways:
* Kata Containers does not really use that binary (and we can get rid of its definition) OR
* We make sure 'acrnctl' is also built and installed for a RELEASE=1 build

What would be the right way to fix this?

[1] https://projectacrn.github.io/latest/tutorials/run_kata_containers.html
[2] https://github.com/projectacrn/acrn-hypervisor/issues/4940

Thanks!
Geoffroy

Senior Technical Marketing Engineer
IAGS - System Software Products
Tel: +32 (0)3 450 0851

-----------------------------------------------
Intel Corporation NV/SA
Kings Square, Veldkant 31
2550 Kontich
RPM (Bruxelles) 0415.497.718.
Citibank, Brussels, account 570/1031255/09


Vijay Dhanraj
 

Hi Geoffroy,

Thanks for bring up this issue.

"acrnctl" binary is critical for kata containers when using ACRN hypervisor. Kata uses this binary to add container rootfs. Using acrnctl blkrescan feature, kata can add virtio-blk devices with dummy backend during VM launch and later replace the dummy backend with the actual file (the container rootfs).

My suggestion would be to build and install acrnctl for RELEASE=1 build as well.

Thanks,
-Vijay

-----Original Message-----
From: VanCutsem, Geoffroy <geoffroy.vancutsem@...>
Sent: Tuesday, June 30, 2020 2:29 AM
To: acrn-users@...; Dhanraj, Vijay <vijay.dhanraj@...>
Subject: ACRN + Kata Containers (and 'acrnctl')

Hi folks, Vijay,

The ACRN + Kata Containers configuration (described here [1]) includes a definition for 'ctlpath' that points at the 'acrnctl' binary. That binary is only built and installed for the debug version of ACRN (see also [2] for more details), which means you cannot run Kata Containers with a released version of ACRN today. I think we need to solve this and I can see two ways:
* Kata Containers does not really use that binary (and we can get rid of its definition) OR
* We make sure 'acrnctl' is also built and installed for a RELEASE=1 build

What would be the right way to fix this?

[1] https://projectacrn.github.io/latest/tutorials/run_kata_containers.html
[2] https://github.com/projectacrn/acrn-hypervisor/issues/4940

Thanks!
Geoffroy

Senior Technical Marketing Engineer
IAGS - System Software Products
Tel: +32 (0)3 450 0851

-----------------------------------------------
Intel Corporation NV/SA
Kings Square, Veldkant 31
2550 Kontich
RPM (Bruxelles) 0415.497.718.
Citibank, Brussels, account 570/1031255/09


Geoffroy Van Cutsem
 

Thanks for your explanation Vijay. It would make a lot of sense to me to build and install `acrnctl` even for a RELEASE=1 build. I'd like to hear from the engineering team if they have any objection to that. If not, I can prepare a patch to remove the conditional statements in the Makefiles.

[note: also adding the acrn-dev mailing list to make sure the developers see this thread]

Thanks,
Geoffroy

-----Original Message-----
From: Dhanraj, Vijay <vijay.dhanraj@...>
Sent: Tuesday, June 30, 2020 6:55 PM
To: VanCutsem, Geoffroy <geoffroy.vancutsem@...>; acrn-
users@...
Subject: RE: ACRN + Kata Containers (and 'acrnctl')

Hi Geoffroy,

Thanks for bring up this issue.

"acrnctl" binary is critical for kata containers when using ACRN hypervisor.
Kata uses this binary to add container rootfs. Using acrnctl blkrescan feature,
kata can add virtio-blk devices with dummy backend during VM launch and
later replace the dummy backend with the actual file (the container rootfs).

My suggestion would be to build and install acrnctl for RELEASE=1 build as
well.

Thanks,
-Vijay

-----Original Message-----
From: VanCutsem, Geoffroy <geoffroy.vancutsem@...>
Sent: Tuesday, June 30, 2020 2:29 AM
To: acrn-users@...; Dhanraj, Vijay
<vijay.dhanraj@...>
Subject: ACRN + Kata Containers (and 'acrnctl')

Hi folks, Vijay,

The ACRN + Kata Containers configuration (described here [1]) includes a
definition for 'ctlpath' that points at the 'acrnctl' binary. That binary is only
built and installed for the debug version of ACRN (see also [2] for more
details), which means you cannot run Kata Containers with a released version
of ACRN today. I think we need to solve this and I can see two ways:
* Kata Containers does not really use that binary (and we can get rid of its
definition) OR
* We make sure 'acrnctl' is also built and installed for a RELEASE=1 build

What would be the right way to fix this?

[1] https://projectacrn.github.io/latest/tutorials/run_kata_containers.html
[2] https://github.com/projectacrn/acrn-hypervisor/issues/4940

Thanks!
Geoffroy

Senior Technical Marketing Engineer
IAGS - System Software Products
Tel: +32 (0)3 450 0851

-----------------------------------------------
Intel Corporation NV/SA
Kings Square, Veldkant 31
2550 Kontich
RPM (Bruxelles) 0415.497.718.
Citibank, Brussels, account 570/1031255/09