您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“如何使用HAProxy”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何使用HAProxy”這篇文章吧。
一、安裝:
# tar zcvf haproxy-1.3.20.tar.gz # cd haproxy-1.3.20
# make TARGET=linux26 PREFIX=/usr/local/haproxy #將haproxy安裝到/usr/local/haproxy,TARGET表示linux內核版本, 可以根據自己機器調整
# make install PREFIX=/usr/local/haproxy
二、啟動:
HAProxy啟動時需要配置文件,首次接觸可以使用安裝文件夾中的examples中的默認配置文件haproxy.cfg啟動,為了清晰,先創建一個配置文件目錄
#mkdir /usr/local/haproxy/conf
將安裝目錄中的haproxy.cfg拷貝到/usr/local/haproxy/conf
啟動服務:/usr/local/haproxy/sbin/haproxy –f /usr/local/haproxy/conf/haproxy.cfg
如果啟動中遇到如下錯誤:
“Cannot create ** 目錄/文件”
解決:mkdir 目錄
三、配置:
配置文件主要分為兩大部分:global 區域和代理區域。
global :主要涉及進程方面的參數。如下所示:
log 127.0.0.1 local0 #log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 4096
chroot /home/develop/haproxy
uid 99
gid 504 #develop group id
daemon
nbproc 1
pidfile /home/develop/haproxy/logs/haproxy.pid
其他參數和具體參數意義請大家參考官網。
代理區域:分為三個部分:defaults、listen、frontend、backend
defaults:為它下面聲明的區(如listen、frontend、backend)設置了默認的參數。如果一個defaults下面又聲明了一個defaults,那么相同參數的取最下面defaults的值。如下所示:
mode http #工作模式http代理,即7層,其他取值:tcp(工作在四層)/health
option httplog
option httpclose
option dontlognull
option forwardfor
option redispatch
retries 2
maxconn 2000
balance roundrobin #后端服務器負載均衡模式
stats uri /haproxy-stats
contimeout 5000
clitimeout 50000
srvtimeout 50000
frontend:描述一系列用來接收客戶端鏈接的套接字,就相當于socket編程中的listen、bind、accept功能。如下所示:
bind 192.168.198.79:7910 #haproxy綁定地址和偵聽端口 mode tcp
acl shunt src 10.28.169.231
use_backend new_server if shunt
default_backend old_server
backend:描述真正服務器,一個配置文件中可以定義多個。如下所示:
server second 192.168.198.77:7910 #真正的后端服務器
server third 192.168.198.78:7910
listen:frontend和backend的組合,通常用于tcp的轉發中。
強大的acl:
acl的語法如下:
acl <aclname> <criterion> [flags] [operator] <value> ...
如下所示:
mode tcp
acl shunt src 10.28.169.231
這個acl的名稱為 shunt,criterion為src,value為10.28.169.231。這個acl中沒有flags和operator部分。
意思是如果鏈接請求的客戶端的ip地址為10.28.169.231,就匹配上。初看起來,作用不是很大,但它可以形成條件判斷。例如這么一個應用場景:如果請求客戶端地址是10.28.169.231,轉發到10.28.169.114服務器上執行,其他請求客戶端轉發到10.28.169.12上執行。可以按如下配置項達到要求:
frontend only1
bind 192.168.198.79:7910
mode tcp
acl shunt src 10.28.169.231
use_backend new_server if shunt
default_backend old_server
backend new_server
server first 10.28.169.114:7910
backend old_server
server second 10.28.169.12:7910
以上是“如何使用HAProxy”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。