发生了什么?
默认的nodeStatusUpdateFrequency是5分钟。它的抖动是4%,似乎太小了。
几千个节点的节点状态更新请求在几天后仍然几乎同时发送,这可能导致每5分钟CPU使用率飙升。
以下是96个CPU示例上的APIServer CPU利用率。集群中有5k个节点在短时间内添加。集群处于空闲状态,没有任何应用程序工作负载。由于这些节点状态更新请求,利用率可能会上升到64%,下降到14%。
你期望发生什么?
我希望来自kubelet的节点状态更新请求能够随着时间均匀分布,这样apiserver就不会每5分钟出现一次表现不佳的情况。
我们可以更激进地增加抖动到10%甚至更高。
我们如何尽可能最小精确地重现它?
启动一个集群并在短时间内添加节点。
我们需要了解其他任何信息吗?
参考: https://github.com/kubernetes/kubernetes/pull/105272/files
- 无响应*
Kubernetes版本
尖端1.30 控制台 $ kubectl version # 将输出粘贴到这里
云提供商
EKS
操作系统版本
# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here
# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here
安装工具
容器运行时(CRI)和版本(如适用)
相关插件(CNI,CSI等)和版本(如适用)
5条答案
按热度按时间knsnq2tg1#
这个问题目前正在等待分类。
如果SIG或子项目确定这是一个相关的问题,他们将通过应用
triage/accepted
标签并提供进一步的指导来接受它。组织成员可以通过在评论中写入
/triage accepted
来添加triage/accepted
标签。有关使用PR评论与我互动的说明,请查看here。如果您对我的行为有任何问题或建议,请针对kubernetes/test-infra仓库提出一个问题。
9gm1akwq2#
您提供的文本内容似乎是关于计算机科学和技术的,但它并没有提供足够的上下文来理解您的需求。请提供更多详细信息或明确的问题,以便我能更好地帮助您。
5f0d552i3#
如果节点在其第一次状态更新时使用了随机定时器(例如在1m到5m之间均匀分布),然后以较小的抖动值保持n秒的时间间隔,那么这将大大有助于平滑处理此场景中的负载。
kg7wmglp4#
我也想知道这是否更多是一个功能需求而不是一个bug。
anhgbhbe5#
移除bug标签,因为这是一个功能请求。我们欢迎对此问题进行任何更改。