haproxy

1.安装haproxy(ubuntu server)

下载haproxy-1.7.9,并解压至home目录中(~/haproxy-1.7.9)

编译:make TARGET=Linux26 ARCH=x86_64 PREFIX=/usr/local/haproxy

target(OS内核版本)、arch(OS位数)、prefix(安装路径)一定要大写,linux2.6以上的版本,我们都选择Linux26,查看内核版本:uname -a

安装:sudo make install PREFIX=/usr/local/haproxy

完成后再/usr/local/haproxy目录下生成以下目录:


2.haproxy配置

创建配置文件/etc/haproxy/haproxy.cfg

global
    log               /dev/log              local1                     #[日志输出配置,所有日志都记录在本机,通过local0输出]
    log               /dev/log              local2              notice #定义haproxy 日志级别[error warringinfo debug]
    daemon                                                             #以后台形式运行harpoxy
    nbproc            1                                                #设置进程数量
    pidfile           /usr/local/haproxy/haproxy.pid
    user              haproxy
    group             haproxy
   maxconn           4096                                             #默认最大连接数,需考虑ulimit-n限制
    #chroot            /usr/local/haproxy

defaults
    log               global
    mode              tcp                                              #默认的模式(tcp|http|health),tcp是4层,http是7层,health只会返回OK
    option            tcplog                                           #日志级别
    option            dontlognull                                      #不记录健康检查日志信息
    option            abortonclose                                     #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接
    option            redispatch                                       #serverId对应的服务器挂掉后,强制定向到其他健康的机器
    retries           3                                                #连接3次失败就认为是服务不可用
    timeout           connect                5000ms                    #连接超时
    timeout           client                 30000ms                   #客户端超时
    timeout           server                 30000ms                   #服务器超时
    timeout           check                  3000                      #心跳检测超时

listen admin_stats
    bind              *:8060                                           #设置监听的IP地址和端口
    mode              http                                             #http的7层模式
    option            httplog                                          #采用http日志格式
    maxconn           10                                               #默认的最大连接数
    stats             refresh                30s                       #统计页面自动刷新时间
    stats             uri                    /stats                    #统计页面url
    stats             realm                  Haproxy Manager           #统计页面密码框上提示文本
    stats             auth                   admin:admin               #设置监控页面的用户和密码,可以设置多个
    stats             auth                   root:Password@1           #设置监控页面的用户和密码
    stats             hide-version                                     #隐藏统计页面上HAProxy的版本信息
    stats             admin if TRUE                                    #设置手工启动/禁用,后端服务器

listen mysql_rcw_7706
    bind              *:7706
    mode              tcp
    option            tcplog
    balance           roundrobin
    option            tcp-check
    maxconn           2000
    log               /dev/log               local1               info
    server            mysql61 192.168.56.103:7002 maxconn 1024 check inter 2000 rise 2 fall 3
    server            mysql62 192.168.56.104:7002 maxconn 1024 check inter 2000 rise 2 fall 3

listen mysql_rcr_7707
    bind              *:7707
    mode              tcp
    option            tcplog
    balance           roundrobin
    option            tcp-check
    maxconn           2000
    log               /dev/log               local1               info
    server            mysql61 192.168.56.103:7001 maxconn 1024 check inter 2000 rise 2 fall 3
    server            mysql62 192.168.56.104:7001 maxconn 1024 check inter 2000 rise 2 fall 3


3.log配置

在/etc/rsyslog.conf文件中添加:

#haproxy

local1.* /var/log/haproxy.log

local2.* /var/log/haproxy/log

在/etc/rsyslog.d/50-default.conf文件中找到 -/var/log/syslog行,在其前面key的末尾追加:

;local1.none;local2.none(注意分号表示local1、local2设备的日志信息不再记录于/var/log/syslog里)

local1.* -/var/log/haproxy.log

local2.* -/var/log/haproxy.log

然后重启rsyslog服务:sudo service rsyslog restart


4.启动/停止

启动:/usr/local/haproxy/sbin/haproxy -f /etc/haproxy/haproxy.cfg

#!/bin/sh 

HOME=/usr/local/haproxy
DAEMON=$HOME/sbin/haproxy
CONFIG=/etc/haproxy/haproxy.cfg
DAEMON_ARGS="-f $CONFIG"
DESC="HAProxy Daemon"

echo "Starting $DESC, and use conf $DAEMON_ARGS"

$DAEMON $DAEMON_ARGS

停止:杀掉pidfile中的进程

#!/bin/sh 

DESC="HAProxy Daemon"
PIDFILE=/usr/local/haproxy/haproxy.pid

if test $PIDFILE
 then
   echo  "Stopping $DESC"
   if kill $(cat $PIDFILE)
   then
     echo "Stop OK"
   else
     echo "Stop Failed"
   fi
 else
   echo  "No $DESC running"
 fi

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值