Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
Enable to pass additional handler on pull for stargz-based remote snapshots #1431
Recently, we started a non-core subproject stargz-snapshotter aiming to speed up pull operation and we are seeing performance improvement on
We've implemented the fundamental features and stargz snapshotter passes
Stargz snapshotter is implemented as a standard proxy plugin but because it queries layer contents to the registry it requires containerd clients (including CRI plugin) to pass additional information (image ref and layer digest) for each pull operation through an image handler.
This commit enables to use stargz-based remote snapshots through CRI optionally, by integrating the image handler with CRI. You can test this patch with this node image, which is tested using critest.
Hi @ktock. Thanks for your PR.
I'm waiting for a containerd member to verify that this patch is reasonable to test. If it is, they should reply with
Once the patch is verified, the new status will be reflected by the
I understand the commands that are listed here.
Thanks for the feedback!
@mikebrow Yes, the new flag is for injecting some annotations. I'm looking for more generic ways on containerd/containerd#4044 (the list of other ideas on containerd/containerd#4044 (comment)) but so far we haven't reached to the consensus yet.
I also like @fuweid's idea "
Off the top of my head maybe:
Then some way to turn it off disable_adding_additional_annotations_to_image_layers (default false...) Can't think of a reason to not add them by default.
@ktock: The following test failed, say
…pshots Throughout container lifecycle, pulling image is one of the time-consuming steps. Recently, containerd community started to tackle this issue with stargz-based remote snapshots, as a non-core subproject(https://github.com/containerd/stargz-snapshotter). This snapshotter is implemented as a standard proxy plugin but it requires the client to pass some additional information (image ref and layer digest) for each pull operation to query layer contents on the registry. Stargz snapshotter project provides an image handler to do this and stargz snapshot users need to pass this handler to containerd client. This commit enables to use stargz-based remote snapshots through CRI by passing the handler to containerd client on pull operation. Signed-off-by: Kohei Tokunaga <firstname.lastname@example.org>