4 ms·
If you're pulling big images you could try kube-fledged (it's the simplest option, a CRD that works like a pre-puller for your images), or if you have a big clu
by tecleandor 4y ago
If you're pulling big images you could try kube-fledged (it's the simplest option, a CRD that works like a pre-puller for your images), or if you have a big cluster you can try a p2p distributor, like kraken or dragonfly2.
Also there's that project called Nydus that allows starting up big containers way faster. IIRC, starts the container before pulling the whole image, and begins to pull data as needed from the registry.
https://github.com/senthilrch/kube-fledged https://github.com/senthilrch/kube-fledged
https://github.com/dragonflyoss/Dragonfly2 https://github.com/dragonflyoss/Dragonfly2
https://github.com/uber/kraken https://github.com/uber/kraken
https://nydus.dev/ https://nydus.dev/
- badLiveware 4y agoLazy pulling is already supported by a lot of container runtimes, most notably containerd with estargz https://github.com/containerd/stargz-snapshotter/blob/main/docs/estargz.md https://github.com/containerd/stargz-snapshotter/blob/main/d...
- tecleandor 4y agoAh thanks! "Lazy pulling" is what I was looking for. I was trying to find estargz (didn't remember the name) and I couldn't find a proper keyword to do it :P :D
- cbanek 4y agoYeah I think we considered this, but we want the container to actually run as the user and have all the permissions set up so they can have all the right access on the cluster (kind of like a PaaS), although I think we are doing some of the stuff with the starting the container while the data is still streaming down. Black magic.