自從 2000 年初全球首家公有云服務(wù)商成立以來,云計算的普及從根本上改變了互聯(lián)網(wǎng)的格局,而且變革烈度之大遠超以往。
作為第一家在 2000 年初就將內(nèi)部計算基礎(chǔ)設(shè)施通過 API 向外部客戶出租的云服務(wù)商,Amazon 創(chuàng)造了“基礎(chǔ)設(shè)施即服務(wù)”(IaaS)一詞。Google 與微軟也不甘于人后、很快決定跟進,于是就有了 Google Cloud Platform (GCP) 和微軟 Azure 兩款 IaaS 產(chǎn)品。在 IaaS 廠商時代之前,人們幾乎從未聽說過基于 Web 或者 SaaS(軟件即服務(wù))的商業(yè)模式。倒不是人們想不到,只是其中困難重重、成本也太過高昂——服務(wù)商必須購買專用服務(wù)器及高帶寬連接,才能及時處理網(wǎng)站上傳入的大量訪問請求;還需要聘請工程師構(gòu)建起一套可擴展系統(tǒng);如果打算向國外客戶提供服務(wù),企業(yè)還需要在相應(yīng)的地理位置部署服務(wù)器。
IaaS 廠商則給企業(yè)客戶提供更短的產(chǎn)品上市周期、顯著降低開發(fā)成本,幫助客戶在幾天之內(nèi)就能用少量資金開發(fā)出在線、可擴展且面向全球的服務(wù)。這一切,在二十多年前幾乎根本無法想象。
首先要向大家介紹一下,Enzymit 的主要工作就是利用云服務(wù)對蛋白質(zhì)設(shè)計進行資源密集型計算,我們并沒有多少需要跨越多個地理區(qū)域進行擴展,或者每分鐘需要處理數(shù)百萬個請求的開放式應(yīng)用程序。我們的主要用例就是運行繁重的 CPU 與 GPU 分析,而且在實踐中逐漸發(fā)現(xiàn) IaaS/ 公有云解決方案其實并不能帶來長遠的成本效益。
從我們的角度來看,公有云服務(wù)的第一個顯著短板就是成本透明度。盡管目前最具體量的幾大 IaaS 廠商都投入了大量資源,希望為客戶打造出準(zhǔn)確的計費模擬器與支出預(yù)測工具,但我們發(fā)現(xiàn)只有在客戶將公有云 API 作為工程師與“原始”計算基礎(chǔ)設(shè)施之間的中間層時,這些方案才有良好效果。換句話說,只有客戶把自己鎖定在單一 IaaS 廠商身上,成本透明度才能得到保障;如果選擇跨云,成本優(yōu)化能力就會大打折扣。而如果我們不希望把軟件鎖定在某家云服務(wù)商處,而單純使用其準(zhǔn)系統(tǒng)基礎(chǔ)設(shè)施來保證后續(xù)在不同云廠商間的遷移能力,那可就麻煩了。這時我們需要面對的是極為復(fù)雜的計費模型,感興趣的朋友可以參考本指南,而且這還只是單一服務(wù)商的數(shù)據(jù)傳輸計費模型!
正因為如此,企業(yè)客戶一般都需要聘請認證專家,由他們專門負責(zé)在添加存儲、CPU 及其他資源時設(shè)計出易于理解和驗證的成本結(jié)構(gòu)。云服務(wù)商也不失時機地推出了認證資質(zhì)考試,這同樣是個可觀的收入來源。
在建立 Enzymit 之后,我們也從某公有云巨頭那邊拿到了可觀的服務(wù)積分。跟大部分人手緊張的初創(chuàng)公司一樣,我們興高采烈地涌入云端、并沒有注意到自己在架構(gòu)設(shè)計上的失誤。由于資源利用率低下,我們白白浪費掉了價值數(shù)千美元的積分,但最終還是在云上運行起一套利用 GPU 執(zhí)行神經(jīng)網(wǎng)絡(luò)訓(xùn)練 / 推理、通過 CPU 執(zhí)行計算的業(yè)務(wù)平臺。
不過在一年花掉 10 萬美元服務(wù)費后,我們計算出每線程每小時的成本約在 0.06 美元到 0.08 美元之間——包含存儲、數(shù)據(jù)傳輸以及 CPU 使用等資源要素(不含 GPU 資源)。
因為我們每月大約需要運行 12 萬個 CPU 時,所以單月云成本就高達 7200 到 9600 美元!有這筆錢,我們完全可以買到配備有 RTX 3090 頂級 GPU 的強大服務(wù)器了。
這一發(fā)現(xiàn),讓我們開始考慮至少應(yīng)該把部分工作負載轉(zhuǎn)移到本地計算服務(wù)器上。經(jīng)過初步規(guī)劃,我們決定購置三臺工作站,總成本為 17000 美元。其一是基于 GPU 的工作站,配備兩塊 RTX 3090 顯卡外加一塊英特爾 i9-12900 CPU。另外兩臺工作站則分別配備 16 核 AMD Ryzen 5950X CPU。
我們又投入了一定人力,在幾天之內(nèi)完成了 slurm、NFS、備份等常用服務(wù)的設(shè)置和部署。
我們注意到,雖然 RTX 產(chǎn)品被廣泛理解成高端游戲顯卡,但其性能并不弱于 Tesla V100(有時候甚至更好)。部分云服務(wù)商甚至為 RTX 3090 開出了每小時 3.06 美元的租賃天價。
我們也知道,維護自己的計算基礎(chǔ)設(shè)施并不便宜,而且需要考慮維護、安全等一系列隱藏成本。
在接下來的幾個月中,我們將持續(xù)收集各項數(shù)據(jù),希望最終找到一套更具成本效益的完善解決方案,真正在本地基礎(chǔ)設(shè)施與公有云服務(wù)之間尋求平衡點。但無論如何,經(jīng)歷了幾個禮拜的本地基礎(chǔ)設(shè)施使用之后,我們意識由于資源規(guī)模完全無法與公有云相比、所以必須對本地負載做出詳盡規(guī)劃。但另一方面,只要規(guī)劃得當(dāng)、實驗順利,我們實際消耗的資源遠比當(dāng)初在云上時要低。
2021 年 CNCF《FinOps Kubernetes Report》調(diào)研報告顯示,遷移至 Kubernetes 平臺后,68% 的受訪者表示所在企業(yè)計算資源成本有所增加,36% 的受訪者表示成本飆升超過 20%,這都說明即使是資源利用率更高的云原生架構(gòu)也需要合理的資源成本管理。
星漢未來聯(lián)合創(chuàng)始人 &CPO 胡忠想此前的文章中在優(yōu)化云成本方面提出了四點建議,不同企業(yè)可以根據(jù)自己現(xiàn)階段情況有條件地加以選擇:
降低云成本會對企業(yè)利潤產(chǎn)生重大影響。Zoom 公司在 2021 年一季度的財報中稱,其毛利率從前一季度的 69.4% 上升至 73.9%,這主要是由于在公共云資源的優(yōu)化上下了很大功夫。Spotify 自研追蹤云計算開支的工具,同時鼓勵工程師們掌握云計算支出的所有權(quán),使其每年節(jié)省了幾百萬美元的云計算開支。
參考鏈接:
https://medium.com/enzymit-log/why-enzymit-decided-to-build-its-own-on-prem-hpc-infrastructure-bcaeff0105a7
https://www.infoq.cn/article/4CqbookqQAjQ4MGhzbHd
聯(lián)系客服