Haproxy实现负载均衡

含义及理解:

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

2 . HAProxy 支持连接拒绝:因为维护一个连接的打开的开销是很低的,有时我们很需要限制攻击蠕虫(attack bots),也就是说限制它们的连接打开从而限制它们的危害。 这个已经为一个陷于小型DDoS攻击的网站开发了而且已经拯救了很多站点,这个优点也是其它负载均衡器没有的。

实验搭建:

server1 :haproxy :172.25.13.110
server2 :web1 :172.25.13.120
server3 :web2 :172.25.13.130

首先安装服务在server1

yum install haproxy -y
vim /etc/haproxy/haproxy.cfg

在这里插入图片描述

添加下面的内容:
在这里插入图片描述
后端服务器设置:
安装开启httpd服务并且设置共享页面。此处可以设置不同的共享内容,便于区分访问的后端真实服务器,明显的表现出负载均衡的效果。

测试: curl 172.25.13.110
发现实现反向代理以及负载均衡

[root@foundation13 images]# curl 172.25.13.110
server3
[root@foundation13 images]# curl 172.25.13.110
server2
[root@foundation13 images]# curl 172.25.13.110
server3

作为反向代理服务器,varnish将自己的端口伪装成所代理的后端服务器的端口,因此只能代理一种服务,但是haproxy可以同时代理多个服务。只需要设置不同的代理配置段。

配置文件中写入了监控页面,可以直接在web页面上监控后端服务状态:

访问:172.25.13.110:8080/status

在这里插入图片描述
haproxy 自带后端服务器的健康检查,当某一个后端服务器宕机之后,其会自动自动将其移除出轮询队列,并在监控页面显示异常:
关闭server3httpd服务,模拟异常:

再次使用客户端进行访问测试:只访问正常的后端服务器

[root@foundation13 images]# curl 172.25.13.110
server2
[root@foundation13 images]# curl 172.25.13.110
server2
[root@foundation13 images]# curl 172.25.13.110
server2

查看监控页面:异常后端服务被标红:

在这里插入图片描述
动静分离
根据实际情况可客户方访问请求,将不同类型的访问请求调转到不同的后端服务器。php请求交给php server处理,jsp请求交给tomcat处理,即业务上的应用请求分离,而haproxy完全可以利用acl匹配规则实现这一目的.

修改主机配置文件:

#设置接收请求的前端虚拟节点,Frontend可以增加规则直接指定具体使用后端的backend
frontend  main *:80   
    acl url_static       path_beg       -i  /images
    acl url_static       path_end       -i .jpg .gif .png .css .js   # 增加规则
    use_backend static          if url_static  
    default_backend             app   # 不同的条件对应不同的后端服务器

backend static    # 定义后端服务器
    server web1 172.25.13.120:80 check

backend app   # 定义后端服务器
    server web2 172.25.13.130:80 check

systemctl restart haproxy 重新启动服务

后端服务器设置:
当访问 http://172.25.13.110/images 时候,请求会被调转到 172.25.13.120 。需要在该主机中创建:/var/www/html/images 目录 ,提前在该目录中放置一张图片。

使用客户端访问 http://172.25.13.110/images 。访问指定的后端服务器 172.25.13.120

在这里插入图片描述

主要是根据不同的请求将其指定到不同后端服务器,这就是动静分离。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值