gpt4 book ai didi

docker - 基于网络利用率或每秒请求数的 Kubernetes 扩展

转载 作者:行者123 更新时间:2023-12-02 11:28:01 24 4
gpt4 key购买 nike

有没有办法根据网络利用率而不是内存或 CPU 来扩展 Kubernetes 节点?

例如,假设您正在向负载均衡器后面的几个节点发送数千个请求。 CPU 或内存没有挣扎,但由于每秒有数千个请求,因此您需要额外的节点来提供服务。您如何在 Google Cloud Kubernetes 中做到这一点?

我一直在研究,但我似乎找不到任何关于这种类型缩放的引用,我猜我不是唯一遇到这个问题的人。所以我想知道你们中是否有人知道任何最佳实践解决方案。

我想理想的解决方案是让每个节点有一个 pod 接收请求,并根据更多请求创建更多节点,并基于此进行扩展或缩减。

最佳答案

我已经使用 this 在我的 gke 集群上实现了这个自定义指标。
这是我的 HPA 配置示例:

apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
name: hpa-name
namespace: your-namespace
annotations:
metric-config.external.prometheus-query.prometheus/interval: 30s
metric-config.external.prometheus-query.prometheus/prometheus-server: http://your-prometheus-server-ip
metric-config.external.prometheus-query.prometheus/istio-requests-total: |
sum(rate(istio_requests_total{reporter="destination", destination_workload="deployment-name", destination_service_namespace="your-namespace"}[2m]))
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: deployment-name
minReplicas: 1
maxReplicas: 10
metrics:
- type: External
external:
metric:
name: prometheus-query
selector:
matchLabels:
query-name: istio-requests-total
target:
type: AverageValue
averageValue: 7

关于docker - 基于网络利用率或每秒请求数的 Kubernetes 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48708139/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com