当前位置:首页 > 资讯 > 正文

Haproxy简介 以及 负载均衡的实现

Haproxy简介 以及 负载均衡的实现

HAProxy是一个特别适用于高可用性环境的TCP/HTTP开源的反向代理和负载均衡软件。实现了一种事件驱动,单一进程模型,支持非常大的并发连接,是因为事件驱动模型有更好的资源和时间管理的用户端(user-space)实现这些业务

  • 7层负载均衡方面的功能很强大(支持cookie track, header rewrite等等)
  • 支持双机热备
  • 支持虚拟主机
  • 支持健康检查
  • 同时还提供直观的监控页面,可以清晰实时的监控服务集群的运行状况。
  • 同时支持Linux 2.6内核中System Epoll,通过简化系统调用,大幅的提高了网络I/O性能。
  1. 命令行参数,这是最优先的;
  2. global(全局)段,设置进程级参数;
  3. 代理配置段,通常位于default,listen,backend这样的形式内。
  4. 配置文件的语法是由关键字后跟可选的一个或者多个参数(参数之间有空格)组成。如果字符串中包含空格,必须用’’进行转义。
  1. global:全局配置参数,进程级的,用来控制Haproxy启动前的一些进程及系统设置
  2. defaults:配置一些默认的参数,可以被frontend,backend,listen段继承使用
  3. frontend:用来匹配接收客户所请求的域名,uri等,并针对不同的匹配,做不同的请求处理
  4. backend:定义后端服务器集群,以及对后端服务器的一些权重、队列、连接数等选项的设置,我将其理解为Nginx中的upstream块
  5. listen:可以理解为frontend和backend的组合体

Haproxy配置文件的配置方法主要有两种,一种是由前端(frontend)和后端(backend)配置块组成,前端和后端都可以有多个。第二种方法是只有一个listen配置块来同时实现前端和后端。最常用也是推荐的方法为第一种,即frontend和backend的模式。

此实验需要三台虚拟机:

主机名ip说明server1172.25.63.1反向代理务服务器server2172.25.63.2后端服务器(real server)server3172.25.63.3后端服务器(real server)

同时物理机(ip 172.25.63.250)作为客户端

安装haproxy

 

修改配置文件:
将不使用的 和模块注释掉,并加入模块:

 
 
 

server3与server2相同的操作

 

当关闭server2的服务时:

 
 
 
 
 

最新文章