将虚拟服务器与 Apache 代理网关绑定

将虚拟服务器与 Apache 代理网关绑定

我遇到了两种情况。单独来看,它们运行良好,但组合在一起,系统将无法解析我的网站。我的测试环境的总体概述:Proxmox VE 服务器具有用于不同网站的多个 VM 和一个网关 VM,它将根据使用的域名将用户的连接重定向到不同的服务器。如果没有 Proxmox 中的 Bonding(balanced-rr),此 Apache 代理网关可以正常工作。但是,当我启用 Round Robin 时,用户无法访问网站。如果我绕过 Apache 代理网关并将端口 80 指向特定的内部 IP 地址,它就可以正常工作。Bonding 和网关之间的某些东西彼此不喜欢。

循环模式下的 Proxmox 服务器接口:

iface eth0 inet manual
iface eth1 inet manual
auto bond0
    iface bond0 inet manual
        slaves eth0 eth1
        bond_miimon 100
        bond_mode balance-rr
auto vmbr0
iface vmbr0 inet static
        address  192.168.1.4
        netmask  255.255.255.0
        gateway  192.168.1.1
        bridge_ports bond0
        bridge_stp off
        bridge_fd 0

显然,我的 Proxmox 服务器的 IP 地址是 192.168.1.4。我的网关服务器的 IP 地址是 192.168.1.2。

httpd.conf 文件如下所示:

<VirtualHost *:80>
DocumentRoot /var/www/wordpress.domain.me
ServerName wordpress.domain.me
ProxyRequests Off
<Proxy *>
  Order deny,allow
  Allow from all
</Proxy>
ProxyPass / http://192.168.1.61/
ProxyPassReverse / http://192.168.1.61/

<VirtualHost *:80>
DocumentRoot /var/www/wiki.domain.me
ServerName wiki.domain.me
ProxyRequests Off
<Proxy *>
  Order deny,allow
  Allow from all
</Proxy>
ProxyPass / http://192.168.1.62/
ProxyPassReverse / http://192.168.1.62/
</VirtualHost>

所以,我的问题是,为什么当我将 Proxmox 服务器设置为循环 (绑定两个网卡) 时,我无法像以前一样路由我的域。如果我将 Proxmox 上的两个网卡绑定到 active-backup,一切都会正常工作。同样,网关服务器是 Proxmox 服务器以及其他两个 Web 服务器内的虚拟机。

如果你想知道我为什么要这样做,那么我将继续解决这个问题。基本上,我在家里同时测试几个不同的项目。对我来说,测试和构建其中一些东西的最简单方法是在虚拟环境中。但是,在家里我只被赋予 1 个外部 IP 地址。当我向客户进行演示时,我希望子域正确指向另一台本地服务器,而不是使用端口 81、88、8080 等。

答案1

解决方案是,一旦 Proxmox 环境在配置绑定后恢复,网关机器就需要再次重新启动。虚拟机之间的速度从大约 75MB/s 跃升至约 140-165MB/s。硬件 NIC 确实会影响本地托管虚拟机的传输速率。数字再次获胜,耶。

相关内容