HaProxy提供高可用性、負(fù)載均衡以及基于TCP和HTTP應(yīng)用的代理,支持虛擬主機(jī),它是免費(fèi)、快速并且可靠的一種解決方案。應(yīng)用到Haproxy主要是因?yàn)樗赓M(fèi),并且基于TCP和HTTP的應(yīng)用代理。

先介紹一下Haproxy的應(yīng)用場景,一個(gè)是TCP代理,這邊也是我項(xiàng)目中應(yīng)用的,另一個(gè)是HTTP代理,我就簡單介紹一下?;赥cp協(xié)議的Haproxy代理應(yīng)用場景:在VPC網(wǎng)絡(luò)環(huán)境下,虛機(jī)A的數(shù)據(jù)庫不能被外界網(wǎng)絡(luò)訪問到,只能被在同一內(nèi)網(wǎng)環(huán)境下的虛機(jī)B訪問,這時(shí)候可以通過在虛機(jī)B上搭建Haproxy環(huán)境,通過Haproxy代理實(shí)現(xiàn)外部虛機(jī)C對虛機(jī)A數(shù)據(jù)庫的訪問;這里我項(xiàng)目中實(shí)際運(yùn)用到的場景是這樣的,在公有云上創(chuàng)建RDS實(shí)例,會有VPC網(wǎng)絡(luò)和Classic網(wǎng)絡(luò),在選擇VPC網(wǎng)絡(luò)創(chuàng)建RDS后,在進(jìn)行數(shù)據(jù)同步時(shí),會對該RDS數(shù)據(jù)庫進(jìn)行數(shù)據(jù)同步,這時(shí)候由于RDS的數(shù)據(jù)庫在VPC網(wǎng)絡(luò)環(huán)境下,外網(wǎng)是不能直接訪問這個(gè)RDS數(shù)據(jù)庫。這時(shí)候我們采用的是用一個(gè)ECS云服務(wù)器上搭建一個(gè)Haproxy代理,公網(wǎng)通過haproxy代理訪問這個(gè)RDS數(shù)據(jù)庫,這樣就解決了VPC網(wǎng)絡(luò)的訪問問題;

基于HTTP協(xié)議的Haproxy代理應(yīng)用場景:用戶訪問網(wǎng)站域名時(shí),通過我們設(shè)置的Haproxy代理,HTTP請求到后端配置的web服務(wù)器上,獲得后方服務(wù)器返回的內(nèi)容后重新封裝,響應(yīng)給客戶端;就不啰嗦了,直接來干貨,應(yīng)用haproxy代理訪問后端mysql數(shù)據(jù)庫(這里不一定是mysql數(shù)據(jù)庫)。

(一)Haproxy下載、安裝:網(wǎng)上的資源都要積分,所以直接在yum上找免費(fèi)資源。

yum install -y haproxy
rpm -qi haproxy
rpm -ql haproxy

(二)配置haproxy.cfg文件(重點(diǎn))

cd /etc/haproxy
vim haproxy.cfg

我想了解如何學(xué)習(xí)

姓名:
手機(jī):
留言: