Windows-Server-2008

3 台伺服器的高可用性:虛擬化與否?

  • October 30, 2017

我們正在為我們的 SAAS 應用程序 (IIS+MSSQL) 更改主機,並有機會重新設計基礎架構。要麼堅持我們現有的(效果很好),要麼使用 vSphere 進行虛擬化。

目前的:

2x Web/DB 伺服器 每個都安裝了 IIS/MSSQL。Windows 網路負載平衡通過虛擬 IP 地址和 MSSQL 鏡像在 2 個節點之間分配流量,並為數據庫提供自動故障轉移。

1x MSSQL 見證伺服器(小型虛擬機)

如果一台伺服器出現故障,NLB 會將流量重新路由到另一個節點,並且 MSSQL 會自動進行故障轉移。NLB 重定向時可能有 40 秒的停機時間。

可能的:

2 個 vSphere 主機

  • 防火牆虛擬機 – 1 個 vCPU、512MB RAM、20GB 硬碟
  • Web 伺服器虛擬機 – 1 個 vCPU、2GB RAM、50GB HDD
  • 數據庫伺服器 VM – 2 個 vCPU、4GB RAM、100GB 硬碟

1x CentOS Linux SAN(安裝為 NFS 共享)

*對數據庫和網路來說,擔憂是沒有足夠的資源。目前,Web/DB 伺服器充分利用了節點,只有一個節點失敗時才需要共享一個節點。**如果 SAN 出現故障怎麼辦?*被告知虛擬機硬碟將駐留在主機本身上,而 SAN 充當冗餘儲存。我認為此解決方案使用 VMware 高可用性 - 數據庫的數據失去是不可接受的。是否應該有 2 台帶 MSSQL 鏡像但在不同主機節點上執行的 DB VM 機器?

編輯:虛擬化的優點是能夠複製機器,輕鬆遷移到新硬體,能夠分離出 DB/Web 伺服器。對此有何評論?

任何幫助將不勝感激!

使用 vSphere,SAN 成為(理論上,因為好的 SAN 具有內置冗餘)單點故障;但是如果您希望能夠在主機之間移動虛擬機,則需要將虛擬機磁碟放在那裡(主機上的本地儲存無法做到這一點)。

此外,您目前的解決方案可以保護您免受伺服器內部問題的影響:如果其中一個伺服器的作業系統損壞,另一台伺服器將保持線上;相反,如果您唯一的 DB VM 出現問題,您就會失去它。

我建議同時使用這兩種解決方案:用兩台主機建構一個虛擬化環境,然後在其中放置冗餘虛擬機,以便能夠在作業系統/應用程序級別處理故障。但是,如果您的硬體資源有限並且無法處理,那麼請堅持使用目前的解決方案。

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