Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Implementing Web Load Balancing On A Shoestring Budget


Published on

How off-the-shelf open source software (i.e. Vmware ESXi, CentOS, nginx, haproxy, and keepalived) was used to deploy an effective web load balancing solution to deliver redundant and available web services.

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Implementing Web Load Balancing On A Shoestring Budget

  1. 1. Implementing Web Load Balancing on a Shoestring Budget<br />
  2. 2. Why I needed web load balancing<br />Single web server<br />Hosting 60+ websites<br />Redundant subsystems (disk, power)<br />Spare mobo, anyone?<br />
  3. 3. Project Scope<br />Website availability<br />Website availability<br />Websi…er…uptime!<br />Redundant web servers<br />Redundant load balancers<br />Session state persistence for failed web backends not required (yet)<br />
  4. 4. Budget<br />Did you read the title of this deck?<br />
  5. 5. Design<br />VmwareESXi (all hosts)<br />CentOS (load balancers)<br />Nginx (SSL termination)<br />Haproxy (web load balancing)<br />Keepalived (VRRP)<br />Windows Server 2008 (IIS)<br />
  6. 6. System Layout<br />
  7. 7. Configs<br />Nginx<br />Haproxy<br />Keepalived<br />sysctl<br />iptables<br />
  8. 8. Lessons Learned<br />Whoa! TSO<br />HTTP 500 errors<br />Web servers “offline” for 20-30 minutes<br />IIS 7 request tracing did not help<br />Disable TSO<br />Windows: NIC properties (on by default for Windows guest VMs)<br />Linux: ethtool –k <interface><br />
  9. 9. Utilization/Performance Monitoring<br />TCP TIME_WAIT<br />TCP ESTABLISHED<br />TCP LISTEN<br />
  10. 10.
  11. 11. Project Links<br />Nginx -<br />Haproxy -<br />Keepalived -<br />