Load balancing Apache HTTP Server
Useful resources
About Apache
Apache is a commonly used web server, it is used to serve up web pages and applications from many platforms and environments. It is frequently installed to host or serve up pages from applications like content management system or blog engines, written in PHP/Python or other languages. Apache is a development of the NCSA httpd web server which has been in active development since 1995, it is a key part of the Open Source movement, being free software and part of the LAMP software stack [Linux Apache Mysql PHP]. Most Apache instances in deployment are actually Apache version 2 but are still referred to as Apache and makes little/no difference.
Key benefits of load balancing
Loadbalancer.org specializes in providing application delivery controllers (ADC). Load balancing Apache ensures:
- optimized performance
- resilience (high availability)
- scalability
How to load balance Apache
Loadbalancer.org supports Apache with all common load balancing methods, incorporating numerous modifications and customisations to suit your requirements and can be deployed physically, virtually or in the cloud. Whatever your preference, we’ll ensure that your deployment is suited for your environment.
Protocols and load balancing methods for Apache HTTP Server
Protocol | Port | Load balancing methods |
HTTP | 80 | Layer 7 SNAT (Recommended) Using Reverse Proxy mode is the easiest and most flexible load balancing method, offering advanced URL switching, cookie insertion and WAF capabilities.
Layer 4 DR Direct Routing has the advantage of being fully transparent and seriously fast but requires solving the arp problem. Layer 4 NAT Traditional NAT mode gives easy to implement fast and transparent load balancing but usually requires a two-arm configuration (two subnets). |
HTTPS | 443 | All load balancing methods can be easily configured for SSL Pass-through. This has the advantage of being fast, secure and easy to maintain. Identical SSL certificates will need to exist on each of your backend servers for pass-through security.
SSL Termination or off-loading must be used when advanced Layer 7 functionality such as cookies or URL switching is required. You can also implement SNI if you have multiple domain certificates one public IP address. Optional re-encryption is also available between the load balancer and Apache. |
HTTP/2 | N/A | Layer 7, support is imminent, this is due/expected in the 8.3.4 timeframe. |
Proxy Protocol | N/A | Apache support from v.2.4.31 |
guides
Apache Web Servers with OWASP Top 10 WAF in Azure Deployment Guide
Read deployment guideApache Web Servers with OWASP Top 10 WAF in AWS Deployment Guide
Read deployment guideMicrosoft IIS Deployment Guide
Read deployment guidemanual
Administration manual v8
Read manualcase study
TU/e University - load balancing web servers
Read case studyblog
Apache and X-Forwarded-For Headers
Read blog