Tag Archive for 'AWS'

NodeBalancer in Linode.com

Just be notified from gslin’s post: Linode 也推出 Load balancer 服務… (剛開始 beta), so let’s try it out: (The official announcement post is here by Linode.com.)

You can choose TCP or HTTP Protocol to balance, but no HTTPS yet. You can strict the session by table or HTTP cookie.

Because Linode provides TCP, HTTP Valid Status and HTTP Body Regex as healthy checking methods, you can check if the generated HTML page is correct (for example, there is “</html>” tag in the response body). You can not specify Host: header in the healthy checker now, so you must configure your virtual host listen on different port if you want to run several websites on the same backend.

The screenshot after set a “Port” up:

Add some nodes to it:

You can not specify other values except 192.168.*.* or IPv6 Link Local Address in the node address.

The post on the official forum said that IPv6 is supported, but I can not specify the IPv6 link local address into the field successfully:

After do some experiment, the IPv6 support works fine. And the header X-Forwarded-For is supported, too.

Two problems in production usage:

  1. You can not make sure the X-Forwarded-For header is provided by the NodeBalancer. i.e. If someone is in the same private LAN with you, he/she can make a forged X-Forwarded-For header in a HTTP request. The Elastic Load Balancer (ELB) by AWS solved the problem by a special security group (Firewall), but NodeBalancer is still suffered by the problem.
  2. The UP/Down healthy status was not updated. I added a new node at 17:00 (Taipei Time) but the status of that node is still “Unknown” until 21:30…