Skip to content

[release/1.6] Cherry-pick: [overlay] add configurable mount options to overlay snapshotter#8961

Merged
AkihiroSuda merged 2 commits intocontainerd:release/1.6from
fuweid:cp-d115129d1e9f37b1c4acf500fcd1a958abfc548d
Aug 16, 2023
Merged

[release/1.6] Cherry-pick: [overlay] add configurable mount options to overlay snapshotter#8961
AkihiroSuda merged 2 commits intocontainerd:release/1.6from
fuweid:cp-d115129d1e9f37b1c4acf500fcd1a958abfc548d

Conversation

@fuweid
Copy link
Copy Markdown
Member

@fuweid fuweid commented Aug 12, 2023

We have several issues related to umount which can cause unexpected IO pressure. Backporting #8676 is kind of workaround for the users who are using release/1.6 LTS. They can add volatile option to avoid syncfs in the kernel (>=5.10).

Related issues: #8698, #7496, #8931, #8647 (In #8647, the container in pods failed to start and kubelet kept restart it and there were a lot of umount syscall when containerd deleted the tasks)


Cherry-pick: #8676 #8542

cardyok and others added 2 commits August 12, 2023 22:10
Signed-off-by: Cardy.Tang <[email protected]>
(cherry picked from commit b9f2e48)
Signed-off-by: Wei Fu <[email protected]>
Allows default mount options to be provided through configuration.

Signed-off-by: Derek McGowan <[email protected]>
(cherry picked from commit d115129)
Signed-off-by: Wei Fu <[email protected]>
@fuweid
Copy link
Copy Markdown
Member Author

fuweid commented Aug 16, 2023

ping @AkihiroSuda it's kind of feature but it's also improvement if the users are using kernel >= 5.10.

@AkihiroSuda AkihiroSuda merged commit c523c1d into containerd:release/1.6 Aug 16, 2023
@fuweid fuweid deleted the cp-d115129d1e9f37b1c4acf500fcd1a958abfc548d branch August 24, 2023 00:46
aravindhp added a commit to openshift/containerd that referenced this pull request Sep 16, 2023
containerd 1.6.24

Welcome to the v1.6.24 release of containerd!

The twenty-fourth patch release for containerd 1.6 contains various fixes and updates.

* **CRI: fix leaked shim caused by high IO pressure** ([containerd#9004](containerd#9004))
* **Update to go1.20.8** ([containerd#9073](containerd#9073))
* **Update runc to v1.1.9** ([containerd#8966](containerd#8966))
* **Backport: add configurable mount options to overlay snapshotter** ([containerd#8961](containerd#8961))
* **log: cleanups and improvements to decouple more from logrus** ([containerd#9002](containerd#9002))

See the changelog for complete list of changes

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

* Sebastiaan van Stijn
* Akihiro Suda
* Wei Fu
* Derek McGowan
* Akhil Mohan
* Cardy.Tang
* Danny Canter
* Kazuyoshi Kato
* Mike Brown
* Phil Estes
* Samuel Karp

<details><summary>45 commits</summary>
<p>

* [release/1.6] Prepare release notes for v1.6.24 ([containerd#9087](containerd#9087))
  * [`cdd59290d`](containerd@cdd5929) Prepare release notes for v1.6.24
* [release/1.6 backport] log: cleanups and improvements to decouple more from logrus ([containerd#9002](containerd#9002))
  * [`33c2d88e7`](containerd@33c2d88) Revert "log: define G() as a function instead of a variable"
  * [`0a7f2975e`](containerd@0a7f297) log: swap logrus functions with their equivalent on default logger
  * [`9d175a19b`](containerd@9d175a1) log: add package documentation and summary of package's purpose
  * [`96fb65529`](containerd@96fb655) log: make Fields type a generic map[string]any
  * [`bace17e2e`](containerd@bace17e) log: add log.Entry type
  * [`dd127885f`](containerd@dd12788) log: define OutputFormat type
  * [`5b4cf2329`](containerd@5b4cf23) log: define G() as a function instead of a variable
  * [`ee1b4a1e2`](containerd@ee1b4a1) log: add all log-levels that are accepted
  * [`d563a411f`](containerd@d563a41) log: group "enum" consts and touch-up docs
  * [`6e8f4555b`](containerd@6e8f455) log: WithLogger: remove redundant intermediate var
  * [`c19325559`](containerd@c193255) log: SetFormat: include returns in switch
  * [`c3c22f8cb`](containerd@c3c22f8) log: remove gotest.tools dependency
* [release/1.6] update to go1.20.8 ([containerd#9073](containerd#9073))
  * [`a2c294800`](containerd@a2c2948) [release/1.6] update to go1.20.8
* [release/1.6 backport] make repositories of install dependencies configurable ([containerd#9024](containerd#9024))
  * [`0da8dcaa7`](containerd@0da8dca) make repositories of install dependencies configurable
* [release/1.6 backport] update Golang to go1.20.7, minimum version go1.19 ([containerd#9020](containerd#9020))
  * [`8e6a9de5b`](containerd@8e6a9de) update to go1.20.7, go1.19.12
  * [`8b2eb371f`](containerd@8b2eb37) Update Go to 1.20.6,1.19.11
  * [`cff669c7a`](containerd@cff669c) update go to go1.20.5, go1.19.10
  * [`f34a22de9`](containerd@f34a22d) update go to go1.20.4, go1.19.9
  * [`e8e73065e`](containerd@e8e7306) update go to go1.20.3, go1.19.8
  * [`9b3f950d6`](containerd@9b3f950) Go 1.20.2
  * [`17d03ac68`](containerd@17d03ac) Go 1.20.1
  * [`861f65447`](containerd@861f654) go.mod: go 1.19
  * [`81fa93784`](containerd@81fa937) Stop using math/rand.Read and rand.Seed (deprecated in Go 1.20)
  * [`70dc11a6c`](containerd@70dc11a) lint: remove `//nolint:dupword` that are no longer needed
  * [`fec784a06`](containerd@fec784a) lint: silence "SA1019: tar.TypeRegA has been deprecated... (staticheck)"
  * [`6648df1ad`](containerd@6648df1) lint: silence "type `HostFileConfig` is unused (unused)"
  * [`e6b268bc7`](containerd@e6b268b) golangci-lint v1.51.1
  * [`c552ccf67`](containerd@c552ccf) go.mod: golang.org/x/sync v0.1.0
* [releases/1.6] *: fix leaked shim caused by high IO pressure ([containerd#9004](containerd#9004))
  * [`d00af5c3e`](containerd@d00af5c) integration: issue7496 case should work for runc.v2 only
  * [`583696e4e`](containerd@583696e) Vagrantfile: add strace tool
  * [`ab21d60d2`](containerd@ab21d60) pkg/cri/server: add criService as argument when handle exit event
  * [`a229883cb`](containerd@a229883) pkg/cri/server: fix leaked shim issue
  * [`d8f824200`](containerd@d8f8242) integration: add case to reproduce containerd#7496
* [release/1.6] Cherry-pick: [overlay] add configurable mount options to overlay snapshotter ([containerd#8961](containerd#8961))
  * [`8cd40e1d0`](containerd@8cd40e1) Add configurable mount options to overlay
  * [`453fa397a`](containerd@453fa39) feat: make overlay sync removal configurable
* [release/1.6 backport] update runc binary to v1.1.9 ([containerd#8966](containerd#8966))
  * [`4cb7764df`](containerd@4cb7764) update runc binary to v1.1.9
</p>
</details>

* **golang.org/x/sync**  036812b2e83c -> v0.1.0

Previous release can be found at [v1.6.23](https://github.com/containerd/containerd/releases/tag/v1.6.23)
aravindhp added a commit to openshift/containerd that referenced this pull request Sep 16, 2023
containerd 1.6.24

Welcome to the v1.6.24 release of containerd!

The twenty-fourth patch release for containerd 1.6 contains various fixes and updates.

* **CRI: fix leaked shim caused by high IO pressure** ([containerd#9004](containerd#9004))
* **Update to go1.20.8** ([containerd#9073](containerd#9073))
* **Update runc to v1.1.9** ([containerd#8966](containerd#8966))
* **Backport: add configurable mount options to overlay snapshotter** ([containerd#8961](containerd#8961))
* **log: cleanups and improvements to decouple more from logrus** ([containerd#9002](containerd#9002))

See the changelog for complete list of changes

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

* Sebastiaan van Stijn
* Akihiro Suda
* Wei Fu
* Derek McGowan
* Akhil Mohan
* Cardy.Tang
* Danny Canter
* Kazuyoshi Kato
* Mike Brown
* Phil Estes
* Samuel Karp

<details><summary>45 commits</summary>
<p>

* [release/1.6] Prepare release notes for v1.6.24 ([containerd#9087](containerd#9087))
  * [`cdd59290d`](containerd@cdd5929) Prepare release notes for v1.6.24
* [release/1.6 backport] log: cleanups and improvements to decouple more from logrus ([containerd#9002](containerd#9002))
  * [`33c2d88e7`](containerd@33c2d88) Revert "log: define G() as a function instead of a variable"
  * [`0a7f2975e`](containerd@0a7f297) log: swap logrus functions with their equivalent on default logger
  * [`9d175a19b`](containerd@9d175a1) log: add package documentation and summary of package's purpose
  * [`96fb65529`](containerd@96fb655) log: make Fields type a generic map[string]any
  * [`bace17e2e`](containerd@bace17e) log: add log.Entry type
  * [`dd127885f`](containerd@dd12788) log: define OutputFormat type
  * [`5b4cf2329`](containerd@5b4cf23) log: define G() as a function instead of a variable
  * [`ee1b4a1e2`](containerd@ee1b4a1) log: add all log-levels that are accepted
  * [`d563a411f`](containerd@d563a41) log: group "enum" consts and touch-up docs
  * [`6e8f4555b`](containerd@6e8f455) log: WithLogger: remove redundant intermediate var
  * [`c19325559`](containerd@c193255) log: SetFormat: include returns in switch
  * [`c3c22f8cb`](containerd@c3c22f8) log: remove gotest.tools dependency
* [release/1.6] update to go1.20.8 ([containerd#9073](containerd#9073))
  * [`a2c294800`](containerd@a2c2948) [release/1.6] update to go1.20.8
* [release/1.6 backport] make repositories of install dependencies configurable ([containerd#9024](containerd#9024))
  * [`0da8dcaa7`](containerd@0da8dca) make repositories of install dependencies configurable
* [release/1.6 backport] update Golang to go1.20.7, minimum version go1.19 ([containerd#9020](containerd#9020))
  * [`8e6a9de5b`](containerd@8e6a9de) update to go1.20.7, go1.19.12
  * [`8b2eb371f`](containerd@8b2eb37) Update Go to 1.20.6,1.19.11
  * [`cff669c7a`](containerd@cff669c) update go to go1.20.5, go1.19.10
  * [`f34a22de9`](containerd@f34a22d) update go to go1.20.4, go1.19.9
  * [`e8e73065e`](containerd@e8e7306) update go to go1.20.3, go1.19.8
  * [`9b3f950d6`](containerd@9b3f950) Go 1.20.2
  * [`17d03ac68`](containerd@17d03ac) Go 1.20.1
  * [`861f65447`](containerd@861f654) go.mod: go 1.19
  * [`81fa93784`](containerd@81fa937) Stop using math/rand.Read and rand.Seed (deprecated in Go 1.20)
  * [`70dc11a6c`](containerd@70dc11a) lint: remove `//nolint:dupword` that are no longer needed
  * [`fec784a06`](containerd@fec784a) lint: silence "SA1019: tar.TypeRegA has been deprecated... (staticheck)"
  * [`6648df1ad`](containerd@6648df1) lint: silence "type `HostFileConfig` is unused (unused)"
  * [`e6b268bc7`](containerd@e6b268b) golangci-lint v1.51.1
  * [`c552ccf67`](containerd@c552ccf) go.mod: golang.org/x/sync v0.1.0
* [releases/1.6] *: fix leaked shim caused by high IO pressure ([containerd#9004](containerd#9004))
  * [`d00af5c3e`](containerd@d00af5c) integration: issue7496 case should work for runc.v2 only
  * [`583696e4e`](containerd@583696e) Vagrantfile: add strace tool
  * [`ab21d60d2`](containerd@ab21d60) pkg/cri/server: add criService as argument when handle exit event
  * [`a229883cb`](containerd@a229883) pkg/cri/server: fix leaked shim issue
  * [`d8f824200`](containerd@d8f8242) integration: add case to reproduce containerd#7496
* [release/1.6] Cherry-pick: [overlay] add configurable mount options to overlay snapshotter ([containerd#8961](containerd#8961))
  * [`8cd40e1d0`](containerd@8cd40e1) Add configurable mount options to overlay
  * [`453fa397a`](containerd@453fa39) feat: make overlay sync removal configurable
* [release/1.6 backport] update runc binary to v1.1.9 ([containerd#8966](containerd#8966))
  * [`4cb7764df`](containerd@4cb7764) update runc binary to v1.1.9
</p>
</details>

* **golang.org/x/sync**  036812b2e83c -> v0.1.0

Previous release can be found at [v1.6.23](https://github.com/containerd/containerd/releases/tag/v1.6.23)
aravindhp added a commit to openshift/containerd that referenced this pull request Sep 16, 2023
containerd 1.6.24

Welcome to the v1.6.24 release of containerd!

The twenty-fourth patch release for containerd 1.6 contains various fixes and updates.

* **CRI: fix leaked shim caused by high IO pressure** ([containerd#9004](containerd#9004))
* **Update to go1.20.8** ([containerd#9073](containerd#9073))
* **Update runc to v1.1.9** ([containerd#8966](containerd#8966))
* **Backport: add configurable mount options to overlay snapshotter** ([containerd#8961](containerd#8961))
* **log: cleanups and improvements to decouple more from logrus** ([containerd#9002](containerd#9002))

See the changelog for complete list of changes

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

* Sebastiaan van Stijn
* Akihiro Suda
* Wei Fu
* Derek McGowan
* Akhil Mohan
* Cardy.Tang
* Danny Canter
* Kazuyoshi Kato
* Mike Brown
* Phil Estes
* Samuel Karp

<details><summary>45 commits</summary>
<p>

* [release/1.6] Prepare release notes for v1.6.24 ([containerd#9087](containerd#9087))
  * [`cdd59290d`](containerd@cdd5929) Prepare release notes for v1.6.24
* [release/1.6 backport] log: cleanups and improvements to decouple more from logrus ([containerd#9002](containerd#9002))
  * [`33c2d88e7`](containerd@33c2d88) Revert "log: define G() as a function instead of a variable"
  * [`0a7f2975e`](containerd@0a7f297) log: swap logrus functions with their equivalent on default logger
  * [`9d175a19b`](containerd@9d175a1) log: add package documentation and summary of package's purpose
  * [`96fb65529`](containerd@96fb655) log: make Fields type a generic map[string]any
  * [`bace17e2e`](containerd@bace17e) log: add log.Entry type
  * [`dd127885f`](containerd@dd12788) log: define OutputFormat type
  * [`5b4cf2329`](containerd@5b4cf23) log: define G() as a function instead of a variable
  * [`ee1b4a1e2`](containerd@ee1b4a1) log: add all log-levels that are accepted
  * [`d563a411f`](containerd@d563a41) log: group "enum" consts and touch-up docs
  * [`6e8f4555b`](containerd@6e8f455) log: WithLogger: remove redundant intermediate var
  * [`c19325559`](containerd@c193255) log: SetFormat: include returns in switch
  * [`c3c22f8cb`](containerd@c3c22f8) log: remove gotest.tools dependency
* [release/1.6] update to go1.20.8 ([containerd#9073](containerd#9073))
  * [`a2c294800`](containerd@a2c2948) [release/1.6] update to go1.20.8
* [release/1.6 backport] make repositories of install dependencies configurable ([containerd#9024](containerd#9024))
  * [`0da8dcaa7`](containerd@0da8dca) make repositories of install dependencies configurable
* [release/1.6 backport] update Golang to go1.20.7, minimum version go1.19 ([containerd#9020](containerd#9020))
  * [`8e6a9de5b`](containerd@8e6a9de) update to go1.20.7, go1.19.12
  * [`8b2eb371f`](containerd@8b2eb37) Update Go to 1.20.6,1.19.11
  * [`cff669c7a`](containerd@cff669c) update go to go1.20.5, go1.19.10
  * [`f34a22de9`](containerd@f34a22d) update go to go1.20.4, go1.19.9
  * [`e8e73065e`](containerd@e8e7306) update go to go1.20.3, go1.19.8
  * [`9b3f950d6`](containerd@9b3f950) Go 1.20.2
  * [`17d03ac68`](containerd@17d03ac) Go 1.20.1
  * [`861f65447`](containerd@861f654) go.mod: go 1.19
  * [`81fa93784`](containerd@81fa937) Stop using math/rand.Read and rand.Seed (deprecated in Go 1.20)
  * [`70dc11a6c`](containerd@70dc11a) lint: remove `//nolint:dupword` that are no longer needed
  * [`fec784a06`](containerd@fec784a) lint: silence "SA1019: tar.TypeRegA has been deprecated... (staticheck)"
  * [`6648df1ad`](containerd@6648df1) lint: silence "type `HostFileConfig` is unused (unused)"
  * [`e6b268bc7`](containerd@e6b268b) golangci-lint v1.51.1
  * [`c552ccf67`](containerd@c552ccf) go.mod: golang.org/x/sync v0.1.0
* [releases/1.6] *: fix leaked shim caused by high IO pressure ([containerd#9004](containerd#9004))
  * [`d00af5c3e`](containerd@d00af5c) integration: issue7496 case should work for runc.v2 only
  * [`583696e4e`](containerd@583696e) Vagrantfile: add strace tool
  * [`ab21d60d2`](containerd@ab21d60) pkg/cri/server: add criService as argument when handle exit event
  * [`a229883cb`](containerd@a229883) pkg/cri/server: fix leaked shim issue
  * [`d8f824200`](containerd@d8f8242) integration: add case to reproduce containerd#7496
* [release/1.6] Cherry-pick: [overlay] add configurable mount options to overlay snapshotter ([containerd#8961](containerd#8961))
  * [`8cd40e1d0`](containerd@8cd40e1) Add configurable mount options to overlay
  * [`453fa397a`](containerd@453fa39) feat: make overlay sync removal configurable
* [release/1.6 backport] update runc binary to v1.1.9 ([containerd#8966](containerd#8966))
  * [`4cb7764df`](containerd@4cb7764) update runc binary to v1.1.9
</p>
</details>

* **golang.org/x/sync**  036812b2e83c -> v0.1.0

Previous release can be found at [v1.6.23](https://github.com/containerd/containerd/releases/tag/v1.6.23)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

5 participants