超融合技術的基本特征之一就是其由一系列“積木”組成。然后這些相同的塊會被歸納到一定能力的集群,用于小規模工作負載的虛擬機使用。
但面對更具挑戰的應用程序和更大型的虛擬機又會如何?如何設計超融合架構以適應某個非常苛刻的應用程序?關鍵在于了解工作負載需求,并設計超融合技術方案來滿足這些負載。
我們查看虛擬機性能時,通常考慮的是下列四組資源:CPU、內存、磁盤和網絡。如果能夠將每臺虛擬機所需的資源匯總,就能提供所有虛擬機足夠的性能。以基本虛擬機為例,主機通常受限于某個單一資源。一般的經驗法則是,虛擬機宿主在其他資源利用率超過20%之前,先耗盡內存。更多的虛擬機會要求平衡不同類型的資源使用情況。舉例來說,分配更多內存給運行數據庫的虛擬機,能夠降低磁盤緩存操作,從而減少其對磁盤性能的需求。同樣還要記住,超融合基礎架構集群也會消耗資源。虛擬機所需的磁盤性能越高,存儲軟件的CPU時間也會消耗的更多,才能提供足夠的性能。存儲集群的增加,網絡流量開銷也會隨之增多。
優化超融合架構網絡性能
網絡性能通常最容易滿足。大多數超融合技術允許最低條件為千兆以太網(GbE),大部分支持萬兆以太網來承載虛擬機流量。挑戰在于當高性能虛擬機需要使用萬兆以太網適配器,同時也需要連接超融合存儲集群。這種情況下,虛擬機管理平臺的功能運作方式類似vMotion。如果知道關鍵虛擬機存在高性能網絡與存儲需求,確保超融合技術平臺能夠支持超過兩個萬兆以太網接口。使用額外的接口來隔離存儲與虛擬機流量,同時保障兩者性能。在vSphere上,結合分布式交換機與基于負載的網卡綁定使用,并啟用網絡I/O控制。
選型注意事項
大多超融合技術同樣有結點配置上限。結點被設計為向外擴展,而不是向上擴展,所以你可能無法在虛擬機管理平臺上運行超大型的虛擬機。通常來說,每個結點上限在2個CPU插槽、約40核與大概1TB內存在實踐中,最大虛擬機的消耗不能超過安裝資源的75%——需要留心虛擬機管理程序和存儲集群。如果這些計算資源還不足以支撐應用程序,那么引入超融合架構也無濟于事。但是,不同廠商的超融合應用程序最大內存上線不一樣,或者你也可以結合純軟件的超融合模型與高端物理硬件服務器來實現功能。很多應用程序專門針對向上擴展配置,但同樣也支持向外擴展架構。應用程序團隊管理擁有大量資源的單獨數據庫會比較容易。但應用程序也可以配合數據庫集群工作,可以將負載分配到多個較小的虛擬機上。每個虛擬機可以分配在單個超融合結點上。
利用存儲性能分層來優化虛擬機性能
對大多數組織,數據庫服務器是應用程序基礎設施的重要組成部分。這也是應用程序性所聚焦的地方,通常很難被拆分為更小部分。傳統數據庫性能受限于存儲數據的磁盤性能,這也是超融合設計中最為關注的部分。大部分超融合技術采用分層存儲——固態硬盤(SSD)用于最經常訪問的數據,傳統硬盤用于海量存儲。虛擬機最經常訪問的數據——通常被稱做存儲工作集——必須配置在高速層以獲得最佳存儲性能。如果工作集沒有配置在快速SSD層,虛擬機運行會非常緩慢。有時候某些非常大型的工作集會推動超融合架構平臺在性能層與海量存儲層都使用SSD。在存儲層使用SSD意味著應用程序在工作集大于性能層時,也不會有太多的性能影響。
超融合技術可能是安置挑戰性應用程序的絕佳平臺。只要留心,就能夠設計出承載大型應用程序的架構。如果應用程序能夠拆分到多個小型而不是單個大型虛擬機上,超融合基礎設施架構設計任務將會輕松很多。