Puppet Class: kubeadm::containerd

Defined in:
modules/kubeadm/manifests/containerd.pp

Summary

install and configure containerd for toolforge k8s usage

Overview

SPDX-License-Identifier: Apache-2.0

Parameters:



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'modules/kubeadm/manifests/containerd.pp', line 3

class kubeadm::containerd (
  String[1] $pause_image,
) {
  kmod::module { 'br_netfilter':
    ensure => 'present',
  }

  sysctl::parameters { 'kubernetes-ip-forward':
    values => {
      'net.ipv4.ip_forward' => 1,
    },
  }

  package { 'containerd':
    ensure => installed,
  }

  file { '/etc/containerd/config.toml':
    ensure  => file,
    owner   => 'root',
    group   => 'root',
    mode    => '0444',
    content => template('kubeadm/containerd/containerd.toml.erb'),
    notify  => Service['containerd'],
  }

  # crictl needs this envvar now as it will not use default endpoints anymore
  file { '/etc/profile.d/99-crictl.sh':
    ensure  => file,
    owner   => 'root',
    group   => 'root',
    mode    => '0444',
    content => 'export CONTAINER_RUNTIME_ENDPOINT=unix:///run/containerd/containerd.sock',
  }

  service { 'containerd':
    ensure => running,
  }
}