Skip to content

Azure Endpoint name ‘xxxx’, property ‘LoadBalancerDistribution’. The value ‘sourceIPProtocol’ does not match ‘ for LB set ‘xxxx’.

I refer to the new feature of sticky session on this article here where you are able to set 2-tuple or 3-tuple affinity in addition to the previous version of endpoint load balancer on azure.

After following the Azure cmdlet on the above blogpost, I’ve stumbled upon the error in the image/title whenever I try to add in new endpoints on the or portal.

The error can be reproduced with either of the below scenarios

  1. VM1 and VM2 are in the same Availability Set and Cloud Service. Using the commandGet-AzureVM -ServiceName $csname -Name $vm1name | Add-AzureEndpoint -Name $nameofEndpoint -Protocol "tcp" -PublicPort $publicport -LocalPort $localport -DefaultProbe -LBSetname $nameofLBEndpoint –LoadBalancerDistribution "sourceIPProtocol" | Update-AzureVMGet-AzureVM -ServiceName $csname -Name $vm2name | Add-AzureEndpoint -Name $nameofEndpoint -Protocol "tcp" -PublicPort $publicport -LocalPort $localport -DefaultProbe -LBSetname $nameofLBEndpoint –LoadBalancerDistribution "sourceIPProtocol" | Update-AzureVM
  2. Using the commandSet-AzureLoadBalancedEndpoint -ServiceName $csname -LBSetName $portname -Protocol tcp -LocalPort $portnumber -ProbeProtocolTCP -ProbePort $probeport –LoadBalancerDistribution "sourceIPProtocol"

What’s the fix for now?
As the PowerShell team usually works faster to release new features for Azure, the portal is working to catchup with this new functionality. They are aware of this issue and working on a fix now.

Published inAzure

One Comment

  1. The key is that all parameters must match the ones set in the already defined endpoints which belong to the load balanced set. You need to also remember, that not including certain paramteres very often result in including these, just with their default parameters, which may also cause mismatch.

    In my case, I had to specify it like that and I was able to add any number of endpoints that I needed.

    Get-AzureVM –ServiceName “my-webfarm” –Name “my-web1” | Add-AzureEndpoint -Name “HTTP” -Protocol “tcp” -PublicPort 80 -LocalPort 80 -LBSetName “prod-http” -LoadBalancerDistribution “sourceIP” -ProbeIntervalInSeconds 5 -ProbeTimeoutInSeconds 11 -ProbePort 80 -ProbeProtocol “tcp” | Update-AzureVM

    It works as a charm each time. Hope that helps.

Leave a Reply

Your email address will not be published. Required fields are marked *