在虛擬機器之間共用靜態 IP

在虛擬機器之間共用靜態 IP

從現在開始,我使用apache2的vhost功能將多個網域綁定到一個公共靜態IP。

現在我正在設定一個具有 4 個 IP 的 XEN 主機和幾個虛擬機,其中兩個是純 Web 伺服器。 2個虛擬機器可以共用一個公網IP嗎?每個人都會在同一公用 IP 上擁有一組虛擬主機。

替代文字

編輯:好的,基於主機的重定向怎麼樣? 替代文字

答案1

如果您只關心服務 http,您很可能需要安裝軟體負載平衡器/反向代理,例如。 Xen 主機上的配置(再次——最有可能)看起來像

ListenHTTP
            Address xx.xx.xx.xx
            Port    80

            Service
                BackEnd
                    Address ip.of.webserver.1
                    Port    80
                End
                BackEnd
                    Address ip.of.webserver.2
                    Port    80
                End
            End
End

您還需要在 Xen 主機上設定轉送和 iptables 規則;它可能已經為此進行了設定。

答案2

如果兩台伺服器的 IP 相同,我認為您無法拆分發送到這兩台伺服器的請求?

為什麼需要將它們設定在同一個IP上?

不過圖表不錯

答案3

正如 Radius 和其他人所說,我不認為僅僅通過為伺服器提供相同的 IP(它們會抱怨重複的位址,其中一個最終將沒有 IP)或相同的輔助 IP 就可以做到這一點IP(如上所述,但更難排除故障)。

更好的選擇是循環 DNS,您可以將每個網路伺服器的 IP 新增至相同的「A」記錄,並且對該「A」記錄的查詢將每次傳回不同的位址,或傳回一個清單位址供您的客戶選擇。另一種選擇是在兩個網絡伺服器前面添加某種負載平衡應用程序,以將流量平等地路由到每個伺服器(或僅路由到一個伺服器,另一個作為故障轉移)您可以使用mod_proxy 使用另一個Apache 實例來執行此操作安裝。

您想要使用其中哪一個取決於您想要這樣做的原因 - 我們正在談論某種高可用性/叢集嗎?

答案4

根據您的編輯,您可以使用反向代理。阿帕奇可以做到這一點。英鎊是已經提到的另一個解決方案。

相關內容