我正在尝试在 Azure 上设置自动缩放功能,以便在 5 分钟平均内存超过 90% 时进行扩展。
这是 1 分钟内存使用情况的 24 小时图表:
我有一个 5 分钟平均内存从 1 到 2 的横向扩展规则。当 5 分钟平均内存低于 80% 时,我有一个缩减规则。不可否认,这是相当紧张的。然而,《永远》中的天平似乎从未起火,它总是通过“拍打”来阻止。考虑到上面的图表,肯定有几个地方可以缩小规模吗? (考虑到图表是 1 分钟平均值,我什至看不出在哪里会触发 5 分钟平均值来扩大规模)。
我还发现,对于较小的实例大小,基于内存百分比进行扩展会变得很棘手;这是因为 Azure 无法识别所使用的大部分内存实际上专用于操作系统和其他基础设施......
在这里您可以找到非常详尽的解释:https://medium.com/@jonfinerty/flapping-and-anti-flapping-dcba5ba92a05.
似乎没有解决方法,我正在考虑放弃它(并且仅根据 CPU 进行横向扩展和收缩)。
我希望您的问题得到解决,但发布我的答案是为了帮助更多的受众 您可以按照 Microsoft 提供的以下文档来更好地理解 https://learn.microsoft.com/en-us/azure/azure-monitor/autoscale/autoscale-best-practices#autoscale-best-practices