Haproxy的配置及应用基础

一.概念

HAproxy:是免费急速且可靠的用于为tcp和基于http应用程序提高高可用负载均衡和代理服务的解决方案,尤其适用于高负载且需要持久连接或者七层处理机制的web站点。

功能:七层反向代理,四层负载均衡。

缓存的作用:

减少冗余内容的传输,节省带宽,缓解网络瓶颈,降低了对原始服务器的请求压力,降低了传输延迟。

haproxy用的数据结构是弹性二叉树。

目前有两个版本:1.4的主要弹性较好。1.3主要是内容交换

二.配置haproxy

1)安装

查看haproxy的安装包信息
[root@node1 ~]# yum info haproxy

安装haproxy
[root@node1 ~]# yum install haproxy -y

主配置文件路径:

/etc/haproxy/haproxy.cfg

全局配置段:
global配置代理相关的特性

代理配置段:

“defaults”段用于为所有其它配置段提供默认参数,这配置默认配置参数可由下一个“defaults”所重新设定。

“frontend”段用于定义一系列监听的套接字,这些套接字可接受客户端请求并与之建立连接。

“backend”段用于定义一系列“后端”服务器,代理将会将对应客户端的请求转发至这些服务器。

“listen”段通过关联“前端”和“后端”定义了一个完整的代理,通常只对TCP流量有用。

所有代理的名称只能使用大写字母、小写字母、数字、-(中线)、_(下划线)、.(点号)和:(冒号)。此外,ACL名称会区分字母大小写。

配置段的优先级:命令行参数,global,proxies

2)添加haproxy日志记录

1,haproxy配置文件中找到日志段:

log         127.0.0.1 local2

2,修改日志配置文件
[root@node1 haproxy]# vim /etc/rsyslog.conf

3,启用日志监听的端口:
# Provides UDP syslog reception

$ModLoad imudp

$UDPServerRun 514

4,添加日志记录位置:
local2.*                                              /var/log/haproxy.log

5,重启rsyslog之后,查看udp的514端口
[root@node1 haproxy]# service rsyslog restart
3)配置启动haproxy
frontend web *:80 //web为frontend的名称,*:80为代理监听的端口为80

default_backend             webserver

backend webserver

balance     roundrobin   //轮询的方式

server app1 172.16.249.164:80 check //app1标识名,check为健康检查

server app2 172.16.0.1:80 check

重启之后即可访问:
[root@node1 haproxy]# service haproxy restart

 


发表评论

登录 后发表评论.