我正在尝试解决我在本地网络上建立的简单演示。我有 2 个运行 Vagrant 的虚拟机:
A: 192.168.121.10
B: 192.168.121.11
在 A 上,通过 Docker 和 Apache Web-Server 运行一个 Jenkins 实例,只有一个简单的 index.html 页面。
对于机器 B,我正在尝试使用以下配置通过 Haproxy 公开它们:
global
log 127.0.0.1 local0 notice
maxconn 4096
daemon
defaults
log global
option httplog
option dontlognull
maxconn 20
mode http
timeout client 60s
timeout server 60s
frontend main
bind 192.168.121.11:9000
acl url_apache path_beg /apache
use_backend apache if url_apache
default_backend jenkins-mstr
backend jenkins-mstr
balance roundrobin
server jenkins01 192.168.121.10:8000 check
backend apache
reqrep ^([^\ ]*)\ /apache(.*) \1\ \2
server apache01 192.168.121.10:80 check
将此配置文件放入/etc/haproxy/haproxy.cfg
我重新启动HAProxy:systemctl restart haproxy
不幸的是,当连接到192.168.121.11:9000
我得到一个 503 并且当我连接到192.168.121.11:9000/apache
我得到一个 400 错误请求。
当然,web-server 和 Jenkins 实例都在机器 A 上完全运行,它们可以通过192.168.121.10:8000
和192.168.121.10:80
任何帮助都会非常有帮助。
谢谢 !