haproxy的配置教程

#haproxy1.7编译安装配置
#centos7 x86_64
#高可用、负载均衡 使用

1.#下载
#http://www.haproxy.org/download/1.7/src/haproxy-1.7.8.tar.gz
#cd /data/nfs/download
#yum install gcc gcc-c++ autoconf automake -y

2.查看linux内核
> uname -a
3.#安装haproxy
>Hadir=/opt/haproxy #安装目录
>mkdir -p $Hadir
>tar -axf haproxy-* && cd ./haproxy-*
>make TARGET=linux3100 ARCH=x86_64 PREFIX=$Hadir
>make install PREFIX=$Hadir
>$Hadir/sbin/haproxy -v

#增加用户
useradd -s /sbin/nologin -M haproxy
id haproxy

#内核优化
# #NAT转发
# sed -i 's@net.ipv4.ip_forward = 0@net.ipv4.ip_forward = 1@g' /etc/sysctl.conf
# grep ip_forward /etc/sysctl.conf
echo "net.ipv4.ip_nonlocal_bind = 1" >>/etc/sysctl.conf #允许没监听IP时启动
sysctl -p

#启动脚本配置
cp ./examples/haproxy.init $Hadir/haproxy
chmod 755 $Hadir/haproxy
sed -i '/^BIN=/cBIN='$Hadir'/sbin/$BASENAME' $Hadir/haproxy
sed -i '/^CFG=/cCFG='$Hadir'/$BASENAME.cfg' $Hadir/haproxy

#日志配置
sed -i 's/^#$ModLoad imudp/$ModLoad imudp/g' /etc/rsyslog.conf
sed -i 's/^#$UDPServerRun 514/$UDPServerRun 514/g' /etc/rsyslog.conf
echo 'local0.* /var/log/haproxy.log'>>/etc/rsyslog.conf #添加haproxy日志路径
systemctl restart rsyslog

#生成配置文件(实际配置文件,请看haproxy.cfg)
echo "

###########全局配置#########
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
daemon
#nbproc 1 #进程数量
maxconn 4096 #最大连接数
user haproxy #运行用户
group haproxy #运行组
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
########默认配置############
defaults
log global
mode http #默认模式{ tcp|http|health }
option httplog #日志类别,采用httplog
option dontlognull #不记录健康检查日志信息
retries 2 #2次连接失败不可用
option forwardfor #后端服务获得真实ip
option httpclose #请求完毕后主动关闭http通道
option abortonclose #服务器负载很高,自动结束比较久的链接
maxconn 4096 #最大连接数
timeout connect 5m #连接超时
timeout client 1m #客户端超时
timeout server 31m #服务器超时
timeout check 10s #心跳检测超时
balance roundrobin #负载均衡方式,轮询
########统计页面配置########
listen stats
bind 0.0.0.0:1080
mode http
option httplog
log 127.0.0.1 local0 err
stats refresh 30s
maxconn 10 #最大连接数
stats uri /admin #状态页面 http//ip:1080/admin访问
stats realm Haproxy\ Statistics
stats auth admin:admin #用户和密码:admin
stats hide-version #隐藏版本信息
stats admin if TRUE #设置手工启动/禁用
########设置haproxy 错误页面#####
#errorfile 403 /opt/haproxy/errorfiles/403.http
#errorfile 500 /opt/haproxy/errorfiles/500.http
#errorfile 502 /opt/haproxy/errorfiles/502.http
errorloc 503 https://www.baidu.com/
#errorfile 504 /opt/errorfiles/504.http
########frontend前端配置##############
frontend http_main
bind *:80
option forwardfor
acl web hdr(host) -i elven.win #acl规则,-i忽略大小写,访问*就触发web规则
use_backend web1 if web
acl web_kvm path_beg -i /kvm
use_backend kvm if web_kvm
default_backend web1 #不满足则响应的默认页面

########backend后端配置##############
backend web1 #www1作用域 service haproxy restart
cookie SERVERID
balance roundrobin
option httpchk HEAD /index.html HTTP/1.0
server web1 192.168.20.81:80 weight 1 check inter 2000 rise 2 fall 3
server web2 192.168.18.12:80 weight 1 check inter 2000 rise 2 fall 3
backend kvm
server kvm1 127.0.0.1:8000
">$Hadir/haproxy.cfg
chown -R haproxy:haproxy $Hadir/

#启动
/www/server/haproxy/haproxy start
netstat -antp|grep haproxy
ps -ef|grep haproxy

#添加自启动
ln -sf /www/server/haproxy/haproxy /etc/init.d/haproxy
chkconfig --add haproxy
chkconfig haproxy on
chkconfig --list haproxy
service haproxy restart


#查看监控

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值