我在Azure的负载均衡器中看到了一个明确的非循环负载均衡模式,用于我的云角色。大多数请求都将转到我的Web-Api工作者角色设置的两个实例的第一个实例。
如何确保Azure的LB平均分配请求?
请注意,CloudMonix仪表板中的第一个屏幕截图包含第一个实例的CPU利用率(60-65%持续平均值),第二个屏幕截图包含第二个实例的CPU利用率(2-5%持续平均值) 在我研究过的很多不同时期,这是一致的。
两个实例都是相同的,只听取许多http请求并处理它们。
答案 0 :(得分:1)
我在过去肯定有同样的问题,但是注意到在一个持续的时间段(几天或更长时间)内,请求在实例之间得到平衡。根据我的个人研究,您无法在天蓝云服务上配置负载平衡。 Here是一个描述服务定义文件的文档,我想如果它是可配置的,它就会在那里。
但是,您可以使用Azure资源管理器更明确地配置load balancer。
答案 1 :(得分:1)
实际上有一种方法可以在.csdef文件中为Cloud Service配置loadBalancerDistribution。缺陷是文档更新: - (
请查看此文章:https://azure.microsoft.com/en-us/blog/azure-load-balancer-new-distribution-mode/
LoadBalancerDistribution的值可以是2元组亲和力的sourceIP,3元组亲和力的sourceIPProtocol或无(没有亲和力。即5元组)
我会查看更新架构文章以反映这一点。
关于负载分配 - 如果你没有专门选择2或3元组算法,你应该运行5元组。
您可以使用https://resources.azure.com查看当前配置。
我知道CPU是负载的反映,但负载均衡器会根据网络会话进行平衡,因此请确保CPU负载和网络会话分布相关。在你的情况下,如果他们不这样做,我会感到惊讶 - 只是提醒。
请查看此文章,以确保您没有使用keep-alives:Extremely uneven cloud service load-balancing with Azure