Implementing Web Load Balancing on a Shoestring Budget<br />
Why I needed web load balancing<br />Single web server<br />Hosting 60+ websites<br />Redundant subsystems (disk, power)<b...
Project Scope<br />Website availability<br />Website availability<br />Websi…er…uptime!<br />Redundant web servers<br />Re...
Budget<br />Did you read the title of this deck?<br />
Design<br />VmwareESXi (all hosts)<br />CentOS (load balancers)<br />Nginx (SSL termination)<br />Haproxy (web load balanc...
System Layout<br />
Configs<br />Nginx<br />Haproxy<br />Keepalived<br />sysctl<br />iptables<br />
Lessons Learned<br />Whoa!  TSO<br />HTTP 500 errors<br />Web servers “offline” for 20-30 minutes<br />IIS 7 request traci...
Utilization/Performance Monitoring<br />TCP TIME_WAIT<br />TCP ESTABLISHED<br />TCP LISTEN<br />
Project Links<br />Nginx - http://wiki.nginx.org/<br />Haproxy - http://haproxy.1wt.eu/<br />Keepalived - http://www.keepa...
Upcoming SlideShare
Loading in …5
×

Implementing Web Load Balancing On A Shoestring Budget

4,107 views
4,005 views

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
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
4,107
On SlideShare
0
From Embeds
0
Number of Embeds
15
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

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 - http://wiki.nginx.org/<br />Haproxy - http://haproxy.1wt.eu/<br />Keepalived - http://www.keepalived.org/<br />

×