Code Monkey home page Code Monkey logo

Comments (5)

resouer avatar resouer commented on July 18, 2024

@kfox1111 We are generally happy to have this. According to discussions in original issue, kubernetes/kubernetes#29913, kubelet does not have plan to support multi-runtimes in short term plan, and in long term, sig-node agreed multi-runtimes may be better implemented by remote runtime itself. frakti is a nice place to do this.

One of the blockers which has been fixed recently is CNI network: #62, this will make this refactoring much easier.

from frakti.

resouer avatar resouer commented on July 18, 2024

In stead of adding a proxy in front, like: https://github.com/Mirantis/virtlet/blob/master/pkg/criproxy/proxy.go, we plan to vendor dockershim in order to reuse duplicated modules like networking. cc @Crazykev

from frakti.

ivan4th avatar ivan4th commented on July 18, 2024

Hi, just wanted to chime in concerning CRI proxy from Virtlet project that you linked to. It's not tied to other parts of Virtlet and we can spin it off into a separate project rather easily so more projects can make use of it. The possible benefits of using the proxy are saving effort on implementation of multiple-runtime dispatch and an ability to deploy alternative runtimes as DaemonSets (thus much easier setup procedure). Another thing we're working on is single-command Virtlet demo startup based on kubeadm-dind-cluster and you can do similar thing for frakti if you want (the proxy has experimental 'bootstrap' feature where it uses DynamicKubeletConfiguration feature to bootstrap itself; this is good for demos)

As of vendoring dockershim, as far as I can I see pkg/kubelet/dockershim package contains mostly stuff tied to docker, and reusing other parts of kubelet package doesn't preclude the usage of the proxy. So if you reconsider your approach a bit please let us know and we'll be glad to help.

cc @pigmej @jellonek @vefimova

from frakti.

ivan4th avatar ivan4th commented on July 18, 2024

As of single-command demo, we envision it as a simple shell script that can be downloaded to a Linux or a Mac with Docker and used to launch kubeadm-dind-cluster (newer version will not need k8s source) and then install Virtlet on it (on Macs it'll be plain qemu instead of qemu-kvm but that doesn't matter much for demo purpose). Similar approach can be used for other projects that employ CRI proxy.

from frakti.

resouer avatar resouer commented on July 18, 2024

Thanks @ivan4th, after talk with other frakti maintainers, we reached an agreement that we should not hack container/sandbox ID. So we kept the vendor way. Although less elegant, but friendly to CRI ...

from frakti.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.