在互聯網早期迅速發展時,相關領域企業更多注重于擴展業務,為了迅速占領市場,往往會投入較高的成本。然而,随着互聯網人口紅利逐漸消退,以及近幾年的疫情影響,越來越多企業開始重視成本管理,從“粗放式經營”轉變為“精細化運營”模式,成本優化成為企業重點關注事項。
本文将從一位中型企業運維總監的視角來展現一個較完整的成本優化實戰案例,希望為讀者提供可參考借鑒的成本優化思路。
降本實戰案例背景本文的主人公小王(化名)在某電商公司擔任運維總監,他所在公司自建 IDC 機房,其中總共 1000 台業務服務器(在線 離線),由 3 名運維人員管理。機器規格大部分為 8 核 32G,整體 CPU 利用率僅 10% 左右,每年花銷在 1000 萬以上。
CTO 希望在現有業務市場條件不變的情況下,以業務穩定性為基本前提,将 IT 成本降低至少 30%,且将此定為小王今年的 KPI。
第一階段上雲 公有雲廠商 / 算力品牌對比選擇收到任務後,小王先将 IT 成本拆解為算力成本和人力成本兩個部分。
目前 IT 成本主要由自建 IDC 機房承載,存在如下問題:
基于以上分析,考慮到公有雲機型更新便捷、基本免維護、可彈性的特點,小王計劃先将業務遷移上雲。
目前雲廠商主要提供了預留實例(包年包月)、按需實例(彈性)、競價實例三種方式:
為确保系統穩定且盡量減少研發感知,小王先後采取了以下幾項措施:
在上雲過程中,小王一方面根據公司需求對比多家公有雲廠商後選擇最匹配的雲資源,另一方面将 CPU 品牌從 Intel 換成 AMD,兩者疊加後,降低了 7% 左右的成本。
系統指标描述服務算力特征完成混合雲改造後,小王進一步将算力成本拆解為服務算力成本和基礎設施資源成本:
結合公司目前的成本占比情況,服務算力成本占了其中的 60% 以上。
算力成本來源占比如下圖所示:
圖 1 算力成本來源占比
基于二八原則,小王決定以運維第三方視角,本着少侵入業務的前提,集中精力節省服務算力成本。
小王首先檢查公司已上雲的典型業務的算力特征。由于公司業務偏計算型,所以他選擇通過常見性能指标 CPU 利用率來觀察算力消耗情況,發現公司業務常在中午 12 點左右和晚上 8 點左右迎來算力消耗高峰。
如下圖所示:
圖 2 CPU 利用率指标算力圖
優化低頻冗餘算力根據上面的業務算力模型,小王發現即使業務完全處于高峰,所需要的機器數也不到現有數量的 80%。在公有雲彈性的保證下,小王分階段釋放了曆史高峰未觸及的 200 多台 8 核 32G 包年包月冗餘機器,節省了 20% 左右成本。
壓測 公有雲機型規格降配在粗略去除明顯冗餘算力後,小王觀察到業務算力即使在忙時利用率也不高,尤其是内存閑置較為嚴重。
接下來小王和業務一起進行了一次壓測,最後得出業務機器規格保持在 8 核 3G 的配比,使用率相對均衡。而公有雲機器 CPU 核數和内存配比一般是 1:2 或 1:4 的固定比例,所以小王按照公有雲廠商的标準配置先将機器規格從 8 核 32G 降為 8 核 16G,節省了 20% 的成本。
小結第一階段的優化手段較為常規,取得了一些效果,小王總共節省了 40% 左右的成本,以較低成本吃到了第一波降本紅利。
基于第一階段的優化經驗,小王總結出以下待改進點:
基于上述分析,小王分析出需要依次解決的三個問題:
針對以上問題,小王對業界現有解決方案進行了調研,發現并無能直接借鑒的普适方法和經驗,大部分實現方式都與特定業務場景綁定且需要研發深度參與。
為了能按期實現目标,小王嘗試使用雲原生基礎治理平台 SchedulX 開始第二階段的深入優化。
第二階段MetricsQPS 指标代替 CPU 指标精準衡量算力小王借助 SchedulX 系統,在不讓業務大規模改造的前提下,引入了 MetricsQPS 指标。該指标将 QPS 中不同請求對機器資源占用的時長納入了考量,通過對 QPS 按時長進行分段并配以相應的權重最終拟合而成。相對于普通 QPS 指标,MetricsQPS 更能精确地反映出業務實際負載情況。該指标基本計算公式如下:
圖 3 MetricsQPS 公式
小王利用這一指标執行了第一階段的“優化低頻冗餘算力”操作,再次下線 60 台機器,節省約 10% 成本。
用彈性伸縮替換包年包月短時高峰算力接下來,小王比較了公有雲 8 核 16G 包年包月價格(約 600 元 / 月)與彈性機器價格(約 1.20 元 / 小時),發現包月機器 1 天的費用是彈性機器 30 天費用的 70% 左右。
由此推斷,對于每天峰值時長低于總時長 30%(約 8 小時)的機器,可以用彈性代替包年包月。
如下圖所示:
圖 4 短時高峰彈性代替包年包月
對于其它規格的服務器,小王延伸推導如下:
設彈性擴容一台同規格機器 1 小時的成本為 Y 元,高峰時總機器數為 K1 台,高峰時段為 H 小時,包年包月合理機器數為 K2 台,則從省成本角度考慮,需要保證滿足以下條件:
(K1-K2)* H * Y < (X / 30)*(K1 -K2) => H * Y < (X / 30)
由于 X、Y 均為相對固定值,所以按照此不等式可計算出适合彈性的業務峰值理論時長。于是,在留出一定的安全邊際的前提下,小王借助 SchedulX 的度量和彈性能力再下線 50 多台機器,節省約 10% 成本。
包年包月算力低峰共享面對剩餘的包年包月機器,小王發現還是有優化空間的。從波形覆蓋面積上來看,空洞波形面積(藍色陰影面積)至少占到紅框中矩形面積的 1/3 以上,如圖所示:
圖 5 包年包月算力低峰共享
小王計劃将這部分機器利用起來,作為公司整體的共享資源池,供公司其它周期性及離線任務進行錯峰使用。因為涉及面較廣,小王請 CTO 一起出面推動協調,最終借助 SchedulX 系統貼合業務算力模型曲線實時擴縮容,共節省了 10% 的成本。
裸金屬切割,精準适配規格小王在完成以 MetricsQPS 指标按橫向時序的算力優化後,再次将注意力集中到機器規格對業務需求的精準匹配上。
小王采用了公有雲上的高規格裸金屬服務器,借助 SchedulX 對公有雲裸金屬原材料進行了二次切割。雖然公有雲上的裸金屬也是按固定算力資源比例售賣,但是經過切割後的算力規格能夠精準匹配業務 8 核 3G 的規格需求。同樣是 500 台機器,相對原來的 8 核 16G 雲主機,經過切割得出的 8 核 3G 機器能節省超過 15% 的成本。
利用算力地域價格差省成本做完機器規格的精準裁剪匹配後,現在基本上單體算力規格和時序算力數量與類型都已經完成了優化,小王又将目光放到了算力的地域差異方面。他了解到公有雲上西部機房同規格的算力比東部機房更便宜,通過将近 100 台離線服務器遷移到西部機房,同時借助 SchedulX 快速大批量數據遷移的能力實現東數西算,節省成本 10%。
總結第二階段基本解決了第一階段遺留的精準度量算力、精準匹配模型、精準切割規格三大問題。兩階段下來,CPU 利用率上升至 60%,總共節省成本将近 70%,實現并超出 CTO 預期。
綜合兩階段,小王的整體優化流程如下圖所示:
圖 6 降本流程圖
降本配套設施為了順利推進成本優化,小王除了設計操作各種算力增減外,還借助了以下一些配套措施和系統:
小王在推進降本過程中,還總結了一些遇到的非技術問題及主要解法:
回顧整個降本之路,除了之前總結的執行中技術 / 非技術的問題外,還有以下幾個點值得提出:
在互聯網下半場的今天,降本增效作為企業大勢所趨,甚至上升到了公司核心競争力的層面。在林林總總的成本優化路徑和手段面前,誰先朝正确的方向踏出一步,誰就有可能領先對手占據先機。本文綜合講述了一個典型腰部企業的降本之路,希望能對讀者有所啟發。如果讀者有成本優化技術手段相關的需求,可以聯系我們共同探讨。
本文大部分内容摘自《星漢未來雲原生 IT 成本優化白皮書》,其中提到的 SchedulX 是由星漢未來打造的一站式雲原生基礎治理平台,目前已推出社區版,通過此鍊接即可獲取白皮書、免費試用 SchedulX 社區版。
作者介紹
舒超,星漢未來 CTO。前美團基礎研發負責人,存儲中心總架構師,負責美團公司級雲原生服務治理系統的開發及演進;前騰訊微博微群及消息流廣告負責人。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!