yk8s.containerd
By default changes to the following options are only applied to newly provisioned Kubernetes nodes, because restarting containerd is considered unsafe for already initialized Kubernetes nodes.
To apply configuration changes on all Kubernetes nodes, do one of the following:
Run a Kubernetes upgrade with upgrade.sh
Run a host OS update against all nodes with update-kubernetes-nodes.sh
Run apply-k8s-core.sh with disruption allowed (not recommended)
Warning
This is potentially disruptive, because it does not drain nodes before restarting components like containerd.
$ MANAGED_K8S_RELEASE_THE_KRAKEN=true bash managed-k8s/actions/apply-k8s-core.sh prepare-k8s-nodes.yaml
yk8s.containerd.discard_unpacked_layers
Whether to enable discarding of unpacked layers. This allows containerd’s garbage collection to remove layers from the content store after successfully unpacking these layers to the snapshotter.
Note
Already existing layers in the content store will not be removed.
We recommend to run ctr -n k8s.io content prune references
on each Kubernetes node when enabling this option.
See full configuration of containerd .
Type::
boolean
Default::
true
Example::
false
Declared by https://gitlab.com/alasca.cloud/tarook/tarook/-/tree/devel/nix/yk8s/containerd.nix
yk8s.containerd.mirrors
Registry mirrors which will be configured for containerd. These can act as pull through cache to reduce external network traffic and the amount of pulls from registries which have rate limits. The upstream registry will automatically be used after all defined hosts have been tried.
Type::
list of (submodule)
Default::
[ ]
Example::
[
{
mirrors = [
"https://registry-cache-1.example.com"
"https://registry-cache-2.example.com:5000"
];
registry = "docker.io";
}
{
mirrors = [
"https://registry-cache-3.example.com"
];
registry = "some.container.registry";
}
{
mirrors = [
"https://registry-cache-4.example.com"
];
registry = null;
}
]
Declared by https://gitlab.com/alasca.cloud/tarook/tarook/-/tree/devel/nix/yk8s/containerd.nix
yk8s.containerd.mirrors.*.mirrors
A list of URLs which should be substituted for the registry. Optionally specify a port.
Type::
list of RFC3986 HTTPS URL (scheme, authority and path only)
Default::
[ ]
Example::
[
"https://registry-1.example.com"
"https://registry-2.example.com:5000"
]
Declared by https://gitlab.com/alasca.cloud/tarook/tarook/-/tree/devel/nix/yk8s/containerd.nix
yk8s.containerd.mirrors.*.registry
Name of the registry host for which the mirrors should be used. Registry hosts are typically referred to by their internet domain names, aka. registry host names. For example, docker.io, quay.io, gcr.io, and ghcr.io. Set to null if the mirrors should be used as default.
Type::
null or RFC1123 subdomain name
Default::
null
Example::
"gcr.io"
Declared by https://gitlab.com/alasca.cloud/tarook/tarook/-/tree/devel/nix/yk8s/containerd.nix
yk8s.containerd.version
The containerd version to be deployed on Kubernetes nodes.
Note
Changes to this option potentially downgrades containerd.
Type::
Semantic version 2 string
Default::
"2.3.5"
Example::
"2.2.1"
Declared by https://gitlab.com/alasca.cloud/tarook/tarook/-/tree/devel/nix/yk8s/containerd.nix