haproxy负载均衡
環境:
Ha主機:192.168.10.33
backend主機1:192.168.10.35
backend主機2:192.168.10.38
客戶端:192.168.10.184
一.調度方式:
roundrobin:輪詢調度
static-rr:靜態輪詢,當更改權重或者其他配置,必須要重新加載服務才能生效
leastconn:最少連接調度。
source:基于IP的hash調度。對于同一個源端將會調度到同一臺后端服務器
uri:基于URL的HASH調度。對于同一個URL將會調度到同一臺后端服務器
url_param:基于URL中的參數進行hash調度。
hdr_param:基于header中的參數進行hash調度。
二.配置:/etc/haproxy/haproxy.cfg
global #全局定義
?log 127.0.0.1 local0 ?#日志輸出位置
?chroot /usr/local/haproxy #定義chroot目錄,有助于安全
?daemon #指定為守護進程
?maxconn 4096 #定義單進程最大連接數
?nbproc 2 #定義haproxy進程數<=設備的總核數
?pidfile /usr/local/haproxy/run/haproxy.pid#定義pid文件,一般可缺省
?
defaults #定義默認配置
?????log global #引用全局定義的日志
?????mode http #定義使用http模式
?????option abortonclose #丟棄由于客戶端等待時間過長而關閉連接但仍在haproxy等待隊列中的請求
?????option forwardfor #是否記錄x-for地址,用于記錄實際的客戶端IP
?????option httplog #定義記錄HTTP日志
?????retry 3 #當3次連接失敗判定服務器不可用
?????option redispatch #當后端某臺設備不可用時,將原本調度到該(故障)設備的請求強制重定向到其他正常設備
?????timeout http request 2000 #在客戶端建立連接但不請求數據時,關閉客戶端連接
?????timeout queue 5000#等待最大時長
?????timeout connect 3000 #定義haproxy將請求轉發到后端服務器所等待的超時時間
?????timeout client 5000 #客戶端非活動狀態的超時時長
frontend web ? ? ? ? ? ? ? ?#前端定義
????? ? bind *:80 #監聽端口
????????option httpclose
????????default_backend webgroup #前端的請求默認調度到后端的webgroup組
backend webgroup ? #后端定義
????????balance uri #uri調度
????????option httpchk HEAD ?/ HTTP/1.1 \r\nHost:www.baidu.com? #HEAD檢測?
? ? ? ? server servername_one 192.168.10.35:80 weight 1 check inter 5000 rise 3 fall 1?????
? ? ? ? server servername_two 192.168.10.38:80 weight 1 check inter 5000 rise 3 fall 1?
#inter 5000 //間隔5000毫秒檢測一次
#rise 3 //Ha對處于故障的設備重新成功檢測3次后才會將服務器置為可用
#fall 1 //Ha對后端的設備探測只要失敗1次立馬置為不可用
listen admin_stats #listen是frontend、backend的結合,本處用于設定管理界面
????bind *:10086
? ? stats enable #開啟haproxy統計狀態
????stats hide-version #隱藏版本信息
? ? stats refresh 3 #定義頁面刷新時間(秒)
? ? stats uri /admin #定義平臺地址
? ? stats realm welcome to haproxy admin #定義提示信息
? ? stats auth admin:admin #定義用戶信息
? ? stats admin TRUE #當用戶信息正常時啟用stats
三.測試
(1).檢測Ha對后端服務器的check。
?
(2).檢測資源調度
<1>.客戶端做HOST綁定相應域名到HA地址,并在瀏覽器訪問域名
<2>.檢測后端服務器是否接收到請求
轉載于:https://blog.51cto.com/11309364/1918948
總結
以上是生活随笔為你收集整理的haproxy负载均衡的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小型自动化运维--expect脚本之自动
- 下一篇: 凌琦:物联网——一场正在发生的变革