haproxy的使用及配置

一、利用haproxy實現簡單的負載均衡

wKioL1QezuDwl1tAAAMWStZrH88085.jpg



1、各服務器IP地址

nodeboss:192.168.1.10

nodeOne:192.168.1.11

haproxy

eth0:192.168.42.141

eth1:192.168.1.1


2、配置Real-Server:

在兩個node服務器上安裝web服務

#yum install httpd -y

分別爲兩個服務器編寫兩個網頁文件


3、安裝配置haproxy

haproxy的eth1與nodeOne和nodeboss處於同一本地網絡

安裝服務

#yum install haproxy -y

編輯配置文件

wKiom1Qez2_x7WwPAAFjkEdf-xc169.jpg

wKiom1Qez7CS-5ZRAAEeygR3ZVY084.jpg


在文件/etc/rsyslog.conf添加如下內容

local2.* /var/log/haproxy.log


4、在瀏覽器中輸入:http://192.168.42.141,多次刷新觀察是否能夠輪詢;或者使用curl http://192.168.42.141命令查詢

wKiom1Qe0MbQSr9TAAGD6lLXpVI891.jpg


二、配置文件解讀

1、haproxy的配置

global setting:全局配置段

主要用於定義haproxy進程自身的工作特性

proxies:代理配置段

backend:後端服務器組

frontend:定義面向客戶的監聽地址和端口,以及關聯到後端服務器組

listen:組合方式直接定義frontend及相關的baskend的一種機制

defaults:定義默認配置,定義

2、支持那些調度算法:

    

roundrobin:wrr、支持慢啓動(slow start),dynamic,最多可以在後端支持4095個Server,可以爲每個Server定義權重

static-rr:wrr,靜態輪詢調度,不支持慢啓動,static,後端Server數量沒有限制

leastconn:wlc,dynamic

source:主要曾對需要保持回話的動態請求;建議用於基於TCP模式調度且不使用cookie插入模式使用,有hash-type參數決定氣味dunamic或這static相當於ipvs的sh,以及nginx的ip_hash

uri:主要對於緩存服務區;基於請求報文中的uri的左半部分(查詢條件之前的部分)或全部的uri進行調度,常用於backend server爲cache server的場景中;取決於hash-type參數數決定其爲dunamic或着static

url_params:常用於後端服務器需要對用戶進行認證的場景中,由hash-type參數數決定其爲dunamic或着static

hdr(<name>):根據用戶請求的報文中,制定的http首部的至進行調度

hdr(host):長用於實現將度itong一個虛擬主機的請求始終發往backend server

use_domain_only:在計算hash值時僅使用域名由hash-type參數數決定其爲dunamic或着static





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章