雲端應用程式的經濟效益
CSP 從傳統部署吸引使用者時,遇到很大的難題。 公用 IaaS 雲端價格在啟動其服務之後,一直都是穩定且急速下降。 平均而言,針對大部分主要 CSP,從 2013 年以來,價格已經每年下滑 20-30%。
不過,儘管這些價格降低,仍然必須小心進行雲端採用。 若要真正獲得雲端的成本優勢,請務必了解、預算、規劃、監視和仔細分析使用量。 此外,針對個別使用案例要在 CSP 之間進行選擇並不容易,因為 CSP 無法包裝資源的標準方法,且它們不一定會遵循相同的定價模式。
定價模式
雲端提供者通常會根據下列三種參數類型的其中一種來收取資源的費用:
- 依據時間:資源會根據佈建給使用者的時間量來計費。 例如,您需支付每小時/每日/每月/每年的特定金額,讓虛擬機器在 IaaS 雲端上執行。 收費期間的細微性會因雲端提供者而異。 例如,Amazon 會以非按比例計費的方式,向使用者收取每小時費用。
- 依據容量:系統會根據使用或取用的特定資源量來向使用者收費。 這是雲端儲存體系統的熱門收費模式。 例如,在 Azure Blob 儲存體之類的雲端物件儲存體系統上,會向使用者收取一定金額的費用才能儲存 1 GB。
- 依據效能:在許多雲端提供者中,使用者可藉由支付較高的費率,為資源選取較高的效能層級。 針對虛擬機器,電腦更大、功能更強,具有更多 CPU、記憶體和磁碟容量,便可按照更高的每小時費率來佈建。
根據這些收費參數,CSP 會使用下列其中一種常見的定價模式:
- 隨選和隨用隨付定價:這通常是長期使用的最昂貴計價模式。 付款是針對非常短的使用期間 (通常以分鐘或小時來計量)。 其優點是不需要長期合約,因此根據目前的需求,可非常有彈性地進行縮減和擴充。 雖然不常見,但 CSP 可能會在高需求期間提高成本,並在低需求期間降低。 這是服務提供者的絕佳模型,針對剛開始使用雲端的雲端使用者也是如此。
- 保留執行個體和以訂用帳戶為基礎的計價:使用者可選擇預付並將資源保留一段很長的時間 (幾週或幾個月),而不是支付每小時或每分鐘的費率。 這通常能有高額減價 (20-50%),但需要長期的承諾用量。 在保留的定價模式中,付款方案可能有不同,從預付到依合約強迫定期付款。
- Spot 定價:「Spot 定價」是讓 CSP 能處理過多未運用容量的方式,用比隨選資源低許多的價格提供以進行銷售。 價格是由使用者拍賣所決定,其中使用者會以其願意為資源支付的最高金額進行出價。 最大的缺點是,如果 Spot 價格高於實際的出價價格,則可能會隨時終止資源。 對於可執行推測式運算的短期、非關鍵作業而言,Spot 資源相當理想。
一般來說,應該使用保留執行個體來滿足系統的基本需求。 如果應用程式需要 2 個執行個體 80% 的時間、3 個執行個體 15% 的時間,以及 4 個執行個體 5% 的時間,您通常會在應用程式的存留期保留 2 個執行個體,並使用隨選或 Spot 執行個體進行擴增。 如前所述,只有在應用程式是業務關鍵,或是隨選價格與目前 Spot 價格之間差異能以突然終止的風險抵消時,才應該在擴增時選擇隨選執行個體。 這個決策通常是針對商務案例而定。
如何使成本使用率最佳化
若要以符合成本效益的方式使用雲端,企業必須開發成熟的流程來選擇要部署、監視和視覺化使用量的資源,也要開發明確的機制來識別浪費並讓使用率最佳化。
圖 11:成本最佳化流程
在考慮成本需求之前,組織必須根據固定資源 (例如員工數量),規劃在指定期間內能夠完成的工作量,同時處理庫存管理之類的實體限制、因為運輸而起的額外負荷、物料處理等。IT 資源佈建必須設計成滿足或超過組織的實體容量。 這非常重要,因為雲端所提供的彈性會誘使開發小組只視需要新增資源,而不考慮其決策的成本影響。
嘗試降低雲端支出的第一個步驟,就是讓資源類型與應用程式的實際需求相符合。 這可能表示在具有不同記憶體設定或核心數目的 VM 之間進行選擇。 除了測試並對不同資源類型的應用程式進行效能評定以外,沒有簡單的方法可執行此動作。
即使應用程式在較昂貴的資源類別上執行效能更好,但請務必確認效能改善是否與成本增加成正比。 例如,如果應用程式有 1.2 倍的改善,但所使用的 VM 比基礎昂貴 7.5 倍,則水平擴增基礎資源以改善效能,可能比較合理。
請務必建立監視和視覺效果系統,以監視所使用的各種資源。 監視系統必須設計為觸發擴充事件,以回應觀察到的多載或空閒模式。 通常,基礎結構小組選擇以積極的方式擴大規格或擴增,而以較保守的方式縮小規模或縮減。 雖然這種方法在資源佈建方面成本較高,但理論上會比在所有時間都以接近尖峰容量運作,提供更高的服務品質。
話雖如此,組織通常會低估縮小規格的需求,並終止很少使用的資源。 在規劃執行應用程式的不同元件時,請務必根據使用的大約持續時間,將使用率分類成不同的量化。 比方說,每晚或每週短暫執行一次的任何工作,都不應該全天候使用資源。 監視系統也應該標記並終止閒置資源 (根據特定規則)。
與成本最佳化相關的一項重要技術就是標記資源。 標記是將標籤指派給資源的程序,以便監視和分析工具能夠加以識別。 標記也可供定義每個標籤的自訂規則,包括資源的存取控制清單、計費警示,以及特定調整原則。 常用標籤會指定特定資源的擁有者 (使用者或群組)、其所屬環境 (例如生產、備份、預備和測試)、負責支付帳單的成本中心等。在分析支出時,這可供根據特定應用程式,以及特定開發或測試小組來產生分組檢視。