首页 > 解决方案 > Ratelimit 部署中每秒创建的 Pod 数量

问题描述

我正在使用 Kubernetes 创建一个包含 1000 多个小客户端的部署。但是,这些客户端连接到的服务器无法一次处理这么多请求。有谁知道在 Kubernetes 中每分钟只创建 100 个 Pod 的方法,等待它们处于就绪状态,然后再创建下一个 100 个。

标签: kubernetesscaleratelimit

解决方案


K8s 1.18 中没有这样的直接选项。这是相关的github 问题。一些可能的解决方法是:

  • 使用多个部署,可能在多个命名空间内。在任何更改的情况下,管理具有 1000 个副本的单个部署可能很困难。

  • 在您的客户端(或使用轻量级包装器)内实现随机可配置延迟,以随时间分散负载,具体取决于 1000 个客户端的总挂钟启动时间和服务器电源

  • 实施自定义指标代理并检查以根据需要使用HorisontalPodAutoscalerpod is ready扩展部署,并使用扩展策略每分钟创建 100 个 Pod
  • 实现你自己的 pod 自动扩缩器

推荐阅读