You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[`nftables` mode](/docs/reference/networking/virtual-ips/#proxy-mode-nftables) of kube-proxy requires
44
+
version 1.0.1 or later
45
+
of the nft command-line tool, as well as kernel 5.13 or later.
46
+
47
+
For testing/development purposes, you can use older kernels, as far back as 5.4 if you set the
48
+
`nftables.skipKernelVersionCheck` option in the kube-proxy config.
49
+
But this is not recommended in production since it may cause problems with other nftables
37
50
users on the system.
38
51
39
52
## Version 2 control groups
40
53
41
-
cgroup v1 support is in maintained mode stating v1.31, and cgroup v2 is a recommended. So very soon _Kubernetes_ Linux nodes will at least recommend this kernel version.
54
+
Kubernetes cgroup v1 support is in maintained mode starting from Kubernetes v1.31; using cgroup v2
55
+
is recommended.
42
56
In [Linux 5.8](https://github.com/torvalds/linux/commit/4a7e89c5ec0238017a757131eb9ab8dc111f961c), the system-level `cpu.stat` file was added to the root cgroup for convenience.
43
57
44
-
In [runc document](https://github.com/containerd/cgroups/blob/0c03de4a3d82a5f02f455ccc8174cb0dc9c2a532/cgroup2/manager.go#L411-L430), Kernel older than 5.2 is not recommended due to lack of freezer.
58
+
In runc document, Kernel older than 5.2 is not recommended due to lack of freezer.
45
59
46
60
## Other kernel requirements {#requirements-other}
47
61
48
62
Some features may depend on new kernel functionalities and have specific kernel requirements:
49
63
50
-
1.[Recursive read only mount](/docs/concepts/storage/volumes/#recursive-read-only-mounts): This is implemented by applying the `MOUNT_ATTR_RDONLY` attribute with the `AT_RECURSIVE` flag using `mount_setattr`(2) added in Linux kernel v5.12.
51
-
2. Pod user namespace support requires minimal kernel version 6.5+, according to [KEP-127](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/127-user-namespaces/README.md).
52
-
3. For [node system swap](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/2400-node-swap/README.md), tmpfs noswap is not supported until kernel 6.3.
64
+
<!--
65
+
Code(recursive read only mount): https://github.com/kubernetes/kubernetes/blob/00236ae0d73d2455a2470469ed1005674f8ed61f/staging/src/k8s.io/cri-api/pkg/apis/runtime/v1/api.proto#L1605-L1609
66
+
Code(user namespace and swap): https://github.com/kubernetes/kubernetes/blob/00236ae0d73d2455a2470469ed1005674f8ed61f/pkg/util/kernel/constants.go#L47-L51
67
+
-->
68
+
1.[Recursive read only mount](/docs/concepts/storage/volumes/#recursive-read-only-mounts):
69
+
This is implemented by applying the `MOUNT_ATTR_RDONLY` attribute with the `AT_RECURSIVE` flag
70
+
using `mount_setattr`(2) added in Linux kernel v5.12.
71
+
2. Pod user namespace support requires minimal kernel version 6.5+, according to
0 commit comments