HAProxy编译安装

CentOS 编译安装HAProxy

  • haproxy-2.0.11
#编译组件以及依赖准备
yum install libtermcap-devel ncurses-devel libevent-devel readline-devel gcc gcc-c++ glibc  glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel net-tools iotop zip  unzip  zlib-devel screen lsof wget  ntpdate  -y;

# lua 依赖包准备
cd /data ;
wget http://www.lua.org/ftp/lua-5.3.5.tar.gz ;
tar xf lua-5.3.5.tar.gz ;
cd  lua-5.3.5;
make linux test ;

#解压编译HAProxy
cd /data ;
wget http://www.haproxy.org/download/2.0/src/haproxy-2.0.11.tar.gz ;
tar xf haproxy-2.0.11.tar.gz ;
cd haproxy-2.0.11/;
make ARCH=x86_64 TARGET=linux-glibc USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1 USE_SYSTEMD=1 USE_CPU_AFFINITY=1 USE_LUA=1 LUA_INC=/data/lua-5.3.5/src/ LUA_LIB=/data/lua-5.3.5/src/ PREFIX=/data/haproxy;
make install PREFIX=/data/haproxy;

#编写启动文件
vim /usr/lib/systemd/system/haproxy.service

[Unit]
Description=HAProxy Load Balancer
After=syslog.target network.target
[Service]
ExecStartPre=/data/haproxy/sbin/haproxy -f /data/haproxy/conf/haproxy.cfg -c -q
ExecStart=/data/haproxy/sbin/haproxy -Ws -f /data/haproxy/conf/haproxy.cfg -p /data/haproxy/pid/haproxy.pid
ExecReload=/bin/kill -USR2 $MAINPID
[Install]
WantedBy=multi-user.target

#保存后更新
systemctl daemon-reload ;

# 编写配置haproxy.cfg文件
mkdir /data/conf;
mkdir /data/pid;
vim /data/haproxy/conf/haproxy.cfg;

global
maxconn 100000
chroot /data/haproxy
stats socket /data/haproxy/pid/haproxy.sock mode 600 level admin
uid 99
gid 99
daemon
#nbproc 4
#cpu-map 1 0
#cpu-map 2 1
#cpu-map 3 2
#cpu-map 4 3
pidfile /data/haproxy/pid/haproxy.pid
log 127.0.0.1 local3 info
defaults
option http-keep-alive
option forwardfor
maxconn 100000
mode http
timeout connect 300000ms
timeout client 300000ms
timeout server 300000ms
listen stats
 mode http
bind 0.0.0.0:9999
 stats enable
 log global
 stats uri     /haproxy-status
 stats auth   haadmin:q1w2e3r4ys
 listen web_port
 bind 192.168.47.134:80
 mode http
 log global
server web1 192.168.47.125:80 check inter 3000 fall 2 rise 5
server web2 192.168.47.133:80 check inter 3000 fall 2 rise 5

# 保存后给pid文件夹创建pid的权限
chown 99.99 /data/haproxy/pid

#负载均衡服务器下载并启动web服务
192.168.47.125/192.168.47.133
yum install httpd -y 
systemctl start httpd


# 启动
systemctl start haproxy.service

# 默认轮询。浏览器访问当前主机ip轮询调度web1,web2 

# 最终目录结构大概
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值