1、測試環境html
HAProxy:linux
主機名:RH7-HAProxy
IP地址:192.168.10.20
操做系統:Red Hat Enterprise Linux Server release 7.2 (Maipo)最小化安裝
防火牆與SELinux:關閉
安裝的服務:HAProxy-1.5.14web
WEB01:瀏覽器
主機名:RH7-Web-01
IP地址:192.168.10.21
操做系統:Red Hat Enterprise Linux Server release 7.2 (Maipo)最小化安裝
防火牆與SELinux:關閉
安裝的服務:Apache-httpd 2.4負載均衡
WEB02:測試
主機名:RH7-Web-02
IP地址:192.168.10.22
操做系統:Red Hat Enterprise Linux Server release 7.2 (Maipo)最小化安裝
防火牆與SELinux:關閉
安裝的服務:Apache-httpd 2.4網站
2、WEB頁面訪問測試加密
一、使用瀏覽器訪問兩臺web的IP地址,能成功訪問到不一樣的頁面,方便咱們後面直觀地觀察負載均衡的效果。因爲Apache的安裝配置不是本文重點,具體可參考本人以前的博文《RedHat 7安裝配置Apache 2.4》
操作系統
二、在RH7-HAProxy上也訪問一下兩臺Web,確認也能夠正常訪問
日誌
3、安裝配置HAProxy
[root@RH7-HAProxy~]yum -y install haproxy [root@RH7-HAProxy~]systemctl start haproxy [root@RH7-HAProxy~]systemctl enable haproxy [root@RH7-HAProxy~]mv /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak [root@RH7-HAProxy~]vi /etc/haproxy/haproxy.cfg
增長如下內容,而後重啓haproxy服務
使用瀏覽器訪問HAProxy的IP地址,屢次刷新,成功實現輪詢訪問web01和web02
登陸haproxy的後臺
能夠看到訪問web01和web02的相關統計數據
修改haproxy的配置文件,將web01的權重改成3,web02的權重仍爲1,這樣訪問到兩臺web的比例應該爲3:1,改好後重啓下haproxy服務
再次經過瀏覽器訪問HAProxy的IP地址,屢次刷新進行訪問測試
再次登陸HAProxy後臺查看統計數據,能夠看到訪問到web01和web02的比例爲3:1
4、配置HAProxy使用Https加密訪問
採用客戶端到HAProxy使用https、HAProxy到WEB端使用http的方式,只須要在HAProxy上配置證書,這裏咱們就配置一張自簽名證書來測試一下
查看一下配置好的證書jiangjianlong.pem
修改HAProxy的配置文件,增長如下參數後重啓haproxy服務
使用https協議訪問HAProxy的IP地址,提示證書存在問題,這是由於自簽名證書不受瀏覽器信任,但說明上文配置的證書已經生效了,點擊繼續瀏覽此網站
成功訪問到Web01頁面,刷新也能訪問到Web02,說明在https的加密訪問下負載均衡也沒問題
經過hosts解析配置一個域名指向HAProxy的IP地址,也能正常訪問
查看下證書信息,跟咱們建立的證書信息一致
配置http重定向,自動將http重定向爲https,修改haproxy配置文件,增長如下參數,並重啓服務
使用瀏覽器測試,成功實現http自動重定向爲https進行訪問,但因爲截圖沒法呈現這個動態的效果,就不截了。
5、配置HAProxy使用獨立日誌文件
一、HAProxy的日誌默認寫入到系統日誌中去,咱們能夠把它獨立出來,方便排查管理。編輯/etc/rsyslog.conf,按下圖進行修改
二、重啓rsyslog服務,再經過瀏覽器訪問一下web以便產生日誌,而後查看/var/log/haproxy.log,發現日誌已經按照咱們上文所配置的那樣,記錄到/var/log/haproxy.log來了