1

我正在尝试将 Horizo​​ntal Pod Autoscaling (HPA) 添加到我的 Kubernetes 部署中。我的应用程序由 5 个微服务组成,它们之间连接。我有一个 NodePort(一个 Traefik 服务),负责控制来自外部的流量。该调用是一个 HTTPS POST,它发送一个由应用程序处理的 csv 文件。它可以通过命令行或使用 Web 应用程序 (UI) 发送。curl 命令将如下所示:

curl https://our_app_name -X POST -F "file=@test.csv"

我对 HPA 功能的疑问如下,

  1. HPA 如何在副本之间分配调用?Kubernetes 是否能够并行计算,即在副本之间划分调用,或者每个调用只去一个副本?

  2. 复制品可以同时参加多个通话吗?

  3. 在 HPA 规范中,例如这里:

  - type: Resource
    resource:
      name: cpu
      target:
       type: Utilization
        averageUtilization: 50

这个50%是多少?是 pod 还是集群 CPU 的 50%?

在此先感谢您的帮助!

4

1 回答 1

2
  1. 每次调用只转到一个 pod 的一个副本
  2. 您可以通过 ingress/service 向 pod 发送尽可能多的请求,但最终会到达 pod 的副本之一
  3. 使用averageUtilization: 50Horizo​​ntalPodAutoscaler 将尝试确保每个pod都大致消耗50%requested CPU. 这不是节点的 CPU。
于 2020-06-08T11:30:18.097 回答