k3s-io / k3s

Lightweight Kubernetes
https://k3s.io
Apache License 2.0
27.66k stars 2.32k forks source link

Support containerd config_path for stargz snapshotter #9976

Closed brandond closed 3 months ago

brandond commented 5 months ago
mdrahman-suse commented 3 months ago

Validated on master (v1.30) branch with commit df5db28a

Environment and Config

Ubuntu 22.04, Single server

Replication:

$ k3s -v
k3s version v1.30.1+k3s1 (80978b5b)
go version go1.22.2

[plugins."io.containerd.internal.v1.opt"] path = "/var/lib/rancher/k3s/agent/containerd" [plugins."io.containerd.grpc.v1.cri"] stream_server_address = "127.0.0.1" stream_server_port = "10010" enable_selinux = false enable_unprivileged_ports = true enable_unprivileged_icmp = true sandbox_image = "rancher/mirrored-pause:3.6"

[plugins."io.containerd.grpc.v1.cri".containerd] snapshotter = "stargz" disable_snapshot_annotations = false

[plugins."io.containerd.snapshotter.v1.stargz"] cri_keychain_image_service_path = "/run/containerd-stargz-grpc/containerd-stargz-grpc.sock" [plugins."io.containerd.snapshotter.v1.stargz".cri_keychain] enable_keychain = true ...


## Validation:

$ k3s -v k3s version v1.30.1+k3s-df5db28a (df5db28a) go version go1.22.2

- `config_path` is present under `[plugins."io.containerd.snapshotter.v1.stargz".registry]` in config.toml

$ sudo cat /var/lib/rancher/k3s/agent/etc/containerd/config.toml

File generated by k3s. DO NOT EDIT. Use config.toml.tmpl instead.

version = 2

[plugins."io.containerd.internal.v1.opt"] path = "/var/lib/rancher/k3s/agent/containerd" [plugins."io.containerd.grpc.v1.cri"] stream_server_address = "127.0.0.1" stream_server_port = "10010" enable_selinux = false enable_unprivileged_ports = true enable_unprivileged_icmp = true sandbox_image = "rancher/mirrored-pause:3.6"

[plugins."io.containerd.grpc.v1.cri".containerd] snapshotter = "stargz" disable_snapshot_annotations = false

[plugins."io.containerd.snapshotter.v1.stargz"] cri_keychain_image_service_path = "/run/containerd-stargz-grpc/containerd-stargz-grpc.sock" [plugins."io.containerd.snapshotter.v1.stargz".cri_keychain] enable_keychain = true

[plugins."io.containerd.snapshotter.v1.stargz".registry] config_path = "/var/lib/rancher/k3s/agent/etc/containerd/certs.d" ...