gpt4 book ai didi

kubernetes - Locality LoadBalacing 不适用于 Istio

转载 作者:行者123 更新时间:2023-12-02 11:46:55 26 4
gpt4 key购买 nike

我们有一个 kubernetes 集群,大约有 100 个节点和 istio,并且想要启用 Locality LoadBalancing 功能。这将为我们每年节省多达 7 万美元,因为我们的区域间数据流量太高了。

我关注了 docs并像这样设置 istio configmap:

 ...
meshNetworks: {}


localityLbSetting:
enabled: true
distribute:
- from: us-east-1/us-east-1a/*
to:
"us-east-1/us-east-1a/*": 100
- from: us-east-1/us-east-1b/*
to:
"us-east-1/us-east-1b/*": 100
...

然后部署了 2 个应用程序,其中一个仅响应部署节点的区域(我们正在使用 VirtualService),另一个仅执行请求。

来自 us-east-1a 节点的请求只能由同一区域中的节点回复,对吧?

但这并没有发生。

我们还尝试在 pilot pods 中设置这个变量:

PILOT_ENABLE_LOCALITY_LOAD_BALANCING

当我从部署在区域“us-east-1a”中的一个 pod 获取日志时,它会显示来自两个区域的回复。

Istio 版本:1.2.8

Kubernetes 版本:1.14

感谢任何帮助!谢谢!

最佳答案

恐怕您的配置在 'Locality Load Balancing' 功能的上下文中区域/区域之间的 'Locality' 权重的情况下无效 '分发'模式。

您的 istio-pilot 的日志应该以类似于此的警告形式为您提供有关它的线索:

<timestamp> warn    failed to read mesh configuration, using default: 1 error occurred:
* locality weight must not be in range [1, 100]

我不认为你可以在 Istio 文档的任何地方找到它的记录,但是可以找到权重验证背后的逻辑 here .

关于kubernetes - Locality LoadBalacing 不适用于 Istio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58700764/

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