是否可以使用 HAproxy 对同一台服务器上的多个网站进行负载平衡?我们已经为一个网站配置了负载平衡,现在我们想在同一台服务器上添加另一个网站。如果可以的话,请帮我举一些例子。
谢谢,
桑托什
答案1
没问题。请记住,HAProxy 只是转发连接,并不关心 URL 是什么(除非您已设置按 URL 过滤的规则)。
Apache(或您正在使用的任何 Web 服务器)必须配置虚拟主机。您要使用的每个域名都应该有不同的虚拟主机。
标准 HAProxy 配置将对所有请求进行负载平衡,无论 URL 如何,例如:
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
maxconn 4096
daemon
defaults
log global
mode http
option httplog
option dontlognull
retries 3
redispatch
contimeout 5000
clitimeout 50000
srvtimeout 80000
listen http_proxy HAPROXY_SERVER_IP:80
mode http
balance roundrobin
option httpclose
option forwardfor
cookie SERVERID insert indirect nocache
server web01 WEBSERVER1_IP:80 cookie web01 check
server web02 WEBSERVER2_IP:80 cookie web02 check
在 Apache 中设置虚拟主机是一项非常常见的任务,如果您不确定,可以通过快速 Google 搜索轻松找到一些相关信息。