From: Giuseppe Scrivano <gscrivan@redhat.com>
To: Gao Xiang <hsiangkao@linux.alibaba.com>
Cc: Alexander Larsson <alexl@redhat.com>,
Mike Snitzer <snitzer@kernel.org>,
Du Rui <durui@linux.alibaba.com>,
dm-devel@redhat.com, linux-kernel@vger.kernel.org,
Alasdair Kergon <agk@redhat.com>
Subject: Re: dm overlaybd: targets mapping OverlayBD image
Date: Wed, 24 May 2023 12:48:11 +0200 [thread overview]
Message-ID: <87mt1uyphw.fsf@redhat.com> (raw)
In-Reply-To: <02524ece-956f-f5d8-fb21-adc4e5617dc6@linux.alibaba.com> (Gao Xiang's message of "Wed, 24 May 2023 16:26:25 +0800")
Gao Xiang <hsiangkao@linux.alibaba.com> writes:
> Hi Giuseppe,
>
> On 2023/5/24 01:11, Giuseppe Scrivano wrote:
>> Gao Xiang <hsiangkao@linux.alibaba.com> writes:
>>
>
> ...
>
>>> Agreed, I hope you guys could actually sit down and evaluate a proper
>>> solution on the next OCI v2, currently I know there are:
>>>
>>> - Composefs
>>> - (e)stargz https://github.com/containerd/stargz-snapshotter
>>> - Nydus https://github.com/containerd/nydus-snapshotter
>>> - OverlayBD https://github.com/containerd/accelerated-container-image
>>> - SOCI https://github.com/awslabs/soci-snapshotter
>>> - Tarfs
>>> - (maybe even more..)
>>>
>>> Honestly, I do think OSTree/Composefs is the best approach for now for
>>> deduplication and page cache sharing (due to kernel limitation of page
>>> cache sharing and overlayfs copyup limitation). I'm too tired of
>>> container image stuffs honestly. Too much unnecessary manpower waste.
>> for a file-based storage model, I am not sure a new format would
>> really
>> buy us much or it can be significantly different.
>> Without a proper support from the kernel, a new format would still
>> need
>> to create the layout overlay expects, so it won't be much different than
>> what we have now.
>
> I've seen lot efforts on this, for example,
> https://docs.google.com/presentation/d/1lBKVrYzm9JEYuw-gIEsrcePSK0jL1Boe/edit#slide=id.p22
>
> Merging the writable layer and read-only layers with overlayfs is
> feasible. I mean, at least for composefs model on backing XFS/btrfs, we
> could merge these layers with overlayfs so that I guess reflink could
> be done to avoid full copyup as well? I do think that's a net win.
>
>> The current OCI format, with some tweaks like (e)stargz or
>> zstd:chunked,
>> already make its content addressable and a client can retrieve only the
>> subset of the files that are needed. At the same time we maintain the
>> simplicity of a tarball and it won't break existing clients.
>
> (e)stargz or zstd:chunked still needs to be converted by the publisher
> and not all exist OCI images are stored in this way. But apart from
> detailed comparsion, disk mapping image approaches seems really a
> drawback at least on my side.
these images can be treated as if all their files are missing and the
checksum is calculated on the receiver side. They will still be stored
locally indexed by their checksum. We lose the possibility to pull only
the missing files but we maintain the other advantages at runtime. In
this way moving to a new format can be done incrementally without
breaking what we have now.
> Anyway, I think it's what OCIv2 would like to eventually address
> anyway.
>
>> IMO, the most interesting problem is how to store these images
>> locally
>> and how the kernel can help with that.
>
> I think composefs model can do both sides. But I'm not sure the final
> conclusion, I tend to leave it to the OCI guys.
>
>> The idea behind composefs is to replace the existing storage model
>> used
>> for overlay, where each layer has its own directory, with a single
>> directory where all the files are stored by their checksum. The
>> expected layout then is recreated at runtime.
>
> Yes, what I'd like to say, without finer page cache sharing mechanism,
> the composefs way sounds better to me honestly to the whole system.
>
> Thanks,
> Gao Xiang
next prev parent reply other threads:[~2023-05-24 10:49 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-19 10:27 [RFC] dm overlaybd: targets mapping OverlayBD image Du Rui
2023-05-23 17:28 ` Mike Snitzer
2023-05-24 0:56 ` [dm-devel] " Gao Xiang
2023-05-24 6:43 ` Alexander Larsson
2023-05-24 7:13 ` Gao Xiang
2023-05-24 8:11 ` Giuseppe Scrivano
2023-05-24 8:26 ` Gao Xiang
2023-05-24 10:48 ` Giuseppe Scrivano [this message]
2023-05-24 11:06 ` Gao Xiang
2023-05-26 10:28 ` Du Rui
2023-05-26 10:26 ` Du Rui
2023-05-26 16:43 ` Gao Xiang
2023-05-27 3:13 ` Du Rui
2023-05-27 4:12 ` Gao Xiang
2023-05-24 6:59 ` Du Rui
2023-05-26 10:25 ` Du Rui
2023-05-24 7:24 ` [RFC PATCH v2] " Du Rui
2023-05-24 7:40 ` [RFC PATCH v3] " Du Rui
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87mt1uyphw.fsf@redhat.com \
--to=gscrivan@redhat.com \
--cc=agk@redhat.com \
--cc=alexl@redhat.com \
--cc=dm-devel@redhat.com \
--cc=durui@linux.alibaba.com \
--cc=hsiangkao@linux.alibaba.com \
--cc=linux-kernel@vger.kernel.org \
--cc=snitzer@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox