繁体   English   中英

使用 k8s 设置 ipvs 模式时“无法设置 sysctl net/ipv4/vs/conn_reuse_mode”是什么意思?

[英]What does it means “can't set sysctl net/ipv4/vs/conn_reuse_mode” when set ipvs mode whith k8s?

当我将 kube-proxy 模式从 iptales 修改为 ipvs 时,重新启动 kube-proxy 后,“kubectl logs kube-proxy”返回以下错误:

server.go:485] 无法创建代理:无法设置 sysctl net/ipv4/vs/conn_reuse_mode:打开 /proc/sys/net/ipv4/vs/conn_reuse_mode:没有这样的文件或目录

我确认我已经按照 cmd 安装了相关的 kernel 模块:

lsmod | grep ip_vs lsmod | grep conntrack

一切正常,那么我应该如何处理上述错误?

您究竟对您的kube-proxy进行了哪些修改以及如何修改? 如果您只是设置 ipvs 模式,您可以按照此处描述的方式进行设置,应该不会有任何问题。

如果您还在kube-proxy Pods securityContext中配置了一些额外的sysctls ,您可能需要考虑以下事项。

请记住,有所谓的安全和不安全 sysctl。 你可以在这里阅读:

默认情况下启用所有安全sysctl。

默认情况下禁用所有不安全的 sysctl,并且必须由集群管理员在每个节点的基础上手动允许。 将安排禁用不安全 sysctl 的 Pod,但将无法启动。

考虑到上述警告,集群管理员可以允许某些不安全的 sysctl 用于非常特殊的情况,例如高性能或实时应用程序调整。 使用 kubelet 标志逐个节点启用不安全的 sysctl; 例如:

 kubelet --allowed-unsafe-sysctls \ 'kernel.msg*,net.core.somaxconn'...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM