HAProxy 2.8配置范例

以下是一个基本的HAProxy 2.8配置范例,用于HTTP负载均衡。这个配置文件包括全局设置、默认设置以及前端和后端定义:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# 全局配置
global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin
stats timeout 30s
user haproxy
group haproxy
daemon

# 见证新的高级设置,例如多线程
nbthread 4

# 默认设置
defaults
log global
mode http
option httplog
option dontlognull
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
errorfile 400 /etc/haproxy/errors/400.http
errorfile 403 /etc/haproxy/errors/403.http
errorfile 404 /etc/haproxy/errors/404.http
errorfile 500 /etc/haproxy/errors/500.http
errorfile 502 /etc/haproxy/errors/502.http
errorfile 503 /etc/haproxy/errors/503.http
errorfile 504 /etc/haproxy/errors/504.http

# 前端配置
frontend http_front
bind *:80
stats uri /haproxy?stats
default_backend http_back

# 后端配置
backend http_back
balance roundrobin
server server1 192.168.1.1:80 check
server server2 192.168.1.2:80 check

配置解释

  1. 全局配置 (global):

    • 设置日志、用户、组、守护进程和线程数。
  2. 默认配置 (defaults):

    • 定义日志模式、超时和错误文件。
  3. 前端配置 (frontend):

    • 绑定到端口80,定义统计页面URI,并指定默认的后端。
  4. 后端配置 (backend):

    • 使用轮询算法进行负载均衡,并定义了两个后端服务器。

你可以根据需要修改IP地址、端口和其他参数,以适应你的具体需求。