云計算是當今計算機技術領域非常熱門的主題,各個企業都對該項技術產生了濃厚的興趣,尤其是大量的互聯網應用企業已經通過部署云計算而直接受益。而針對企業內部計算資源重組優化的私有云也在悄悄興起。
云平臺搭建的核心,就是將現有的資源進行整合,而這個核心的技術手段就是虛擬化。隨著企業信息化的不斷快速發展企業當前的數據中心均存在整合復雜、IT平臺異構混亂、管理成本過大等情況由于虛擬化技術具有節省成本、節能降耗、便于管理、便于部署、便于標準化、服務器整合及最大化的利用率等諸多優勢,因而在最近幾年從備受關注快速進入到大規模實施階段。
在虛擬計劃實施之前我們通常都會根據現狀進行分析,制定完善的方案而典型的場景分為兩種:
第一種是原來企業中已經存在各種應用并在傳統的服務器環境中運行,為了進行資源整合,通常需要對現有運行數據進行收集和分析,用以確定未來的服務器硬件采購以及應用程序的部署和遷移策略,例如服務器采購什么類型的CPU,多大容量的內存每臺服務器上面運行多少個應用程序。這種場景經常可以通過一些工具采集一段時間的數據分析得到。
第二種場景相對復雜,就是企業要創建新的數據中心,采用全新的服務器和全新的應用系統,在這種場景下任何的工具都派不上用場,但是為了硬件的采購以及進行資源的分配,必須要有相應的評估手段否則各個應用系統都希望分配更多的系統資源。因此我們必須找到一種性能指標的計算方式,指導我們進行資源池容量的估算以及各個應用系統初始資源的分配。
一、兩個重要指標
目前業界常用的性能指標的分類還是非常多的,比如SPEC系列基準測試、TPC Benchmark系列測試、Linpack基準測試Oracle應用程序的基準測試等,那么怎樣選擇具有實際應用價值的指標呢?重要的選擇依據就是首先需要被業界所廣泛認可、可衡量、通用性強同時由于該指標指導服務器資源的分配,因此這項指標必須要有服務器廠家提供相應的數據供參考才可能有實際的意義。
我們可以看到,目前在服務器硬件出廠時,一般均會通過兩項重要的指標用來衡量服務的處理性能,一種是SAPS另外一種就是traps/sec (tpmC)。SAPS指標專用在基于SAP應用環境的性能估算相對專用性比較強。而tpmC相對更通用大家只要遵循TPC-C的標準即可以通過測試獲取相應的指標(tpmC)如果可以估算出應用的性能指標需求,就可以參照服務器的性能指標進行資源的分配。這兩種指標也是對于服務器提供廠商來講衡量服務器處理性能的重要參數。
1 .SAP系統硬件配置預估(Sizing)
SAP將硬件配置預估稱為“Sizing。Sizing的基本前提為:CPU利用度不超過70%,對話響應時間小于2秒并假定正確的客戶化配置、高質量的開發工作、以及良好的系統調優工作。SAP Sizing的結果主要考慮CPU‘內存和存儲容量。
SAP Sizing是一個循序漸進、逐步求精的過程。在一個項目過程中,往往需要多次進行sizing隨著項目的進行越來越多的細節被確定下來,SIZIng的結果也會越來越準確。
SAP采用SAPS作為CPU的衡量指標,該指標被所有主流硬件廠商接受。SAPS是SAP Application Performancestandard的簡稱。SAPS值為100意味著系統每小時可以處理2000個標準訂單條目。
2. tpmC
TPC-C單位為tpmC,tpm是transactions per minute的簡稱;C指TPC中的C基準程序。用于對系統在線事務處理能力進行評價,含義為每分鐘內系統處理新訂單的個數。主要針對的是服務器OLTP,主要模擬企業MIS、ERP系統來考驗服務器聯機業務處理能力。
通過以上的信息我們可以看出由于SAPS值特定使用在SAP程序的性能基準測試,不具備一定的通用性。而tpmC指標可以針對任何種類的應用程序,只需符合TPC-C的相應標準即可。因此我們選擇tpmC作為評估性能的主要關鍵指標,如果是SAP應用程序和非SAP應用混雜的環境,由于服務器廠商一般會同時出具這兩種指標,我們也可以進行相應的換算以供參考,供整體進行資源分配使用。
二、如何使用tpmC進行衡量
理論上來講,官方發布的tpmC必須經過標準的嚴格測試才能獲得,無論是從設備、應用或者是成本來說對于普通的用戶來講都是不可能完成的那我們怎樣把這個數值運用到我們的實際環境當中呢,為了實現這個目標,我們首先來分析一下標準的測試場景。
在實際的測試環境中tpmC代表的是系統的最大的持續性能它被定義為系統每分鐘可以處理多少個新訂單事務與此同時,系統還在處理其他4種事務類型(付款、交貨、訂單查詢、庫存查詢)。所有5個TPC-C事務都有某個限定的用戶響應時間要求每種事務處理90%的響應時間應小于或等于5秒庫存查詢的響應時間可以在20秒以內而且每種事務類型還會有相關的權重:tpmC的取值按有效TPC-C配置期間每分鐘處理的平均交易次數測量,至少要運行12分鐘。測試的具體業務模型參數見表1。
表1 tpmC測試指標與硬件的關聯度
業界根據這個場景總結出了一種tpmC的計算方式,可以采用估算的方法對目前的應用系統進行性能評估這里面主要包括了7部分內容:用戶數、每個用戶日業務交易量、高峰時段交易量所占比例、高峰時段時長、交易復雜性參數、未來發展冗余量值、設計CPU使用率這里面比較復雜的就是“交易復雜性參數”,它的定義為:交易或操作的復雜性參數(β):是指對比標準的tpmC交易,用戶應用系統每次操作的復雜性和大小可以折算成多少個標準的tpmC交易,而一個tpmC值的國際標準是指每分鐘完成5類事務處理各一次。必須要指出的是這個國際標準值僅僅是用在我們估算的時候這個數值和我們測試的場景沒有關系提供的估算方法也是按照這個原則進行的計算。
·應用系統tpmC(即每分鐘處理的交易量)需求估算方法:日業務交易總量{D}二用戶數(u) x每個用戶日業務交易量(t)*交易復雜性參數(β);
·峰值tpmC=日業務交易總量(D) x高峰時段交易量所占比例(a)高峰時段時長h)/60。
考慮未來業務發展冗余和CPU使用率后:應用系統數據庫服務器tpmC需求值二峰值tpmC * [1+未來發展冗余量值(f)/設計CPU利用率(c)。
表2 tpmC計算表格
三、實例說明
以下為某業務系統數據庫服務器的性能評估過程;
該業務系統設計總用戶數量為130個,不同類型的操作為4種典型場景分別為瀏覽、查詢、基礎數據變更和接口數據交互,由于部分用戶承擔多種業務角色執行這4種業務操作的用戶數量分別為100, 20, 20和60(特別需要注意的是此時的用戶數不一定代表人,而是和數據庫直接業務發生數據交互的服務器、工作站等)。
在需要進行用戶瀏覽的100個用戶中,每個用戶平均在一天發生960筆交易,大部分交易發生在正常上班的8小時內,在8小時內的交易量大概占到整天交易的80%。這些交易對于服務器來講全部為查詢操作,交易復雜性參數按照公式折算為400在未來的一年中,交易可能會有50%的增量為了保證服務器的高效、穩定運行,要求計算資源使用率不能超過80%。通過這些關鍵參數的輸入,得出“數據庫一用戶瀏覽”操作系統的tpmC值為24000。根據同樣的算法得出其他三種場景下服務器所需性能指標分別為120, 75, 525總計為24720。
為了驗證我們估算出來的數據與實際測試的偏差以衡量數據的準確性,我們針對該項目組織了性能壓力測試工作測試場景及結果如下:
1.硬件環境
硬件環境如表3.
表3 硬件環境
轉載請注明出處:拓步ERP資訊網http://m.hanmeixuan.com/
本文標題:量化性能——私有云搭建的關鍵(上)