Update containerd to v2.1.4

This commit is contained in:
Ciprian Hacman 2025-08-01 07:51:24 +03:00
parent df49b6859a
commit 938656b5d5
3 changed files with 16 additions and 11 deletions

View File

@ -499,8 +499,8 @@ func (b *ContainerdBuilder) buildContainerdConfig() (string, error) {
for name, endpoints := range containerd.RegistryMirrors {
config.SetPath([]string{"plugins", "io.containerd.grpc.v1.cri", "registry", "mirrors", name, "endpoint"}, endpoints)
}
config.SetPath([]string{"plugins", "io.containerd.grpc.v1.cri", "containerd", "default_runtime_name"}, "runc")
config.SetPath([]string{"plugins", "io.containerd.grpc.v1.cri", "containerd", "runtimes", "runc", "runtime_type"}, "io.containerd.runc.v2")
// only enable systemd cgroups for kubernetes >= 1.20
config.SetPath([]string{"plugins", "io.containerd.grpc.v1.cri", "containerd", "runtimes", "runc", "options", "SystemdCgroup"}, true)
if b.NodeupConfig.UsesKubenet {
// Using containerd with Kubenet requires special configuration.
@ -545,7 +545,7 @@ func appendNvidiaGPURuntimeConfig(config *toml.Tree) error {
"privileged_without_host_devices": false,
"runtime_engine": "",
"runtime_root": "",
"runtime_type": "io.containerd.runc.v1",
"runtime_type": "io.containerd.runc.v2",
"options": map[string]interface{}{
"SystemdCgroup": true,
"BinaryName": "/usr/bin/nvidia-container-runtime",
@ -557,7 +557,6 @@ func appendNvidiaGPURuntimeConfig(config *toml.Tree) error {
}
config.SetPath([]string{"plugins", "io.containerd.grpc.v1.cri", "containerd", "runtimes", "nvidia"}, gpuConfig)
config.SetPath([]string{"plugins", "io.containerd.grpc.v1.cri", "containerd", "default_runtime_name"}, "runc")
return nil
}

View File

@ -200,12 +200,13 @@ func TestAppendGPURuntimeContainerdConfig(t *testing.T) {
originalConfig := `version = 2
[plugins]
[plugins."io.containerd.grpc.v1.cri"]
[plugins."io.containerd.grpc.v1.cri".containerd]
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
runtime_type = "io.containerd.runc.v2"
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
SystemdCgroup = true
[plugins."io.containerd.grpc.v1.cri".containerd]
default_runtime_name = "runc"
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
runtime_type = "io.containerd.runc.v2"
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
SystemdCgroup = true
`
expectedNewConfig := `version = 2
@ -223,7 +224,7 @@ func TestAppendGPURuntimeContainerdConfig(t *testing.T) {
privileged_without_host_devices = false
runtime_engine = ""
runtime_root = ""
runtime_type = "io.containerd.runc.v1"
runtime_type = "io.containerd.runc.v2"
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia.options]
BinaryName = "/usr/bin/nvidia-container-runtime"

View File

@ -47,11 +47,16 @@ func (b *ContainerdOptionsBuilder) BuildOptions(o *kops.Cluster) error {
containerd.Runc = &kops.Runc{
Version: fi.PtrTo("1.1.5"),
}
default:
case b.IsKubernetesLT("1.32"):
containerd.Version = fi.PtrTo("1.7.28")
containerd.Runc = &kops.Runc{
Version: fi.PtrTo("1.3.0"),
}
default:
containerd.Version = fi.PtrTo("2.1.4")
containerd.Runc = &kops.Runc{
Version: fi.PtrTo("1.3.0"),
}
}
}
// Set default log level to INFO