分别把lua安装于/usr/local/lua,haproxy安装于/usr/local/haproxy
lua最新版地址:http://www.lua.org/ftp/
haproxy2.0地址:https://www.haproxy.org/download/2.0/src/
我们分别下载最新的lua的lua-5.3.5.tar.gz和haproxy-2.0.8.tar.gz

wget http://www.lua.org/ftp/lua-5.3.5.tar.gz
wget https://www.haproxy.org/download/2.0/src/haproxy-2.0.8.tar.gz

安装支持组件并创建haproxy组和用户

yum install readline-devel gcc systemd-devel wget openssl openssl-devel -y
groupadd haproxy
useradd -g haproxy haproxy -s /sbin/nologin

安装lua

tar zxvf lua-5.3.5.tar.gz
cd lua-5.3.5
make linux
make install INSTALL_TOP=/usr/local/lua

接下来安装haproxy

cd ..
tar zxvf haproxy-2.0.8.tar.gz
cd haproxy-2.0.8
make -j $(nproc) TARGET=linux-glibc USE_OPENSSL=1 USE_ZLIB=1 USE_LUA=1 LUA_LIB=/usr/local/lua/lib/ LUA_INC=/usr/local/lua/include/ USE_PCRE=1 USE_SYSTEMD=1 
make install PREFIX=/usr/local/haproxy

这样就完成了haproxy的安装编译
接下来写入配置文件
vi /usr/local/haproxy/haproxy.cfg

global
#全局设置
        daemon
        #以后台进程运行
        user haproxy
        #运行于haproxy用户
        group haproxy
        #运行于haproxy组
        maxconn 3500
        #每个进程的最大连接数
        nbproc 1
        #进程数,该值可以设置小于或等于cpu核心数
        #balance roundrobin
        #默认的负载均衡的方式,轮询方式 
        #balance source
        #默认的负载均衡的方式,类似nginx的ip_hash 
        #balance leastconn
        #默认的负载均衡的方式,最小连接 
defaults
#默认设置
        mode http
        #设置http(七层模式),也可设置为tcp(四层模式),另外还有一个Health健康监测模式。对mysql进行负载均衡的话,这里记得修改为tcp
        timeout connect 5000ms
        timeout client 50000ms
        timeout server 50000ms
listen admin_stats #配置haproxy管理页面
        bind *:9999
        #访问端口为9999
        mode http
        log global
        # 继承global中log的定义
        stats refresh 30s
        #自动刷新时间
        stats uri /stats
        #项目名为status,ip+端口+项目名即可访问
        stats auth admin:admin
        #配置管理用户账号密码
        stats realm Private lands
        # 设置统计页面认证时的提示内容
        stats admin if TRUE
        stats hide-version
        #隐藏统计页面上的haproxy版本信息    

增加权限

chown -R haproxy:haproxy /usr/local/haproxy
chmod -R 755 /usr/local/haproxy

现在可测试启动了

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

加入系统启动
vi /lib/systemd/system/haproxy.service

[Unit]
Description=Haproxy Service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg
ExecStop=cd&&/usr/local/haproxy/sbin/&&pkill haproxy
[Install]
WantedBy=multi-user.target

保存退出
创建软连

ln -s /lib/systemd/system/haproxy.service /etc/systemd/system/multi-user.target.wants/haproxy

载入启动

systemctl daemon-reload

启动haproxy

systemctl start haproxy

停止haproxy

systemctl stop haproxy

加入系统启动

systemctl enable haproxy

查看haproxy是否运行

ps -ef|grep haproxy

显示

haproxy   74886      1  0 07:59 ?        00:00:00 /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg
haproxy   74948      1  0 08:00 ?        00:00:00 /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg
root      74965  74037  0 08:03 pts/2    00:00:00 grep --color=auto haproxy

完成

分类: linux负载均衡 标签: 暂无标签

评论

暂无评论数据

暂无评论数据

目录