一、HAProxy簡介
代理的作用:web緩存(加速)、反向代理、內容路由(根據流量及內容類型等將請求轉發至特定服務器)、轉碼器(將后端服務器的內容壓縮后傳輸給client端)。
緩存的作用:減少冗余內容傳輸;節省帶寬、緩解網絡瓶頸;降低了對原始服務器的請求壓力,降低了傳輸延遲。
HAProxy是一種免費的、非常快速且可靠的解決方案,它提供了高可用性、負載平衡和對TCP和基於http的應用程序的代理。它特別適用於非常高的流量網站,
並為世界上訪問量最大的網站提供了強大的力量。多年來,它已經成為事實上的標准的opensource負載平衡器,現在隨大多數主流Linux發行版本一起發布,
並且經常在雲平台上默認部署。
HAProxy:只是http協議的反向代理,不提供緩存功能。
二、HAProxy測試環境搭建
1、簡單架構圖
2、測試環境(說明):
HAProxy:192.168.1.157
web1:192.168.1.110
web2:192.168.1.184
操作系統:CentOS Linux release 7.3.1611 (Core)
3、HAProxy服務器安裝haproxy
yum -y install haproxy
echo "1111111" > /var/www/html/index.html
systemctl start httpd
4、web1和web2安裝httpd
yum -y install httpd
echo "2222222" > /var/www/html/index.html
systemctl start httpd
5、配置HAProxy
vim /etc/haproxy/haproxy.cfg
修改前端和后端的配置如下:
frontend main 192.168.1.157:80
default_backend webserver
backend webserver
balance roundrobin
server web1 192.168.1.110:80 check
server web2 192.168.1.184:80 check
三、配置HAProxy訪問記錄日志
日志位置:/var/log/haproxy.log
編輯配置文件/etc/rsyslog.conf
加入如下內容:
$ModLoad imudp
$UDPServerRun 514
local2.* /var/log/haproxy.log
重啟rsyslog進程
systemctl restart rsyslog
啟動haproxy服務
systemctl start haproxy
四、測試環境是否健康
通過瀏覽器訪問HAProxy
http://192.168.1.157
訪問日志記錄如下圖: