Haproxy的详细安装配置及注意事项

时间:2021-01-25 14:59:32

                            Haproxy的安装配置

1:下载最新的haproxy文件 如haproxy-1.7.01.tar.gz

2:上传到linux系统中

3:解压缩 tar -zxvf haproxy-1.7.01.tar.gz

4:cd haproxy

5:安装haproxy

                     makeTARGET=linux26 PREFIX=/usr/local/haprpxy

              makeinstall PREFIX=/usr/local/haproxy

6:安装完毕后进入安装目录创建配置文件

                            cd/usr/local/haproxy

编辑配置文vim haproxy.cfg配置内容如下

global
log 127.0.0.1 local0
#log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 4096
chroot /usr/local/haproxy
uid 99 #所属运行的用户uid
gid 99 #所属运行的用户组
daemon
nbproc 1
pidfile /usr/local/haproxy/logs/haproxy.pid
#debug
#quiet

defaults
log global
log 127.0.0.1 local3 #日志文件的输出定向
mode http #所处理的类别
option httplog #日志类别
option httpclose
option dontlognull
option forwardfor
option redispatch
retries 2 #设置多个haproxy并发进程提高性能
maxconn 2000
balance roundrobin #负载均衡算法
stats uri /haproxy-stats #haproxy 监控页面的访问地址
# 可通过 http://虚拟机ip:8081/haproxy-stats 访问对应下面的8081运行的端口
#contimeout 5000

timeoutconnect 5000
#clitimeout 50000

timeoutclient 50000
#srvtimeout 50000

timeoutserver 50000

listenapp

bind 0.0.0.0:8081 #运行的端口及主机名
mode http
option httpchk GET /index.htm #健康检测
server s1 127.0.0.1:3121 weight 3 check #后端的主机 IP &权衡
server s2 127.0.0.1:3122 weight 3 check #后端的主机 IP &权衡

7:启动服务

                   /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg

8:重启服务(注意:不要换行哟)

              /usr/local/haproxy/sbin/haproxy -f/usr/local/haproxy/haproxy.cfg -st `cat /usr/local/haproxy/logs/haproxy.pid`

9:停止服务

              killall haproxy

10:为了便于启动停止重启,配置脚本文件

                     编辑脚本文件vim /etc/rc.d/init.d/haproxy内容如下

#! /bin/sh
set -e
#chkconfig: 2345 10 90

#description:haproxy ....
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/haproxy/sbin
PROGDIR=/usr/local/haproxy
PROGNAME=haproxy
DAEMON=$PROGDIR/sbin/$PROGNAME
CONFIG=$PROGDIR/$PROGNAME.cfg
PIDFILE=$PROGDIR/logs/$PROGNAME.pid
DESC="HAProxy daemon"
SCRIPTNAME=/etc/init.d/$PROGNAME

# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0

start()
{
echo -n "Starting $DESC: $PROGNAME"
$DAEMON -f $CONFIG
echo "."
}

stop()
{
echo -n "Stopping $DESC: $PROGNAME"
haproxy_pid=$( cat $PIDFILE)
kill $haproxy_pid
echo "."
}

restart()
{
echo -n "Restarting $DESC: $PROGNAME"
$DAEMON -f $CONFIG -p $PIDFILE -sf $(cat $PIDFILE)
echo "."
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2
exit 1
;;
esac 
exit 0

11:保存后赋予可执行权限chmod +x /etc/rc.d/init.d/haproxy

12:可以使用 service haproxy start|stop|restart 来控制服务的启动停止跟重启。

13:将命令加载到开机启动项目中chkconfig --add haproxy

14:配置日志

              编辑脚本# vim/etc/syslog.conf

              在最下边增加
              local3.*/var/log/haproxy.log
              local0.*/var/log/haproxy.log

15:重启核心日志服务使配置起效
              # service syslog restart

              然后就可查看日志了
              # tail –f/var/log/harpoxy.log