我的目标很简单:如果虚拟机忙(例如 CPU>80%),不要将流量从 ILB 转发到部署在虚拟机上的服务,如果 CPU 空闲,则将其重新添加回 ILB 轮换例程。
我做了一些阅读。有人建议使用自定义探针,因此 ILB 会每隔 15 秒检查一次探针状态,并返回一定的代码以指示服务健康。
有人可以帮助指出如何实现这种基于 CPU 性能的探测的方向吗?
此外,如果所有 VM r 都变为 none 200,因此负载均衡器没有节点可以转发,客户端请求会被拒绝还是在队列中等待?
我正在使用iaas。
我的目标很简单:如果虚拟机忙(例如 CPU>80%),不要将流量从 ILB 转发到部署在虚拟机上的服务,如果 CPU 空闲,则将其重新添加回 ILB 轮换例程。
我做了一些阅读。有人建议使用自定义探针,因此 ILB 会每隔 15 秒检查一次探针状态,并返回一定的代码以指示服务健康。
有人可以帮助指出如何实现这种基于 CPU 性能的探测的方向吗?
此外,如果所有 VM r 都变为 none 200,因此负载均衡器没有节点可以转发,客户端请求会被拒绝还是在队列中等待?
我正在使用iaas。
这将要求您在监视 CPU 的 VM 上运行一项服务。然后你需要使用自定义探针,指向一个在超过 cpu 阈值的情况下返回超过 200 OK 的网页。您只是在使用虚拟机 (IaaS) 还是云服务 (PaaS)?
如果使用 Azure 资源管理器,请从https://azure.microsoft.com/en-us/documentation/articles/load-balancer-get-started-ilb-arm-ps/开始。如果您使用的是 Azure 经典版,请从https://azure.microsoft.com/en-us/documentation/articles/load-balancer-get-started-ilb-classic-ps/开始
对于资源管理器示例,搜索 $healthprobe
$healthProbe = New-AzureLoadBalancerProbeConfig -Name "HealthProbe" -RequestPath "HealthProbe.aspx" -Protocol http -Port 80 -IntervalInSeconds 15 -ProbeCount 2
在此示例中,requestpath 是您定义的页面的相对路径。你需要把你的逻辑放在这个网页中