至少需三台服務器:
服務器A:控制服務器
服務器B和服務器C:實際執行服務器
負載均衡原理:將訪問服務器A的請求分發至服務器B和服務器C
修改服務器A上apache的http.conf文件:
首先,加載相應的代理模塊,去掉以下模塊前面的#號:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
其次,在文件末尾添加:
ProxyPass /example/ balancer://proxy/
<Proxy balancer://proxy>
BalancerMember http://serverB/example/
BalancerMember http://serverC/example/
</Proxy>
表示將訪問服務器A的http://serverA/example/子目錄下的所有文件分發至服務器B和C執行,相當於訪問http://serverB/example/或http://serverC/example/子目錄下的文件。
若寫成:
ProxyPass / balancer://proxy/
<Proxy balancer://proxy>
BalancerMember http://serverB/
BalancerMember http://serverC/
</Proxy>
則代表所有訪問A的請求都相應的轉成訪問B或C
最後,重啟服務器A的apache