allow multiple container runtimes in the same cluster

Bug #1772752 reported by Ricardo Rocha
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Magnum
New
Undecided
Unassigned

Bug Description

Currently there's no way to specific alternate container runtimes at cluster creation.

Given things like kata containers or gVisor are now there to provide better isolation, it might also be useful to support different container runtimes in the same cluster.

Revision history for this message
Ricardo Rocha (rocha-porto) wrote :
Revision history for this message
Madhuri Kumari (madhuri-rai07) wrote :

@Richardo,

Thank you for initiating this. We would need to see if the new runtimes can run with COEs or not. I know Clear Containers can run with Kubernetes[1].

Will research about Kata containers and update here.

[1] https://github.com/intel/cc-oci-runtime/wiki/Clear-Containers-and-Kubernetes

Revision history for this message
Ricardo Rocha (rocha-porto) wrote :

Hi Madhuri.

I think one option is to allow the configuration of alternative CRIs in the Magnum Kubernetes setup, probably defaulting to containerd:
https://github.com/containerd/cri

There's some info here:
https://katacontainers.io/posts/why-kata-containers-doesnt-replace-kubernetes/

which indicates kata would be an OCI compatible runtime replacement to the default 'runc'. So we would need to have that part configurable too.

The easiest with some additional labels:
* kube_cri (default to containerd, which would be usable for kata)
* kube_oci_runtime (default to runc to match the current behavior, but optionally we would have kata there)

How does this sound? I can help drafting how this could be implemented, and will definitely review the changes.

Ricardo

Revision history for this message
Madhuri Kumari (madhuri-rai07) wrote :

Hi Richardo,

So if I get this correct. You mean to add a new parameter "runtime" to our cluster template. And we install Kata and configure it with COE when users request via the runtime option.

Am I right?

Revision history for this message
Ricardo Rocha (rocha-porto) wrote : Re: [Bug 1772752] Re: allow multiple container runtimes in the same cluster

Hi.

On Mon, Jun 4, 2018 at 5:14 PM, Madhuri Kumari <email address hidden> wrote:
> Hi Richardo,
>
> So if I get this correct. You mean to add a new parameter "runtime" to
> our cluster template. And we install Kata and configure it with COE when
> users request via the runtime option.

We can also use labels instead of explicit template parameters
(they're easier to manage :-)).

We would likely need two new labels/params:
* kube_cri (the CRI implementation, likely defaulting to containerd)
* kube_runtime (the runtime implementation, where one option would be kata)

When the runtime is set to Kata, then we install it and configure the
COE accordingly, as you mention.

I think this works.

Ricardo

>
> Am I right?
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1772752
>
> Title:
> allow multiple container runtimes in the same cluster
>
> Status in Magnum:
> New
>
> Bug description:
> Currently there's no way to specific alternate container runtimes at
> cluster creation.
>
> Given things like kata containers or gVisor are now there to provide
> better isolation, it might also be useful to support different
> container runtimes in the same cluster.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/magnum/+bug/1772752/+subscriptions

Revision history for this message
Ricardo Rocha (rocha-porto) wrote :

We can also use labels instead of explicit template parameters
(they're easier to manage).

We would likely need two new labels/params:
* kube_cri (the CRI implementation, likely defaulting to containerd)
* kube_runtime (the runtime implementation, where one option would be kata)

When the runtime is set to Kata, then we install it and configure the
COE accordingly, as you mention.

I think this works.

Revision history for this message
Madhuri Kumari (madhuri-rai07) wrote :

Yes, sounds like we are good with the idea. Let's go ahead with this design.

Have you tried Kata with Kubernetes?

Revision history for this message
Ricardo Rocha (rocha-porto) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.