Microsoft Azure 的负载平衡器的Session Sticky

Microsoft Azure 的负载平衡器是一种 Layer-4负载平衡器。Microsoft Azure 负载平衡器经过针对给定输入端点上接收到的流量计算哈希函数,在一组可用的服务器(虚拟机)之间分配负载。计算哈希函数是为了使来自同一链接(TCP 或 UDP)的全部数据包最终位于同一台服务器上。Microsoft Azure 负载平衡器采用 5个信息(源 IP、源端口、目标 IP、目标端口、协议类型)计算用于将流量映射到可用服务器的哈希函数。咱们选择的哈希函数使到服务器的链接的分布很是随机。可是,根据流量模式,不一样的链接可能映射到同一台服务器。(请注意,到服务器的链接的分布不是轮询的,也不像其余文章或博客中误称的那样具备请求队列)。哈希函数的基本前提是得到了大量来自不一样客户端的请求,这样请求就能够跨服务器完美分配。tomcat

 

Azure负载均衡目前支持三种分发模式:一、五元组;二、三元组;三、二元组。在portal上设置的负载均衡默认是采用五元组(源 IP、源端口、目标 IP、目标端口、协议类型)来计算哈希值。若是采用二元组(源IP、目的IP)的分发模式,来自同一个客户端的链接,将会分发到均衡集中的同一台server上。可是请注意,这样会致使请求不能平均分发的状况,由于位于同一个NAT设备后不一样的客户端请求将被当作同一个负载进行分配。三元组是采用source IP, Destination IP, protocol来计算哈希值。它比二元组增长了一个协议的区分。服务器

 

关于修改负载均衡的分发模式,请您参见以下:负载均衡

查看虚拟机终结点信息,get-azurevm -ServiceName fuzl -Name fuzlc66 |Get-AzureEndpointtcp

 

将分发方式设置为SourceIPProtocol:函数

Set-AzureLoadBalancedEndpoint -ServiceName "fuzl" -LBSetName "tomcatLB" -Protocol tcp -LocalPort 8080 -ProbeProtocolTCP -ProbePort 8080 –LoadBalancerDistribution "sourceIPProtocol"spa

   

命令: Set-AzureLoadBalancedEndpoint -ServiceName "xxxx" -LBSetName "xxxx" -Protocol tcp -LocalPort xx -ProbeProtocolTCP -ProbePort xx –LoadBalancerDistribution "sourceIP"cdn

 

参考:server

https://azure.microsoft.com/en-us/blog/azure-load-balancer-new-distribution-mode/blog

https://azure.microsoft.com/en-us/blog/azure-load-balancer-new-distribution-mode/?cdn=disable队列

相关文章
相关标签/搜索