Sun Java Enterprise System 2005Q4 部署規劃指南

可用性策略

Java Enterprise System 部署的可用性策略包括下列項目:

下列章節提供數個可用性解決方案的範例,這些解決方案會提供數個層級的負載平衡、容錯移轉和複製服務。

單一伺服器系統

將所有服務的計算資源放置在單一伺服器上。如果伺服器發生錯誤,則整個服務會失敗。

圖 5–2 單一伺服器系統

顯示使用 10 個 CPU 來滿足效能需求的單一伺服器。

Sun 提供可帶來以下利益的高階伺服器:

高階伺服器通常比相較的多伺服器系統花費更大。然而,單一伺服器提供管理上的節約、監視和控管資料中心內伺服器的成本。負載平衡、容錯移轉和單一失敗點的移除比多伺服器系統更有彈性。

水平備援系統

有數種方式可使用平行備援伺服器同時提供負載平衡和容錯移轉增加可用性。下圖說明兩個重複伺服器提供 N+1 容錯移轉系統。N+1 系統在一個伺服器發生故障時由另一個伺服器提供 100% 的容量。

圖 5–3 N+1 容錯移轉系統和兩個伺服器

顯示各使用 10 個 CPU 來滿足 10 個 CPU 效能需求的兩個重複伺服器。

上述水平備援系統中每個伺服器的計算能力是完全相同的。一個伺服器單獨處理效能需求。另一個伺服器在作為備援啟用時提供100% 的效能。

N+1 容錯移轉設計的優點是在容錯移轉情況下還能擁有 100% 的效能。缺點包括增加硬體成本而沒有獲得對應的整體效能 (因為有一個作為備用的伺服器,僅限在容錯移轉情況中使用)。

下圖說明一個實作負載平衡和容錯移轉的系統,它在兩個伺服器之間分配效能。

圖 5–4 兩個伺服器之間的負載平衡和容錯移轉

顯示各使用 6 個 CPU 來滿足 10 個 CPU 效能需求的兩個伺服器。

在以上水平備援系統所描述的系統中,如果一個伺服器發生故障,所有服務仍然可用,只是容量達不到完整容量而已。剩餘的伺服器提供 6 個 CPU 的計算能力,為 10 個 CPU 需求的 60%。

此設計的優點是當兩個伺服器都可用時將帶來額外的 2 個 CPU 的潛在容量。

下圖說明在一些伺服器之間的效能和負載平衡的分配。

圖 5–5 在 n 個伺服器之間分配負載

顯示分別使用 2 個 CPU 來滿足 10 個 CPU 效能需求的五個伺服器。

因為水平備援系統所描述的設計中有五個伺服器,如果一個伺服器發生故障, 剩餘伺服器合計可提供 8 個 CPU 的計算能力,為 10 個 CPU 效能需求的 80%。如果在設計中額外增加一個具有 2 個 CPU 容量的伺服器,實際上便實現了 N+1 設計。如果一個伺服器發生故障,剩餘的伺服器可滿足 100% 的效能需求。

本設計包含以下優點:

然而,使用額外的伺服器會明顯地增加管理和維護費用。您也必須考慮在資料中心中控管這些伺服器的成本。在某些時候您會遇到新增額外伺服器造成的利潤縮減。

Sun Cluster 軟體

在需要高度可用性的情況下 (像是四或五個「九」的可用性),可以考慮將 Sun Cluster 軟體作為可用性設計的一部份。叢集系統是備援伺服器、儲存裝置和其他網路資源的結合。叢集中的伺服器保持互相通訊。如果一個伺服器離線,叢集中剩餘的裝置會隔離該伺服器,並將任何應用程式或資料從錯誤節點故障轉移到其他節點。容錯移轉過程相對上會快速的完成,並且只對使用者的系統造成極小的服務中斷。

Sun Cluster 軟體需要額外的專用硬體和專門化技術來配置、管理和維護。