haproxy安裝配置及haproxy+keepalived配置
阿新 • • 發佈:2018-09-13
web服務器 講解 需要 ado 安裝配置 img nginx安裝 default ESS 一、haproxy安裝
操作系統:centos6.5
haproxy是一個提供高可用、負載均衡的開源的代理服務器,haproxy安裝可以源碼安裝也可以yum安裝,本文采用yum安裝,yum安裝非常便捷。掛載本地鏡像,yum安裝haproxy。 Web服務器2:192.168.174.131(hostname:www.jzztest.org 默認頁面:nginx安裝後默認頁面)
操作系統:centos6.5
haproxy是一個提供高可用、負載均衡的開源的代理服務器,haproxy安裝可以源碼安裝也可以yum安裝,本文采用yum安裝,yum安裝非常便捷。掛載本地鏡像,yum安裝haproxy。
yum -y install haproxy
安裝成功,是不是非常方便。查詢haproxy版本
二、haproxy配置
查看haproxy配置文件,本文配置文件已做了部分修改。
本文已經搭建好兩臺簡單的web服務器,就是nginx的基礎頁面,但略有不同
web服務器1:192.168.174.128(hostname:www.jzz.nginx 默認頁面:helloworld)
cat /etc/haproxy/haproxy.cfg | egrep -v ‘(#|^$)‘
global -----------------------------------------------------------------全局配置 log 127.0.0.1 local2 ---------------日誌輸出配置 chroot /var/lib/haproxy --------------haproxy工作目錄 pidfile /var/run/haproxy.pid ----------haproxy的pid目錄 maxconn 4000 -------------------------最大連接數(默認配置) user haproxy -------------------------運行haproxy用戶 group haproxy -------------------------haproxy所屬組 daemon --------------------------------後臺啟動 stats socket /var/lib/haproxy/stats ----這個不知道,後續補充 defaults ----------------------------------------------------------------默認配置 mode http -------------------------默認模式mod{tcp|http|health} log global -------------------------日誌系統與global段相同 option httplog -----------------------日誌類別采用httplog option dontlognull -----------------不記錄健康檢查日誌 option http-server-close ------------------------每次請求完畢後主動關閉http通道 option forwardfor except 127.0.0.0/8 ----後端服務器需要獲得客戶端真實ip需要配置的參數 option redispatch ------------------當請求的服務器掛掉之後強行切換到健康的服務器 retries 3 -------------------------3次連接服務器失敗後確定服務器不可用 timeout http-request 10s -------------------默認http請求超時時間(可優化) timeout queue 1m ----------------------默認隊列超時時間(可優化) timeout connect 10s ----------------------默認連接超時時間(可優化) timeout client 1m --------------------------默認客戶端超時時間(可優化) timeout server 1m -----------------------默認服務器超時時間(可優化) timeout http-keep-alive 10s -------------------默認持久連接超時時間(可優化) timeout check 10s -----------------------默認心跳檢測超時時間(可優化) maxconn 3000 -------------------最大連接數,不要超過全局配置最大連接數 listen stats_auth ----------------------------------------------------監控頁面及監聽端口混合配置,做的有點差,僅做參考 bind 192.168.174.130:8000 ------------------------綁定監控頁面監聽端口 stats uri /status ------------------------------------------haproxy監控頁面 stats auth admin:westos ----------------------------配置監控頁面賬號密碼登錄 stats refresh 5s ------------------------------------------監控頁面自動刷新時間 stats hide-version ------------------------------------隱藏監控頁面haproxy版本號,保障安全 listen www.jzz.nginx *:8088 ----------------監聽的實例名稱、地址和端口,可配置多個 server web1 192.168.174.128:80 cookie app1inst1 check inter 2000 rise 2 fall 5 -----後端web服務器ip及其他配置 listen www.jzztest.org *:8089 ----------------監聽的實例名稱、地址和端口,可配置多個 server web2 192.168.174.131:80 cookie app1inst2 check inter 2000 rise 2 fall 5 -----後端web服務器ip及其他配置 listen localhost.localdomain *:80 ------------------- balance roundrobin ------------------------負載均衡算法(有roundrobin、static-rr、leastconn、source、url、url_param、hdr、rdp_cookie) frontend main *:5000 -----------------------------------------------------------------------frontend前端配置,為haproxy安裝時就有,能力有限,不再解釋 acl url_static path_beg -i /static /images /javascript /stylesheets acl url_static path_end -i .jpg .gif .png .css .js use_backend static if url_static default_backend app backend static ----------------------------------------------------------------------------------backend前端配置,為haproxy安裝時就有,能力有限,不再解釋 balance roundrobin server static 127.0.0.1:4331 check backend app ----------------------------------------------------------------------------------backend前端配置,為haproxy安裝時就有,能力有限,不再解釋 balance roundrobin server app1 127.0.0.1:5001 check server app2 127.0.0.1:5002 check server app3 127.0.0.1:5003 check server app4 127.0.0.1:5004 check
啟動haproxy服務
service haproxy start
訪問haproxy監控頁面端口下的/status,為了安全起見,第一次登陸需要賬號密碼,賬號密碼就是配置文件裏設置的
進入監控頁面,在這裏可以看到我們的配置
訪問haproxy服務器ip的8088端口,可以發現跳轉到了Web服務器1
訪問haproxy服務器ip的8089端口,可以發現跳轉到了Web服務器2
也可以設置域名訪問到不同web服務器,但要在本地host綁定域名ip對應關系。
haproxy服務器配置成功
個人總結:haproxy安裝非常方便,但haproxy更多的是要學會haproxy的調優及各種配置,本文只講解了部分配置,因本人能力有限,還有許多配置未涉及到,但我後期會繼續學習,後續再做補充。
haproxy安裝配置及haproxy+keepalived配置