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

最佳答案

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

  • 使用多个部署,也许在多个 namespace 中。在任何变更的情况下,很难管理具有数千个副本的单个部署。
  • 在客户端(或使用轻量级包装器)内部实现随机可配置的延迟,以随时间推移分散负载,具体取决于您1000s客户端的总挂钟启动时间和服务器电源
  • 通过pod is ready检查实现custom metrics agent,以根据需要扩展HorisontalPodAutoscaler的部署,并使用Scaling Policies每分钟创建100个容器
  • 实现您自己的Pod自动缩放器
  • 关于kubernetes - 限制部署中每秒创建的Pod的数量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61021062/

    10-16 23:50