HAProxy实现网站高并发集群

  • 时间:
  • 浏览:1
  • 来源:大发欢乐生肖APP下载_大发欢乐生肖APP官网

7

stop)

1

18

写另另有有4个 简单的haproxy服务脚本

http://192.168.1.10:150150/haproxy-status

    cookie SERVERID  

先了解下HAProxy常用的算法:

    nbproc 2      

    server web2 192.168.1.12:150 weight 2 check inter 1150 fall 3

    pidfile /var/run/haproxy.pid

拓扑图:

第三段:后端IP和端口

[root@localhost ~]

    stats uri /haproxy-status  

34

ri           #表示根据请求的URI

rl_param     #表示根据请求的URl参数'balance url_param' requires an URL parameter name

hdr(name)    #表示根据HTTP请求头来锁定每一次HTTP请求

rdp-cookie(name) #表示根据据cookie(name)来锁定并哈希每一次TCP请求

31

第四段:权重值,权重值越大,分配的任务几率越高

#查看服务器情况表

2

    retries 3          

    option httplog     

stop()

13

1

echo "Stopping Haproxy ..."

ARG=$*

    log global

32

19

    balance roundrobin         

19

PIDFILE=/var/run/haproxy.pid

28

[root@localhosthaproxy-1.4.24]

[root@localhost ~]

下载:http://haproxy.1wt.eu/

10

第二段:haproxy被委托人的另另有有4个 名称,将在日志中显示

    server web1 192.168.1.11:150 weight 3 check inter 1150 fall 3

{

#进入安装目录创建配置文件

    option forwardfor  

    mode http          

4

12

2

stop

11

14

3

27

安装haproxy

3

6

local0.*     /var/log/haproxy.log

[root@localhosthaproxy-1.4.24]

150

10

restart)

    contimeout 11500    

    option redispatch  

[root@localhost ~]

28

11

23

[root@localhost ~]

22

2

    stats refresh 150s          

}

1

3

local3.*     /var/log/haproxy.log

[root@localhost haproxy]

25

5

2

[root@localhost conf]

3

echo "Usage: start|stop|restart"

第五段:健康检测,inter 1150健康检测间隔是1150毫秒

#设置开机启动

5

37

;;

2

$DIR/sbin/haproxy -f $DIR/conf/haproxy.cfg

23

21

    stats hide-version         

[root@localhost ~]

[root@localhost ~]

配置如下:

8

配置haproxy日志输出

15

listen status 0.0.0.0:150150     

echo "Starting Haproxy ..."

25

global

    option httpchk GET /index.html 

启动haproxy

;;

38

20

    mode http                  

defaults

9

20

26

16

start

2

    maxconn 4096  

kill -9 $(cat $PIDFILE)

重启haproxy

listen web_server 0.0.0.0:150   

14

start)

21

1

{

9

后端web服务器配置相同

[root@localhost haproxy]

15

最后一段:检测有十几个 次,认为服务器是不可用的

13

简介:HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速或者可靠的某种外理方案。HAProxy不得劲适用于哪些地方地方负载特大的web站点,哪些地方地方站点通常又须要会话保持或七层外理。HAProxy运行在当前的硬件上,完整不需要 支持数以万计并发连接或者它的运行模式使得它不需要 很简单安全的整合进您当前的架构中,一块儿不需要 保护你的web服务器不被暴露到网络上。

    srvtimeout 115000   

[root@localhost ~]

1

    clitimeout 115000   

6

22

[root@localhosthaproxy-1.4.24]

;;

[root@localhost ~]

}

    timeout check 1150         

35

33

29

17

17

[root@localhost ~]

    stats auth admin:admin     

    log 127.0.0.1 local0  

*)

测试访问http://192.168.1.10,按F5老要刷新会显示轮训显示web1和web2,模拟web1故障down机,haproxy页面显示的情况表会变成DOWN,越来越web2提供服务,当web1恢复一定会自动加入集群中。

    daemon        

4

    gid 99        

4

start

16

case $ARG in

1

24

3

roundrobin   #表示简单的轮询,每个负载均衡器基本都具备的

static-rr    #表示根据权重

leastconn    #表示大概连接者先外理

source       #表示根据请求源IP, haprox按照客户端的IP地址所有请求都保持在另另有有4个 服务器上

12

    option httpclose   

    maxconn 2048       

36

24

27

stop

start()

项目需求:可能性网站规模的扩大,访问量的也很多,越来越 的一台机器提供网站服务,出现故障后就中断了网站服务,造成经济损失,现在老板发话要外理单点故障,于是给你找了些资料,对比了下Haproxy、LVS、Nginx,是各有各的优点,让你们的网站每天的PV有的是的是很大,就先在虚拟机上做了下测试,仅做Haproxy次责七层负载均衡,生产环境须要Haproxy+keepalived来实现负载均衡器高可用性。

26

4

说明:用server来设置后端服务器

7

18

    log 127.0.0.1 local3 err 

DIR=/usr/local/haproxy

8

[root@localhost ~]

    uid 99