Web-Server

在同一硬體上使用多個 VM 進行負載平衡是否有優勢?

  • April 13, 2012

一些同事建議在不同的虛擬機上使用多個 Web 伺服器 (IIS7) 的 Web 負載平衡架構,這些虛擬機都在相同的硬體上執行。

這是一個真正有利的設置嗎?所有機器都是 64 位的,所以記憶體定址應該不是問題。

我的看法是這樣的:通過虛擬化,您可以將一些處理資源沙箱化。您將 Web 伺服器分成獨立的單元;您可以在讓另一台伺服器接管的同時升級伺服器,並且可以在出現問題時重定向請求。

您可以對 VM 進行快照以從生產問題中回滾。

您可以更輕鬆地將虛擬機遷移到單獨的硬體上/如果您得到它,因此您可以將虛擬機移動到新機器上,而不是遷移裸機設置(配置全新的 Web 伺服器),或者如果您設置了“適當的”集群,您的虛擬機將處於一個很好的位置,可以直接投入生產,而不是從頭開始重新配置。

如果需要,您可以為 NIC 設置單獨的 VSwitch 以控制流量。

我認為它提供了更大的靈活性和選項,讓 VM 主機上的多台機器處理您的網站。

另一方面,如果您只有一個主機,則可能會遇到故障點問題。如果您至少有兩個 NIC,這有助於緩解它(例如,您可以將 NIC 專用於特定 VM,具體取決於您的需要和設置),並且根據您的主機配置,一些問題會更加明顯。例如,如果您的磁碟容量不是最佳的,那麼您將因 I/O 爭用而降低性能,並且您的處理器當然將不得不在 VM 之間分配資源。

對我來說,虛擬化的真正優勢在於更容易管理和遷移路徑。我認為從機器中抽像出硬體要容易得多,然後當購買更好/更大/更快的東西時,您可以將已建立的工作設置遷移到該硬體,從而減少停機時間和配置麻煩。或者您可以平衡主機之間的機器。在我們的情況下,如果我們有問題,仍然有可能,如果我們絕對必須這樣做,則在工作站上將伺服器作為 VM 執行,直到在臨時設置中使用虛擬機管理程序為我們的主機伺服器提供修復元件,而無需使用者真的注意到了不同。

快照(在我們的案例中)非常適合確保更新不會在重新啟動時將我們的系統變成鎮紙。如果一切順利,快照、更新(或更改配置)、重新啟動、測試和刪除快照。

那麼這有意義嗎?如果您的網站流量很大,也許不會,因為您將有 I/O 爭用。如果您的網站負載較少,並且您認為將來會獲得另一台主機,我會強烈考慮。我認為虛擬化的抽像有助於隨著時間的推移更容易添加機器和更改配置,但如果你對性能造成傷害,那麼虛擬化產生的成本可能會受到一點傷害。

引用自:https://serverfault.com/questions/379236