Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Trying to load balance my app with the use of an AWS Elastic Load Balancer. The app is a custom TCP-based sender/receiver.

In any case, ELB seems to send 100% of the traffic to one machine, neglecting the other healthy attached instance.

I see no options in changing the round/robin behavior...

Suggestions? Thanks!

share|improve this question
Are you testing from just one machine? ELB by default sticks you to one instance for your session. – ceejayoz Oct 17 '12 at 16:14
? there are 2 machines behind the ELB – CMag Oct 17 '12 at 16:17
oh, yes, absolutely, the problem I have is that it will be one daemon initiating connections. My gut feeling is that ELB will try to maintain persistence, and this will not work – CMag Oct 17 '12 at 16:18
You can turn off stickiness in the AWS ELB console. – ceejayoz Oct 17 '12 at 16:24
@ceejayoz. stickyness/cookie settings are available for HTTP, not TCP – CMag Oct 18 '12 at 0:32

If the only traffic is from your testing, you possibly might always hit the same server, even if server stickiness/affinity is disabled.

If the servers are in different availability zones, there are multiple ELBs setup (one in each AZ) and they're all returned in the DNS request for the ELB. The OS is going to chose one of these and probably always use the same one.

Try from a different geographical region or put both in the same AZ and see if you get the same results. If that works, you're probably ok with the way you had it setup, as real-world traffic will get distributed to both Availability Zones.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.