worker主机内核参数调整后在POD未生效

环境信息:
RKE2 版本:

节点 CPU 架构,操作系统和版本:
Linux acloud 5.5.11-1.el7.elrepo.x86_64 #1 SMP Fri Mar 20 10:34:37 EDT 2020 x86_64 x86_64 x86_64 GNU/Linux

集群配置:
3 servers, 1 agents

问题描述:
worker主机做了内核性能优化参数,但在POD中不生效。
简单举一个例子,如内核参数:net.core.somaxconn=32768
问:我如何配置才能让这些内核心参数在POD中生效?

重现步骤:
1.在worker计算节点的文件/etc/sysctl.d/rke.conf中添加了net.core.somaxconn=32768,并让它生效。
2.在主机上查看 cat /proc/sys/net/core/somaxconn结果是:32768
3.进入任意一个POD,查看 cat /proc/sys/net/core/somaxconn结果是:4096

预期结果:
POD中查看 cat /proc/sys/net/core/somaxconn结果是:32768

实际结果:
POD中查看 cat /proc/sys/net/core/somaxconn结果是:4096

附截图


image

有没有可能是在创建 pod 的时候指定的这个参数?

检查了POD的yaml文件,没有这些配置

image

要不你配置下,然后看看结果?

配置上加了
image

然后POD报错如下:

image

是不是不支持?
rancher版本: rancher:v2.5.5
Kubernetes 版本: v1.19.6

从日志来看,“net.core.somaxconn” 不在白名单,看了下 kubelet 参数--allowed-unsafe-sysctls 应该和这个错误有关,你可以研究下这个参数,将 net.* 加入到白名单中。

搞定,谢谢!

image

如何配置的,详细的内容分享下呗

分两步:
1.通过万斤油法则给kubelet添加
image

2.给应用程序添加
image