HAProxy安装

安装步骤:
1、下载上传解压

tar -xzf haproxy-1.7.2.tar.gz

2、编译并安装

make PREFIX=/iflytek/soft/haproxy TARGET=linux2628
make install PREFIX=/iflytek/soft/haproxy

PREFIX为指定的安装路径,TARGET则根据当前操作系统内核版本指定:

- linux22     for Linux 2.2
- linux24     for Linux 2.4 and above (default)
- linux24e    for Linux 2.4 with support for a working epoll (> 0.21)
- linux26     for Linux 2.6 and above
- linux2628   for Linux 2.6.28, 3.x, and above (enables splice and tproxy)

此例中,我们的操作系统内核版本为2.6.32,所以TARGET指定为linux2628

3、创建HAProxy配置文件

mkdir -p /iflytek/soft/haproxy/conf
vim /iflytek/soft/haproxy/conf/haproxy.cfg

先创建一个最简单的配置文件:

global #全局属性
     daemon  #以daemon方式在后台运行
         maxconn 256  #最大同时256连接
        pidfile /home/ha/haproxy/conf/haproxy.pid  #指定保存HAProxy进程号的文件

defaults #默认参数
        mode http  #http模式
    timeout connect 5000ms  #连接server端超时5s
        timeout client 50000ms  #客户端响应超时50s
        timeout server 50000ms  #server端响应超时50s

frontend http-in #前端服务http-in
        bind *:8080  #监听8080端口
        default_backend servers  #请求转发至名为"servers"的后端服务

backend servers #后端服务servers
        server server1 127.0.0.1:8000 maxconn 32  #backend servers中只有一个后端服务,名字叫server1,起在本机的8000端口,HAProxy同时最多向这个服务发起32个连接

4、启动

sbin/haproxy -f conf/haproxy.cfg  #启动

5、添加日志
HAProxy不会直接输出文件日志,所以我们要借助Linux的rsyslog来让HAProxy输出日志

5.1、修改haproxy.cfg的配置文件
在global域和defaults域中添加:

global
        ...
        log 127.0.0.1 local0 info
        log 127.0.0.1 local1 warning
        ...

    defaults
    ...
        log global
    ...

意思是将info级(及以上)的日志推送到rsyslog的local0接口,将warn级(及以上)的日志推送到rsyslog的local1接口,并且所有frontend都默认使用global中的日志配置。
注:info级的日志会打印HAProxy处理的每一条请求,会占用很大的磁盘空间,在生产环境中,建议将日志级别调整为notice

5.2、为rsyslog添加haproxy日志的配置

vim /etc/rsyslog.d/haproxy.conf
$ModLoad imudp 
$UDPServerRun 514 
$FileCreateMode 0644 #日志文件的权限 
$FileOwner ha #日志文件的owner 
local0.* /var/log/haproxy.log #local0接口对应的日志输出文件 
local1.* /var/log/haproxy_warn.log #local1接口对应的日志输出文件

5.3、修改rsyslog的启动参数
vi /etc/sysconfig/rsyslog

 # Options for rsyslogd
 # Syslogd options are deprecated since rsyslog v3.
 # If you want to use them, switch to compatibility mode 2 by "-c 2"
 # See rsyslogd(8) for more details
 SYSLOGD_OPTIONS="-c 2 -r -m 0"

5.4、重启rsyslog和HAProxy

service rsyslog restart

然后重启HAProxy,此时就应该能在/var/log目录下看到haproxy的日志文件了

你可能感兴趣的:(HAProxy安装)