haproxy常用配置项详解

HAProxy简介

HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。

GitHub、Bitbucket、Stack Overflow、Reddit、Tumblr、Twitter和 Tuenti在内的知名网站,及亚马逊网络服务系统都使用了HAProxy。

安装HAProxy (debian11为例)

curl https://haproxy.debian.net/bernat.debian.org.gpg \
| gpg --dearmor > /usr/share/keyrings/haproxy.debian.net.gpg
echo deb "[signed-by=/usr/share/keyrings/haproxy.debian.net.gpg]" \
http://haproxy.debian.net buster-backports-2.4 main \
> /etc/apt/sources.list.d/haproxy.list

apt-get update && apt-get install haproxy=2.4.\* -y && systemctl enable haproxy && cd /etc/haproxy && systemctl status haproxy

常用配置项解释

haproxy 的配置文件由两部分组成:全局设定和对代理的设定,共分为五段:global,defaults,frontend,backend,listen。

一个典型的配置内容如下:

global
    maxconn 204800
    daemon
    hard-stop-after 30s
defaults
    mode    tcp
    no log
    timeout connect 5s
    timeout client  50s
    timeout server  50s
    default-server init-addr none resolvers dns check inter 5000
listen status
    bind :2000
    mode http
    stats uri /
    stats enable # 启用状态统计报告
    stats auth admin:admin # 设置统计页面用户名和密码设置
    #stats refresh 30s # 统计页面自动刷新时间
    stats admin if TRUE #如果认证通过就做管理功能,可以管理后端的服务器
    stats realm “LOGIN” #登陆页面提示信息
resolvers dns
    nameserver dns 223.5.5.5:53
    parse-resolv-conf
listen TEST1
bind :13306
mode tcp
no log
balance source
option allbackups
server mysql1 192.168.0.102:3306
server mysql2 192.168.0.103:3306 backup

其他配置项

# 指定出口IP(适合多网卡多IP机器)
default-server init-addr none resolvers dns check inter 5000 source 192.168.0.111  # 指定出口网卡IP地址
#

莫问

我还没有学会写个人说明!

暂无评论

发表评论

您的电子邮件地址不会被公开,必填项已用*标注。

相关推荐

用iptables屏蔽端口

用iptables屏蔽端口25,防止被利用发垃圾邮件导致VPS被封。 1 查看已添加的iptables规则 iptables -L -n -v 2 用iptables屏蔽全部IP连接25端口 iptables -I FORWARD -p tcp --dport 25 -j DROP iptables -I FORWARD ...

网站服务器DDNS教程-shell脚本

直接上sh脚本,内容如下: [cc lang="bash"] #!/bin/bash # 修改这个部分 auth_email="abc@abc.xyz" ###登录邮箱 auth_key="abcxyzxxxxxxxxxxxxxxxxxxzzzz" # 在cloudflare账号设置下面找到 zone_name="abc.xyz" #域名 ...

为谷歌云GCP开启ssh远程root密码访问

如题,谷歌云默认不能直接使用root密码来进行ssh登陆,我们可以后台修改下,开启远程ssh来进行直接登陆管理。 1.首先选择通过浏览器打开命令行: 2. 在命令行执行以下命令; sudo -i passwd 修改root默认密码 3.修改S ...