Skip to content

Enable adjusting memory policy from NRI plugins#166

Merged
mikebrow merged 3 commits into
containerd:mainfrom
askervin:5aW_mempolicy
Mar 17, 2026
Merged

Enable adjusting memory policy from NRI plugins#166
mikebrow merged 3 commits into
containerd:mainfrom
askervin:5aW_mempolicy

Conversation

@askervin
Copy link
Copy Markdown
Contributor

@askervin askervin commented Apr 25, 2025

This PR implements

  • container (default) Linux kernel memory policy adjustment
  • container memory policies adjustment by annotation in the device-injector plugin

See set_mempolicy(2) for more details about Linux kernel memory policies.

This PR can be tested using

apiVersion: v1
kind: Pod
metadata:
  name: alpine-test
  annotations:
    memory-policy.noderesource.dev/container.c0: |
      mode: MPOL_PREFERRED
      nodes: "1,2"
      flags: [ MPOL_F_STATIC_NODES ]
    memory-policy.noderesource.dev/container.c1: |
      mode: MPOL_INTERLEAVE
      nodes: "0,3"
      flags: [ MPOL_F_STATIC_NODES ]
spec:
  containers:
  - name: c0
    image: alpine:latest
    imagePullPolicy: IfNotPresent
    command:
      - sh
      - -c
      - echo c0 $(sleep inf)
    resources:
      requests:
        cpu: 1
        memory: '100M'
      limits:
        cpu: 9
        memory: '100M'
  - name: c1
    image: alpine:latest
    imagePullPolicy: IfNotPresent
    command:
      - sh
      - -c
      - echo c1 $(sleep inf)
    resources:
      requests:
        cpu: 1
        memory: '100M'
      limits:
        cpu: 9
        memory: '100M'
  terminationGracePeriodSeconds: 1

with something like this

$ kubectl apply -f test-pod.yaml
$ kubectl exec -c c0 alpine-test -- /bin/sh -c "apk add numactl-tools; numactl -s"
...
policy: [32769]
preferred node: physcpubind: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 
cpubind: 0 1 2 3 
nodebind: 0 1 2 3 
membind: 0 1 2 3 
preferred: 1 2
$ kubectl exec -c c1 alpine-test -- /bin/sh -c "apk add numactl-tools; numactl -s"
...
policy: [32771]
preferred node: physcpubind: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 
cpubind: 0 1 2 3 
nodebind: 0 1 2 3 
membind: 0 1 2 3 
preferred: 0 3
Enable adjusting Linux memory policy from NRI plugins

Comment thread go.sum Outdated
Comment thread pkg/api/adjustment.go Outdated
Comment thread pkg/api/api.proto Outdated
@klihub
Copy link
Copy Markdown
Member

klihub commented Dec 4, 2025

@askervin We have now the necessary plumbing in place and tagged in runtime Spec and our NRI deps here updated accordingly. So in principle we could go forward with this PR, but I think it needs a bit more work/additions before we can seriously consider it for merging:

  • pull the proposed opencontainers/runtime-tools additions locally to the pkg/runtime-tools/generate wrapper
  • pkg/adaptation test case(s) for memory policy adjustment
  • documentation updates to mention memory policy adjustment
  • ideally, support for memory policy adjustment in the usual suspect, the device-injector sample plugin

@klihub
Copy link
Copy Markdown
Member

klihub commented Dec 5, 2025

@mikebrow @chrishenzie Could we give this a preliminary review, so if there is anything beside the ones already flagged we could try pointing them out and get them addressed in the same round ?

@klihub klihub requested a review from chrishenzie December 7, 2025 09:32
@klihub klihub force-pushed the 5aW_mempolicy branch 5 times, most recently from c2ace9f to 38cddf5 Compare December 8, 2025 17:11
@klihub klihub requested review from klihub and mikebrow December 8, 2025 17:14
@klihub klihub marked this pull request as ready for review December 8, 2025 17:14
@klihub klihub added the v.next to be merged into the next release label Dec 10, 2025
Comment thread plugins/device-injector/device-injector.go Outdated
Comment thread plugins/device-injector/device-injector.go
Comment thread plugins/device-injector/device-injector.go Outdated
@klihub klihub requested a review from chrishenzie December 11, 2025 15:42
@klihub klihub force-pushed the 5aW_mempolicy branch 2 times, most recently from d440222 to 5363825 Compare February 16, 2026 15:55
@klihub
Copy link
Copy Markdown
Member

klihub commented Feb 18, 2026

@mikebrow @chrishenzie Looks like all the review comments have been addressed. PTAL, could we get this approved ?

Copy link
Copy Markdown
Member

@mikebrow mikebrow left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The device injector plugin readme is getting a bit long.. WDYT about links from the top.. to each of these plugin supported adjustment types?

TODO... this and a few of the other plugins are getting useful enough that they should probably be mentioned/linked in the main readme.

Comment thread plugins/device-injector/README.md Outdated
@klihub klihub force-pushed the 5aW_mempolicy branch 2 times, most recently from 1f3b218 to ec18ad4 Compare February 23, 2026 18:20
@klihub
Copy link
Copy Markdown
Member

klihub commented Feb 23, 2026

The device injector plugin readme is getting a bit long.. WDYT about links from the top.. to each of these plugin supported adjustment types?

@mikebrow Do you mean to add a link from each bullet list point at the top of plugins/device-injector/README.md to the related more detailed description chapter later in the same README.md ?

TODO... this and a few of the other plugins are getting useful enough that they should probably be mentioned/linked in the main readme.

👍

Yes, and another TODO is that I promised @samuelkarp to roll a PR for renaming device-injector to something more closely reflecting the current state of affairs, maybe calling it container-adjuster.

@klihub klihub force-pushed the 5aW_mempolicy branch 2 times, most recently from ccdc672 to b979366 Compare February 23, 2026 20:17
@klihub
Copy link
Copy Markdown
Member

klihub commented Feb 23, 2026

The device injector plugin readme is getting a bit long.. WDYT about links from the top.. to each of these plugin supported adjustment types?

@mikebrow Do you mean to add a link from each bullet list point at the top of plugins/device-injector/README.md to the related more detailed description chapter later in the same README.md ?

@mikebrow Assuming that's what you meant I went ahead and updated it accordingly.

@klihub
Copy link
Copy Markdown
Member

klihub commented Mar 5, 2026

@mikebrow @chrishenzie Is there anything else we'd need to address to get this going forward ?

Comment thread plugins/device-injector/README.md Outdated
Comment thread pkg/api/memorypolicy.go Outdated
askervin and others added 3 commits March 10, 2026 10:30
Signed-off-by: Antti Kervinen <antti.kervinen@intel.com>
Signed-off-by: Krisztian Litkey <krisztian.litkey@intel.com>
Add support for adjusting container linux memory policy based
on annotations.

Signed-off-by: Krisztian Litkey <krisztian.litkey@intel.com>
Copy link
Copy Markdown
Member

@mikebrow mikebrow left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Comment thread plugins/device-injector/README.md Outdated
Comment thread plugins/device-injector/README.md Outdated
@mikebrow mikebrow merged commit 5ea59f9 into containerd:main Mar 17, 2026
16 checks passed
@samuelkarp samuelkarp added impact/changelog area/nri Node Resource Interface (NRI) labels Apr 29, 2026
ninalee12 pushed a commit to ninalee12/cloudbeat that referenced this pull request May 20, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/containerd/containerd/api](https://redirect.github.com/containerd/containerd)
| indirect | minor | `v1.10.0` -> `v1.11.0` |
|
[github.com/containerd/containerd/v2](https://redirect.github.com/containerd/containerd)
| indirect | minor | `v2.2.3` -> `v2.3.0` |
|
[github.com/containerd/continuity](https://redirect.github.com/containerd/continuity)
| indirect | minor | `v0.4.5` -> `v0.5.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>containerd/containerd
(github.com/containerd/containerd/v2)</summary>

###
[`v2.3.0`](https://redirect.github.com/containerd/containerd/releases/tag/v2.3.0):
containerd 2.3.0

[Compare
Source](https://redirect.github.com/containerd/containerd/compare/v2.2.3...v2.3.0)

Welcome to the v2.3.0 release of containerd!

The third minor release of containerd 2.x focuses on continued stability
alongside
new features and improvements. This is the third time-based release for
containerd.

Starting with containerd 2.3, the project has moved to release cadence
aligned with
the Kubernetes release schedule, with new minor releases about every 4
months. The
containerd 2.3 release is also the first annual LTS (Long Term Stable)
release under
this new schedule, with support planned for at least two years. Direct
upgrades
between sequential LTS releases (e.g., 1.7 to 2.3) will be tested and
supported.

##### Highlights

- Add transfer types for container filesystem copy
([#&#8203;13165](https://redirect.github.com/containerd/containerd/pull/13165))
- Add option to inject trace ID to logs
([#&#8203;13117](https://redirect.github.com/containerd/containerd/pull/13117))
- Propagate OpenTelemetry traces in outgoing RPCs from plugin clients
([#&#8203;13113](https://redirect.github.com/containerd/containerd/pull/13113))
- Update plugin config migration to run on load
([#&#8203;12608](https://redirect.github.com/containerd/containerd/pull/12608))
- Update sandbox API to include spec field
([#&#8203;12840](https://redirect.github.com/containerd/containerd/pull/12840))

##### Container Runtime Interface (CRI)

- Allow containers to use user namespaces with host networking
([#&#8203;12518](https://redirect.github.com/containerd/containerd/pull/12518))
- Wire UpdatePodSandboxResources to Sandbox API
([#&#8203;13118](https://redirect.github.com/containerd/containerd/pull/13118))
- Unpack images with per-layer labels for specific runtime
([#&#8203;12835](https://redirect.github.com/containerd/containerd/pull/12835))
- Populate ImageId field in container status
([#&#8203;12787](https://redirect.github.com/containerd/containerd/pull/12787))
- Set annotations parameter in CreateSandbox request
([#&#8203;12566](https://redirect.github.com/containerd/containerd/pull/12566))
- Add background stats collector to calculate UsageNanoCores for
containers and pod sandboxes
([#&#8203;12629](https://redirect.github.com/containerd/containerd/pull/12629))

##### Image Distribution

- Support zstd-wrapped EROFS layers
([#&#8203;13185](https://redirect.github.com/containerd/containerd/pull/13185))
- Add os.features support for EROFS native container images
([#&#8203;13091](https://redirect.github.com/containerd/containerd/pull/13091))
- Add EROFS layer media type
([#&#8203;12567](https://redirect.github.com/containerd/containerd/pull/12567))

##### Image Storage

- Add dmverity support to the erofs snapshotter
([#&#8203;12502](https://redirect.github.com/containerd/containerd/pull/12502))
- Use fsmount API to avoid PAGE_SIZE limit for erofs
([#&#8203;12783](https://redirect.github.com/containerd/containerd/pull/12783))

##### Node Resource Interface (NRI)

- Pass container user (uid, gids) to plugins
([#&#8203;12769](https://redirect.github.com/containerd/containerd/pull/12769))
- Pass seccomp policy to plugins
([#&#8203;12768](https://redirect.github.com/containerd/containerd/pull/12768))
- Pass any POSIX rlimits to plugins
([#&#8203;12765](https://redirect.github.com/containerd/containerd/pull/12765))
- Pass extended container status to NRI.
([#&#8203;12770](https://redirect.github.com/containerd/containerd/pull/12770))
- Pass injected CDI devices to plugins
([#&#8203;12767](https://redirect.github.com/containerd/containerd/pull/12767))
- Pass linux sysctl to plugins
([#&#8203;12766](https://redirect.github.com/containerd/containerd/pull/12766))
- Use dedicated RPC calls for all pod and container life-cycle events
via the NRI wire protocol
([containerd/nri#274](https://redirect.github.com/containerd/nri/pull/274))
- Add basic metrics collection for the NRI framework
([containerd/nri#277](https://redirect.github.com/containerd/nri/pull/277))
- Exchange NRI versions between plugins and the runtime during
registration
([containerd/nri#271](https://redirect.github.com/containerd/nri/pull/271))
- Enable adjusting Linux memory policy from NRI plugins
([containerd/nri#166](https://redirect.github.com/containerd/nri/pull/166))
- Close plugins if initial synchronization fails to prevent unregistered
connections
([containerd/nri#279](https://redirect.github.com/containerd/nri/pull/279))
- Accumulate owners for OCI hook adjustments, disallowing commas in
plugin names
([containerd/nri#264](https://redirect.github.com/containerd/nri/pull/264))
- Add nri_no_wasm build tag to allow disabling WASM support at compile
time
([containerd/nri#253](https://redirect.github.com/containerd/nri/pull/253))
- Support direct adjustment of the intelRdt container configuration
([containerd/nri#215](https://redirect.github.com/containerd/nri/pull/215))
- Allow setting kernel scheduling policy attributes via NRI
([containerd/nri#160](https://redirect.github.com/containerd/nri/pull/160))
- Allow adjusting Linux network devices via NRI
([containerd/nri#157](https://redirect.github.com/containerd/nri/pull/157))
- Add support for sysctl adjustment via NRI
([containerd/nri#248](https://redirect.github.com/containerd/nri/pull/248))
- Expose container user, group, and supplemental group IDs to plugins
([containerd/nri#230](https://redirect.github.com/containerd/nri/pull/230))

##### Runtime

- Add configured socket directory to shim bootstrap protocol
([#&#8203;12785](https://redirect.github.com/containerd/containerd/pull/12785))
- Introduce shim bootstrap protocol
([#&#8203;12786](https://redirect.github.com/containerd/containerd/pull/12786))
- Fix binary logging driver not blocking container start on failure
([#&#8203;12595](https://redirect.github.com/containerd/containerd/pull/12595))
- Use new filtered cgroups stats API
([#&#8203;12901](https://redirect.github.com/containerd/containerd/pull/12901))
- Update OOMKilled event handling
([#&#8203;12714](https://redirect.github.com/containerd/containerd/pull/12714))

##### Snapshotters

- Propagate parent chain ID and diff ID via labels during snapshot
preparation
([#&#8203;13071](https://redirect.github.com/containerd/containerd/pull/13071))

##### ctr development tool

- Detect vendor in CDI specs to generate device IDs for --gpus in ctr
([#&#8203;12839](https://redirect.github.com/containerd/containerd/pull/12839))

##### Breaking

- Accumulate owners for OCI hook adjustments, disallowing commas in
plugin names
([containerd/nri#264](https://redirect.github.com/containerd/nri/pull/264))

##### Deprecations

- Deprecate shim.Command
([#&#8203;13319](https://redirect.github.com/containerd/containerd/pull/13319))

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

##### Contributors

-   Maksym Pavlenko
-   Derek McGowan
-   Sebastiaan van Stijn
-   Krisztian Litkey
-   Samuel Karp
-   Wei Fu
-   Akihiro Suda
-   Phil Estes
-   Mike Brown
-   Markus Lehtonen
-   Hudson Zhu
-   Davanum Srinivas
-   Chris Henzie
-   Gao Xiang
-   Chengyu Zhu
-   Akhil Mohan
-   Kazuyoshi Kato
-   Sergey Kanzhelev
-   Austin Vazquez
-   ningmingxiao
-   Aadhar Agarwal
-   Andrew Halaney
-   Apurv Barve
-   Bing Hongtao
-   Brian Goff
-   Michael Zappa
-   Paweł Gronowski
-   Fabiano Fidêncio
-   Hasan Siddiqui
-   Jintao Zhang
-   Paulo Oliveira
-   Shiv Tyagi
-   Albin Kerouanton
-   Alex Lyn
-   Avinesh Singh
-   Danny Canter
-   Esteban Ginez
-   Henry Wang
-   Jin Dong
-   Jérôme Poulin
-   Laura Lorenz
-   Luke Hinds
-   Mark Dodgson
-   Sascha Grunert
-   Tianon Gravi
-   majianhan
-   qiuxue
-   Adrien Delorme
-   Alessio Biancalana
-   Alex Chernyakhovsky
-   Andrey Noskov
-   Andrey Smirnov
-   Annie Cherkaev
-   Antti Kervinen
-   Anuj Singh
-   Benjamin Elder
-   Bo Jiang
-   Cameron McDermott
-   Chris Adeniyi-Jones
-   Chris Chang
-   Chris Henderson
-   Cindy Li
-   CrazyMax
-   Eldon Stegall
-   Evan Lezar
-   Fletcher Woodruff
-   Gaurav Ghildiyal
-   Harsh Rawat
-   Hayato Kiwata
-   Joseph Zhang
-   Justin Chadwell
-   Kaleab Ayenew
-   Manuel de Brito Fontes
-   Mikhail Dmitrichenko
-   Mujib Ahasan
-   Neeraj Krishna Gopalakrishna
-   Pierluigi Lenoci
-   Ricardo Branco
-   Rob Murray
-   Rodrigo Campos
-   Sameer
-   Sameer Saeed
-   Sanil Khurana
-   Shachar Tal
-   Shaobao Feng
-   Shiming Zhang
-   Sreeram Venkitesh
-   Tariq Ibrahim
-   Tim Windelschmidt
-   Tõnis Tiigi
-   Wade Simmons
-   Weixie Cui
-   Will Jordan
-   William Myers
-   Yohei Yamamoto
-   You Binhao
-   Youfu Zhang
-   Yuanliang Zhang
-   delthas
-   guodong
-   jinda.ljd
-   jokemanfire
-   pandaWall

##### Dependency Changes

- **cyphar.com/go-pathrs** v0.2.1 ***new***
- **github.com/Microsoft/go-winio** v0.6.2 ->
[`ad3df93`](https://redirect.github.com/containerd/containerd/commit/ad3df93bed29)
- **github.com/Microsoft/hcsshim** v0.14.0-rc.1 -> v0.15.0-rc.1
- **github.com/cenkalti/backoff/v5** v5.0.3 ***new***
- **github.com/checkpoint-restore/checkpointctl** v1.4.0 -> v1.5.0
- **github.com/containerd/cgroups/v3** v3.1.0 -> v3.1.3
- **github.com/containerd/containerd/api** v1.10.0 -> v1.11.0
- **github.com/containerd/continuity** v0.4.5 -> v0.5.0
- **github.com/containerd/go-dmverity** v0.1.0 ***new***
- **github.com/containerd/imgcrypt/v2** v2.0.1 -> v2.0.2
- **github.com/containerd/nri** v0.10.0 -> v0.12.0
- **github.com/containerd/platforms** v1.0.0-rc.2 -> v1.0.0-rc.4
- **github.com/containerd/plugin** v1.0.0 -> v1.1.0
- **github.com/containerd/ttrpc** v1.2.7 -> v1.2.8
- **github.com/containerd/zfs/v2** v2.0.0-rc.0 -> v2.0.0
- **github.com/containernetworking/plugins** v1.8.0 -> v1.9.1
- **github.com/coreos/go-systemd/v22** v22.6.0 -> v22.7.0
- **github.com/cyphar/filepath-securejoin** v0.6.0 ***new***
- **github.com/davecgh/go-spew** v1.1.1 ->
[`d8f796a`](https://redirect.github.com/containerd/containerd/commit/d8f796af33cc)
- **github.com/erofs/go-erofs** v0.3.0 ***new***
- **github.com/go-jose/go-jose/v4** v4.1.2 -> v4.1.4
- **github.com/grpc-ecosystem/grpc-gateway/v2** v2.26.1 -> v2.28.0
- **github.com/intel/goresctrl** v0.10.0 -> v0.12.0
- **github.com/klauspost/compress** v1.18.1 -> v1.18.5
- **github.com/moby/spdystream** v0.5.0 -> v0.5.1
- **github.com/opencontainers/runtime-spec** v1.2.1 -> v1.3.0
- **github.com/opencontainers/runtime-tools**
[`0ea5ed0`](https://redirect.github.com/containerd/containerd/commit/0ea5ed0382a2)
->
[`edf4cb3`](https://redirect.github.com/containerd/containerd/commit/edf4cb3d2116)
- **github.com/opencontainers/selinux** v1.12.0 -> v1.13.1
- **github.com/pelletier/go-toml/v2** v2.2.4 -> v2.3.0
- **github.com/pmezard/go-difflib** v1.0.0 ->
[`5d4384e`](https://redirect.github.com/containerd/containerd/commit/5d4384ee4fb2)
- **github.com/prometheus/common** v0.66.1 -> v0.67.5
- **github.com/prometheus/procfs** v0.16.1 -> v0.19.2
- **github.com/sirupsen/logrus** v1.9.3 -> v1.9.4
- **github.com/tetratelabs/wazero** v1.9.0 -> v1.11.0
- **go.opentelemetry.io/auto/sdk** v1.1.0 -> v1.2.1
-
**go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc**
v0.60.0 -> v0.68.0
- **go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp**
v0.60.0 -> v0.68.0
- **go.opentelemetry.io/otel** v1.37.0 -> v1.43.0
- **go.opentelemetry.io/otel/exporters/otlp/otlptrace** v1.35.0 ->
v1.43.0
- **go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc**
v1.35.0 -> v1.43.0
- **go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp**
v1.35.0 -> v1.43.0
- **go.opentelemetry.io/otel/metric** v1.37.0 -> v1.43.0
- **go.opentelemetry.io/otel/sdk** v1.37.0 -> v1.43.0
- **go.opentelemetry.io/otel/trace** v1.37.0 -> v1.43.0
- **go.opentelemetry.io/proto/otlp** v1.5.0 -> v1.10.0
- **go.yaml.in/yaml/v2** v2.4.2 -> v2.4.3
- **golang.org/x/crypto** v0.41.0 -> v0.49.0
- **golang.org/x/mod** v0.29.0 -> v0.35.0
- **golang.org/x/net** v0.43.0 -> v0.52.0
- **golang.org/x/oauth2** v0.30.0 -> v0.35.0
- **golang.org/x/sync** v0.17.0 -> v0.20.0
- **golang.org/x/sys** v0.37.0 -> v0.43.0
- **golang.org/x/term** v0.34.0 -> v0.41.0
- **golang.org/x/text** v0.28.0 -> v0.35.0
- **golang.org/x/time** v0.14.0 -> v0.15.0
- **google.golang.org/genproto/googleapis/api**
[`a7a43d2`](https://redirect.github.com/containerd/containerd/commit/a7a43d27e69b)
->
[`9d38bb4`](https://redirect.github.com/containerd/containerd/commit/9d38bb4040a9)
- **google.golang.org/genproto/googleapis/rpc**
[`a7a43d2`](https://redirect.github.com/containerd/containerd/commit/a7a43d27e69b)
->
[`6f92a3b`](https://redirect.github.com/containerd/containerd/commit/6f92a3bedf2d)
- **google.golang.org/grpc** v1.76.0 -> v1.80.0
- **google.golang.org/protobuf** v1.36.10 ->
[`f2248ac`](https://redirect.github.com/containerd/containerd/commit/f2248ac996af)
- **k8s.io/api** v0.34.1 -> v0.36.0
- **k8s.io/apimachinery** v0.34.1 -> v0.36.0
- **k8s.io/client-go** v0.34.1 -> v0.36.0
- **k8s.io/component-base** v0.36.0 ***new***
- **k8s.io/cri-api** v0.34.1 -> v0.36.0
- **k8s.io/cri-client** v0.36.0 ***new***
- **k8s.io/cri-streaming** v0.36.0 ***new***
- **k8s.io/klog/v2** v2.130.1 -> v2.140.0
- **k8s.io/kube-openapi**
[`5883c5e`](https://redirect.github.com/containerd/containerd/commit/5883c5ee87b9)
***new***
- **k8s.io/streaming** v0.36.0 ***new***
- **k8s.io/utils**
[`4c0f3b2`](https://redirect.github.com/containerd/containerd/commit/4c0f3b243397)
->
[`28399d8`](https://redirect.github.com/containerd/containerd/commit/28399d86e0b5)
- **sigs.k8s.io/json**
[`cfa47c3`](https://redirect.github.com/containerd/containerd/commit/cfa47c3a1cc8)
->
[`2d32026`](https://redirect.github.com/containerd/containerd/commit/2d320260d730)
- **sigs.k8s.io/structured-merge-diff/v6** v6.3.0 -> v6.3.2
- **tags.cncf.io/container-device-interface** v1.0.1 -> v1.1.0
- **tags.cncf.io/container-device-interface/specs-go** v1.0.0 -> v1.1.0

Previous release can be found at
[v2.2.0](https://redirect.github.com/containerd/containerd/releases/tag/v2.2.0)

##### Which file should I download?

- `containerd-<VERSION>-<OS>-<ARCH>.tar.gz`: ✅Recommended. Dynamically
linked with glibc 2.35 (Ubuntu 22.04).
- `containerd-static-<VERSION>-<OS>-<ARCH>.tar.gz`: Statically linked.
Expected to be used on Linux distributions that do not use glibc >=
2.35. Not position-independent.

In addition to containerd, typically you will have to install
[runc](https://redirect.github.com/opencontainers/runc/releases)
and [CNI
plugins](https://redirect.github.com/containernetworking/plugins/releases)
from their official sites too.

See also the [Getting
Started](https://redirect.github.com/containerd/containerd/blob/main/docs/getting-started.md)
documentation.

</details>

<details>
<summary>containerd/continuity
(github.com/containerd/continuity)</summary>

###
[`v0.5.0`](https://redirect.github.com/containerd/continuity/releases/tag/v0.5.0)

[Compare
Source](https://redirect.github.com/containerd/continuity/compare/v0.4.5...v0.5.0)

#### What's Changed

- Bump CI runner image to macOS 13 by
[@&#8203;austinvazquez](https://redirect.github.com/austinvazquez) in
[https://github.com/containerd/continuity/pull/264](https://redirect.github.com/containerd/continuity/pull/264)
- Bump golangci-lint to v1.62.0 by
[@&#8203;austinvazquez](https://redirect.github.com/austinvazquez) in
[https://github.com/containerd/continuity/pull/265](https://redirect.github.com/containerd/continuity/pull/265)
- Enable dependabot updates for GitHub Actions packages by
[@&#8203;austinvazquez](https://redirect.github.com/austinvazquez) in
[https://github.com/containerd/continuity/pull/263](https://redirect.github.com/containerd/continuity/pull/263)
- build(deps): bump containerd/project-checks from 1.1.0 to 1.2.2 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot]
in[https://github.com/containerd/continuity/pull/266](https://redirect.github.com/containerd/continuity/pull/266)6
- build(deps): bump actions/checkout from 3 to 4 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot]
in[https://github.com/containerd/continuity/pull/268](https://redirect.github.com/containerd/continuity/pull/268)8
- build(deps): bump actions/setup-go from 3 to 5 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot]
in[https://github.com/containerd/continuity/pull/267](https://redirect.github.com/containerd/continuity/pull/267)7
- Update CI to use latest versions by
[@&#8203;dmcgowan](https://redirect.github.com/dmcgowan) in
[https://github.com/containerd/continuity/pull/279](https://redirect.github.com/containerd/continuity/pull/279)
- build(deps): bump actions/setup-go from 5 to 6 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot]
in[https://github.com/containerd/continuity/pull/271](https://redirect.github.com/containerd/continuity/pull/271)1
- build(deps): bump actions/checkout from 4 to 6 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot]
in[https://github.com/containerd/continuity/pull/273](https://redirect.github.com/containerd/continuity/pull/273)3
- build(deps): bump github/codeql-action from 3.35.1 to 4.35.1 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot]
in[https://github.com/containerd/continuity/pull/282](https://redirect.github.com/containerd/continuity/pull/282)2
- Add native Go ext4 filesystem image creator by
[@&#8203;dmcgowan](https://redirect.github.com/dmcgowan) in
[https://github.com/containerd/continuity/pull/280](https://redirect.github.com/containerd/continuity/pull/280)
- Linux: Make copyFile sparse aware by
[@&#8203;dcantah](https://redirect.github.com/dcantah) in
[https://github.com/containerd/continuity/pull/276](https://redirect.github.com/containerd/continuity/pull/276)
- build(deps): bump github/codeql-action from 4.35.1 to 4.35.2 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot]
in[https://github.com/containerd/continuity/pull/283](https://redirect.github.com/containerd/continuity/pull/283)3
- Fix error message on group ownership verification by
[@&#8203;eldondev](https://redirect.github.com/eldondev) in
[https://github.com/containerd/continuity/pull/269](https://redirect.github.com/containerd/continuity/pull/269)
- fs: handle ENOTSUP error in compareCapabilities function by
[@&#8203;jellor](https://redirect.github.com/jellor) in
[https://github.com/containerd/continuity/pull/274](https://redirect.github.com/containerd/continuity/pull/274)

#### New Contributors

- [@&#8203;dcantah](https://redirect.github.com/dcantah) made their
first contribution in
[https://github.com/containerd/continuity/pull/276](https://redirect.github.com/containerd/continuity/pull/276)
- [@&#8203;eldondev](https://redirect.github.com/eldondev) made their
first contribution in
[https://github.com/containerd/continuity/pull/269](https://redirect.github.com/containerd/continuity/pull/269)
- [@&#8203;jellor](https://redirect.github.com/jellor) made their first
contribution in
[https://github.com/containerd/continuity/pull/274](https://redirect.github.com/containerd/continuity/pull/274)

**Full Changelog**:
containerd/continuity@v0.4.5...v0.5.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "* 1 * * 1-5" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJUZWFtOlNlY3VyaXR5LUNsb3VkIFNlcnZpY2VzIiwiYmFja3BvcnQtc2tpcCIsImRlcGVuZGVuY2llcyIsInJlbm92YXRlIiwicmVub3ZhdGUtYXV0by1hcHByb3ZlIl19-->

Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/nri Node Resource Interface (NRI) impact/changelog v.next to be merged into the next release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants