HAProxy的安装

来源:互联网 发布:腾讯云数据库问题 编辑:程序博客网 时间:2024/06/05 04:20

HAProxy官方网站: http://haproxy.1wt.eu

HAProxy 中文网站 http://cn.haproxy.org/

在上边说的网站上边找到并下载HAProxy的源码包。这里以1.3.20版本,安装在目录/home/admin/haproxy为例

1.解压下载的源码包

  tar -xzvfhaproxy-1.3.20.tar.gz

2.编译安装

  进入解压后的源码目录

  makeTARGET=linux26 PREFIX=/home/admin/haproxy install

  (注意,TARGET后面根据本机操作系统内核版本来填写,PREFIX是要安装到的目录)

  安装完成后会在安装目录下生成doc ,sbin ,share三个文件夹。解压的源码文件也可以删除掉。

3.创建配置文件

在安装目录下建立配置文件目录

mkdir conf

在新创建的目录下创建配置文件

vi haproxy.cfg

在创建的haproxy.cfg文件中填入

global 

log 127.0.0.1local0 info #[err warning info debug]
maxconn 4096
user admin
group admin
daemon
nbproc 1
pidfile /home/admin/haproxy/logs/haproxy.pid
defaults

maxconn 2000

contimeout 5000

clitimeout 30000

srvtimeout 30000

listen admin_stats

bind 0.0.0.0:1080

mode http

log 127.0.0.1 local0 err

stats uri /admin?stats

这个配置是能让HAProxy工作起来的最小配置

4.启动HAProxy

进入安装目录下的sbin目录

启动HAProxy

./haproxy -f ../conf/haproxy.cfg

通过浏览器访问“http://xxx.xxx.xxx.xxx:1080/admin?stats“(xxx为IP),看到管理页面

5.修改haproxy启动文件权限

(如果你是用ROOT用户启动HAProxy,这步可以省略,这个步骤是为了能让非ROOT用户也能通过HAProxy监听80端口,因为LIUNX的80端口一定要使用ROOT账户启动)

使用root账户进入sbin目录

更改haproxy的所有者为root

chown root:root haproxy

给haproxy增加S权限

chmod u+s haproxy

6.配置日志

创建日志目录

使用非root账户这里是admin账户创建日志文件

mkdir /home/admin/haproxy/logs

修改操作系统的日志配置

HAProxy可以收集本机及其他后端服务器日志,但是需要在HAProxy和操作系统上作一些配置。

使用root账户首先修改/etc/sysconfig/syslog文件,将SYSLOGD_OPTIONS="-m 0” 修改为SYSLOGD_OPTIONS="-m 0 -r-x",支持收集远程服务器日志。

然后修改/etc/syslog.conf,增加如下语句:

local0.* /home/admin/haproxy/logs/haproxy.log //haproxy.log地址代表了需要存储日志的地址,其中local0这个级别要和haproxy.cfg配置的log级别一样

执行servicesyslog restart,重新启动系统日志器

更改日志文件用户

chown admin:admin /home/admin/haproxy/logs/haproxy.log

7.创建启动/停止脚本(如果你认为现在的启动脚本已经够方便了,这步可以省略)

为了方便以后启动或停止,所以编写一个启动脚本

在sbin目录下创建hactl.sh

vi hactl.sh

填入一下内容

#!/bin/sh# 

cd `dirname $0`/..

BASE_DIR="`pwd`"

ARGV="$@"

start()

{

echo "START HAPoxy SERVERS"

$BASE_DIR/sbin/haproxy -f $BASE_DIR/conf/haproxy.cfg

}

stop()

#haproxy.pid的路径是haproxy.cfg文件中配置的

echo "STOP HAPoxy Listen"

kill -TTOU $(cat $BASE_DIR/logs/haproxy.pid)

echo "STOP HAPoxy process"

kill -USR1 $(cat $BASE_DIR/logs/haproxy.pid)

}

case $ARGV in

start)

start

ERROR=$?

;; 

stop)

stop

ERROR=$?

;; 

restart)

stop

start

ERROR=$?

;; 

*) 

echo "hactl.sh [start|restart|stop]"

esac

exit $ERROR

保存后,给hactl.sh增加可执行权限

chmod 755 hactl.sh

这样就可以使用./hactl.sh [start|restart|stop] 的方式启动,关闭,重启了,如果你使用的目录和例子中不一样的话,需要自己对应的修改下以上脚本的目录地址

经过以上1-6步骤以后HAProxy的安装已经结束,之后就是详细的配置下haproxy.cfg文件了


原创粉丝点击