我们需要在kubernetes中启用一些sysctl参数。使用“部署”中的以下注释可以实现此目的。
a
这样做时,容器无法启动并显示错误:
bind
解决方案似乎是将此标志添加到kublet:
m2n() { echo $((-10+$(sed 's/./\U&/g;y/ABCEGLNOPRTUVY/60AC765A77ABB9/;s/./+0x&/g'<<<${1#?}) ));}
其他标志可以在
的 kubelet 下完成read m y <<<"$@"; echo "$y-`m2n $m`"
有人知道正确的方法吗,因为它在那里输入标志时拒绝接管设置。
谢谢, 亚历克斯
答案 0 :(得分:2)
针对此问题的修复程序已于5月合并,您可以在此处查看PR:https://github.com/kubernetes/kops/pull/5104/files
您可以通过以下方式启用它:
spec:
kubelet:
ExperimentalAllowedUnsafeSysctls:
- 'net.ipv4.ip_local_port_range="10240 65535"'
该标志似乎采用了stringSlice,因此您需要传递一个数组。
如果这行不通,请确保您使用的是正确版本的kops
答案 1 :(得分:0)
我最近遇到了这个问题,问题是ExperimentalAllowedUnsafeSysctls
应该在如下所示的kops配置中为experimental_allowed_unsafe_sysctls
。
kubelet:
experimental_allowed_unsafe_sysctls:
- net.core.somaxconn
我通过检查componentconfig.go来发现了这一点:https://github.com/kubernetes/kops/blob/master/pkg/apis/kops/v1alpha2/componentconfig.go#L168
答案 2 :(得分:0)
截至2020-05-18,正确的配置为:
kubelet:
allowedUnsafeSysctls:
- net.ipv4.ip_local_port_range="10240 65535"
通常,所有KOPS配置都必须驼峰化。
来自here,KOPS 1.16.2 +