本文將介紹動態集群的相關功能和使用場景,以及它們對性能的影響。
隨著業務規模的增長,現代企業的 IT 系統部署著越來越多的應用。 每個應用對計算資源有著不同的需求,並且在不同時間有不同的訪問量。 如何建立靈活的HTTP://www.aliyun.com/zixun/aggregation/13748.html">基礎架構,根據各個應用的需求來動態分配資源,有效提高資源利用率,是企業面臨的重大挑戰。
WebSphere Application Server V8.5 中整合了智慧管理(Intelligent Management)元件,該元件也就是以前版本中稱為 WebSphere Virtual Enterprise 或 WebSphere Extended Deployment 的產品。 它為中介軟體伺服器(WebSphere Application Server 或 Oracle WebLogic Server 等)提供了完整的應用基礎架構虛擬化平臺,使得企業能夠靈活、動態地適應業務需求的變化。
動態集群(Dynamic Cluster)是其中的重要功能。 它是一種虛擬化的集群技術,能根據請求負載的變化,在不同集群間自動進行資源配置,從而提高計算資源的利用率並改善應用的性能。 本文將介紹動態集群及相關功能的使用場景。
傳統應用基礎架構的局限性
在傳統的 IT 應用基礎架構中,為了減少單點故障並實現資源的高可用性,企業通常會將一組伺服器節點集中起來作為集群,將應用部署在集群上。 這種集群可以稱為靜態集群,因為它的規模是創建的時候就確定好的。 這種架構帶來了一個問題,就是很難找到合理的方式劃分每個集群的大小,利用有限的資源滿足全部應用需求。
通常情況下,每個應用對計算資源的需求,是隨著時間和訪問量的變化而變化的,各有各的忙閒時間。 我們考慮圖 1 所示的場景:資料中心裡劃分了三個集群,每個集群上部署的應用,在不同時間的訪問量有很大差異。 由於架構的限制,雖然資料中心的整體資源利用率並未飽和,但每個時間都有某個集群不堪重負,無法滿足全部應用的需求。 該問題的根本原因,不是計算資源不足,而是不同集群之間無法共用資源來取長補短,造成總體資源利用率低下。
圖 1. 傳統的資料中心
現代企業需要建立更靈活的基礎架構來解決這樣的問題。 動態集群就是為此而誕生的。
利用動態集群提高資源利用率和應用的性能
動態集群的工作原理和優勢
與傳統的靜態集群不同,動態集群是一種虛擬化的集群。 它允許使用者將一組伺服器節點組成一個稱為節點組(Node Group)的資源池。 使用者在資源池中創建動態集群並部署應用。 這種方式將應用與物理基礎架構完全分開,應用不再被固定部署到集群裡的某些節點上。 動態集群會根據應用的訪問情況,判斷它的資源需求,自動啟動(或停止)該集群中更多的伺服器來運行該應用,從而允許應用在資源池中動態放置並隨時遷移工作負載,適應業務需求。 通過這種不同集群間共用並自動分配資源的方式,動態集群能夠提高計算資源的利用率,從而改善應用的整體性能。
我們將上面場景中的資料中心重新構建,創建三個動態集群,如圖 2 所示。 它們會自動根據每個時刻各自的資源需求,來協調資源在各個節點組(資源池)中的分配,提高資源利用率。
圖 2. 用動態集群構建的資料中心