Kubernetes Kops - 在 kubelet 上设置 sysctl 标志
Kubernetes Kops - set sysctl flag on kubelet
我们需要在 kubernetes 中启用一些 sysctl 参数。这应该可以通过部署中的以下注释来实现。
annotations:
security.alpha.kubernetes.io/unsafe-sysctls: net.ipv4.ip_local_port_range="10240 65535"
这样做时容器无法启动并出现错误:
Warning FailedCreatePodSandBox 8s (x12 over 19s) kubelet, <node> Failed create pod sandbox.
解决方案似乎是将此标志添加到 kublet:
--experimental-allowed-unsafe-sysctls
其他标志可以在kubelet下完成
kops edit cluster
有谁知道这样做的正确方法,因为它在输入标志时拒绝选择设置。
谢谢,
亚历克斯
这个问题的修复已于 5 月合并,您可以在此处查看 PR:https://github.com/kubernetes/kops/pull/5104/files
您可以通过以下方式启用它:
spec:
kubelet:
ExperimentalAllowedUnsafeSysctls:
- 'net.ipv4.ip_local_port_range="10240 65535"'
flag 似乎需要一个 stringSlice,所以你需要传递一个数组。
如果这不起作用,请确保您使用的是正确版本的 kops
截至 2020-05-18,正确的配置是,例如:
kubelet:
allowedUnsafeSysctls:
- net.ipv4.ip_local_port_range="10240 65535"
一般来说,所有 KOPS 配置都必须是驼峰式。
来自 here,KOPS 1.16.2+
我们需要在 kubernetes 中启用一些 sysctl 参数。这应该可以通过部署中的以下注释来实现。
annotations:
security.alpha.kubernetes.io/unsafe-sysctls: net.ipv4.ip_local_port_range="10240 65535"
这样做时容器无法启动并出现错误:
Warning FailedCreatePodSandBox 8s (x12 over 19s) kubelet, <node> Failed create pod sandbox.
解决方案似乎是将此标志添加到 kublet:
--experimental-allowed-unsafe-sysctls
其他标志可以在kubelet下完成
kops edit cluster
有谁知道这样做的正确方法,因为它在输入标志时拒绝选择设置。
谢谢, 亚历克斯
这个问题的修复已于 5 月合并,您可以在此处查看 PR:https://github.com/kubernetes/kops/pull/5104/files
您可以通过以下方式启用它:
spec:
kubelet:
ExperimentalAllowedUnsafeSysctls:
- 'net.ipv4.ip_local_port_range="10240 65535"'
flag 似乎需要一个 stringSlice,所以你需要传递一个数组。
如果这不起作用,请确保您使用的是正确版本的 kops
截至 2020-05-18,正确的配置是,例如:
kubelet:
allowedUnsafeSysctls:
- net.ipv4.ip_local_port_range="10240 65535"
一般来说,所有 KOPS 配置都必须是驼峰式。
来自 here,KOPS 1.16.2+