使用Haproxy

使用Haproxy

Haproxy是目前比較流行的一種集群調(diào)度工具 四層負(fù)載均衡;七層負(fù)載均衡;

Haproxy 與LVS、Nginx的比較

LVS性能最好,但是搭建相對(duì)復(fù)雜 四層負(fù)載均衡

Nginx的upstream模塊支持集群功能已球,但是對(duì)集群節(jié)點(diǎn)健康檢查功能不強(qiáng),性能沒有Haproxy好 七層負(fù)載均衡

比較:
Nginx:
網(wǎng)絡(luò)穩(wěn)定性的依賴非常小辅愿,承擔(dān)高負(fù)載壓力且穩(wěn)定智亮,
負(fù)載均衡和反向代理,可以作為中層反向代理使用
LVS:
抗負(fù)載能力強(qiáng)点待,高可用阔蛉,高性能
Haproxy:
支持tcp協(xié)議的負(fù)載均衡轉(zhuǎn)發(fā),負(fù)載均衡策略多

LVS的負(fù)載調(diào)度算法:
輪詢(RR),加權(quán)輪詢(WRR)癞埠,最少連接(LC)状原,加權(quán)最少連接(WLC)
Nginx的負(fù)載調(diào)度算法:
輪詢(RR),IP-HASH(基于來源IP地址),URL-HASH(基于來源url地址)苗踪,F(xiàn)air(智能)
Haproxy的負(fù)載調(diào)度算法:
輪詢(RR)颠区,最小連接數(shù)(LC),基于來源訪問調(diào)度(SH)


HTTP請(qǐng)求方式:
GET方式
POST方式

返回狀態(tài)碼
正常的狀態(tài)碼為1xx信息提示通铲、2××成功毕莱、3××重定向
異常的狀態(tài)碼為4××請(qǐng)求錯(cuò)誤、5××服務(wù)器錯(cuò)誤

實(shí)驗(yàn)

-----client---------haproxy-------Nginx1---------Nginx2------
      |               |             |              |
 192.168.1.254    192.168.1.1 192.168.1.2   192.168.1.3

一、安裝Nginx (兩個(gè)安裝相同)

[root@localhost ~]# yum -y install pcre-devel zlib-devel
[root@localhost ~]# useradd -M -s /sbin/nologin  nginx
[root@localhost ~]# tar -zxvf nginx-1.6.0.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/nginx-1.6.0/
[root@localhost nginx-1.6.0]# ./configure --prefix=/usr/local/nginx --user=nginx 
 --group=nginx --with-file-aio --with-http_stub_status_module 
 --with-http_gzip_static_module --with-http_flv_module --with-http_ssl_module
[root@localhost nginx-1.6.0]# make && make install
[root@localhost ~]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/
[root@localhost ~]# nginx -t
[root@localhost ~]# nginx 
[root@localhost ~]# netstat -anpt | grep 80
[root@localhost ~]# killall -s HUP nginx //重新加載
[root@localhost ~]# killall -s QUIT nginx //關(guān)閉服務(wù)
[root@localhost ~]# nginx 


WEB——1:
[root@localhost ~]#echo "192.168.1.2 web server" >
/usr/local/nginx/html/index.html
web——2:
[root@localhost ~]#echo "192.168.1.3 web server" >
/usr/local/nginx/html/index.html

二朋截、安裝haproxy

1蛹稍、安裝
[root@localhost ~]# yum -y install pcre-devel zlib-devel
[root@localhost ~]# tar -zxvf haproxy-1.4.24.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/haproxy-1.4.24/
[root@localhost ~]# make TARGET=linux26 PREFIX=/usr/local/haproxy
注意:linux26是指linux的內(nèi)核版本號(hào)。
[root@localhost ~]# make install PREFIX=/usr/local/haproxy
2质和、配置haproxy
[root@localhost ~]# mkdir /etc/haproxy 創(chuàng)建配置文件目錄
[root@localhost ~]# cp /usr/src/haproxy-1.4.24/examples/haproxy.cfg /etc/haproxy/ 
將配置文件復(fù)制到配置文件目錄
[root@localhost ~]# vim /etc/haproxy/haproxy.cfg 
修改:
#配置介紹haproxy配置文件通常分為三個(gè)部分稳摄,即global稚字、default和listen饲宿。global為全局配置,defaults為默認(rèn)配置胆描,listen為應(yīng)用組件配置
global
log 127.0.0.1 local0   //配置日志記錄瘫想,local0為日志設(shè)備,默認(rèn)放到系統(tǒng)日志
log 127.0.0.1 local1 notice  //notice為日志級(jí)別昌讲,通常有24個(gè)級(jí)別
#log loghost local0 info
maxconn 4096  //最大連接數(shù)
chroot /usr/share/haproxy  禁錮
uid 99   用戶
gid 99   用戶
#debug
#quiet
defaults
log global 定義日志為global配置中的日志定義
mode http  模式為http
option httplog 采用http日志格式記錄日志
retries 3 檢查節(jié)點(diǎn)服務(wù)器失敗次數(shù)国夜,連續(xù)達(dá)到三次失敗,則認(rèn)為節(jié)點(diǎn)不可用
#redispatch
maxconn 2000 最大連接數(shù)
contimeout 50   連接超時(shí)時(shí)間
clitimeout 50   客戶端超時(shí)時(shí)間
srvtimeout 50   服務(wù)器超時(shí)時(shí)間

listen webcluster 0.0.0.0:80 定義一個(gè)webcluster的應(yīng)用
option httpchk GET /index.html  注意:可以刪除
balance roundrobin  負(fù)載均衡調(diào)度算法使用輪詢算法
server inst1 192.168.1.2:80 check inter 2000 fall 3 //定義在線節(jié)點(diǎn)
server inst2 192.168.1.3:80 check inter 2000 fall 3
3短绸、啟動(dòng)haproxy
[root@localhost ~]# ln -s /usr/local/haproxy/sbin/* /usr/sbin/  //注意軟鏈接的目錄
[root@localhost ~]# cp /usr/src/haproxy-1.4.24/examples/haproxy.init /etc/init.d/haproxy
[root@localhost ~]# chmod +x /etc/init.d/haproxy 
[root@localhost ~]# /etc/init.d/haproxy start
[root@localhost ~]# /etc/init.d/haproxy status
[root@localhost ~]# netstat  -anp | grep haproxy //占用的也是TCP的80端口
[root@localhost ~]# chkconfig --add haproxy
[root@localhost ~]# chkconfig  haproxy on
注意:
如果啟動(dòng)時(shí)出現(xiàn)報(bào)錯(cuò):/haproxy.main()] Cannot chroot(/usr/share/haproxy)
則手動(dòng)創(chuàng)建:
[root@localhost ~]# mkdir /usr/share/haproxy
如果啟動(dòng)時(shí)出現(xiàn)報(bào)錯(cuò):Starting proxy cacti: cannot bind socket
則執(zhí)行:
[root@localhost ~]# sysctl -e 
                   net.ipv4.ip_nonlocal_bind=1

三车吹、驗(yàn)證:

客戶端輸入:
http://192.168.1.1/
注意:haproxy本身是沒有日志文件,為此需要配置生成醋闭。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末窄驹,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子证逻,更是在濱河造成了極大的恐慌乐埠,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件囚企,死亡現(xiàn)場(chǎng)離奇詭異丈咐,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)龙宏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門棵逊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人银酗,你說我怎么就攤上這事歹河。” “怎么了花吟?”我有些...
    開封第一講書人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵秸歧,是天一觀的道長。 經(jīng)常有香客問我衅澈,道長键菱,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮经备,結(jié)果婚禮上拭抬,老公的妹妹穿的比我還像新娘。我一直安慰自己侵蒙,他們只是感情好造虎,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著纷闺,像睡著了一般算凿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上犁功,一...
    開封第一講書人閱讀 51,462評(píng)論 1 302
  • 那天氓轰,我揣著相機(jī)與錄音,去河邊找鬼浸卦。 笑死署鸡,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的限嫌。 我是一名探鬼主播靴庆,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼怒医!你這毒婦竟也來了炉抒?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤裆熙,失蹤者是張志新(化名)和其女友劉穎端礼,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體入录,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蛤奥,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了僚稿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片凡桥。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖蚀同,靈堂內(nèi)的尸體忽然破棺而出缅刽,到底是詐尸還是另有隱情,我是刑警寧澤蠢络,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布衰猛,位于F島的核電站,受9級(jí)特大地震影響刹孔,放射性物質(zhì)發(fā)生泄漏啡省。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望卦睹。 院中可真熱鬧畦戒,春花似錦、人聲如沸结序。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽徐鹤。三九已至垃环,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間凳干,已是汗流浹背晴裹。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來泰國打工被济, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留救赐,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓只磷,卻偏偏與公主長得像经磅,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子钮追,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容