1. haproxy介紹
Haproxy是一個開源的高性能的反向代理或者說是負載均衡服務軟件之一,它支持雙機熱備、虛拟主機、基于TCP和HTTP應用代理等功能。其配置簡單,而且擁有很好的對服務器節點的健康檢查功能(相當于keepalived健康檢查),當其代理的後端服務器出現故障時,Haproxy會自動的将該故障服務器摘除,當服務器的故障恢複後Haproxy還會自動将RS服務器假如。
Haproxy特别使用與那些訪問量很大。但又需要會話保持或七層應用的業務。Haproxy運行在普通的服務器硬件上,僅僅進行簡單的優化就可以支持數以萬計的并發連接。并且它的運行模式使得它可以很簡單安全的整合到各種網站的架構中,同時使得應用服務器不會暴露到網絡中。
haproxy與各負載均衡器的區别
與nginx:同樣工作在用戶空間,nginx是一款輕量級,能實現緩存、webserver、郵件、負載均衡等功能,但nginx的許多功能都需要第三方的模塊,而haproxy的轉發能力比nginx有更強更靈活的定制性,可以運用splice實現0複制的轉發,并且有更直觀的圖形化管理界面,不過通用性不如nginx,并無緩存功能
與lvs:lvs是工作在内核空間上直接轉發的,無緩存功能
2 查看内核版本 uname -r 并編譯:make TARGET=linux26 ARCH=x86_64 PREFIX=/usr/local/haproxy
備注:TARGET表示内核版本,ARCH表示位數,PREFIX表示安裝路徑
(也可以直接修改makefile文件,如果系統不匹配,直接geneal通用類型)
3. 開始安裝:make install PREFIX=/usr/local/haproxy
4.ll /usr/local可以看到沒有配置文件,此時我們需要手動寫并配置
5.
haproxy.cfg裡面需要配置的内容如下圖,需要手動寫入
haproxy配置分為五部分,分别如下:
1 global: (全局配置主要用于設定義全局參數,屬于進程級的配置,通常和操作系統配置有關)
2 default : (配置默認參數,這些參數可以被用到frontend,backend,Listen組件)
在此部分中設置的參數值,默認會自動引用到下面的frontend、backend、listen部分中,因引,某些參數屬于公用的配置,隻需要在defaults部分添加一次即可。而如果frontend、backend、listen部分也配置了與defaults部分一樣的參數,Defaults部分參數對應的值自動被覆蓋。
3 frontend:( 接收請求的前端虛拟節點,Frontend可以更加規則直接指定具體使用後端的backend)
frontend是在haproxy 1.3版本以後才引入的一個組件,同時引入的還有backend組件。通過引入這些組件,在很大程度上簡化了haproxy配置文件的複雜性。forntend可以根據ACL規則直接指定要使用的後端backend。
4 backend : (後端服務集群的配置,真實服務器,一個Backend對應一個或者多個實體服務器)
在HAProxy1.3版本之前,HAProxy的所有配置選項都在這個部分中設置。為了保持兼容性,haproxy新的版本依然保留了listen組件配置試。兩種配置方式任選一中。
5 Listen : (Fronted和backend的組合體) 比如haproxy實例狀态監控部分配置
6 啟動服務 /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/etc/haproxy.cfg
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!