云計(jì)算因其高效的可擴(kuò)展性和只為使用的內(nèi)容付費(fèi)的靈活性而備受企業(yè)青睞。團(tuán)隊(duì)可以利用 IT 向分散計(jì)算的轉(zhuǎn)變來(lái)開發(fā)更好的產(chǎn)品,同時(shí)保持競(jìng)爭(zhēng)力和敏捷性。
編輯搜圖
但是托管服務(wù)往往可能是付費(fèi)的,從而很容易超支。據(jù)行業(yè)研究公司 Gartner 研究,到 2024 年,60%的基礎(chǔ)設(shè)施和運(yùn)營(yíng)領(lǐng)導(dǎo)者將看到他們的云支出超過(guò)預(yù)算。如果企業(yè)希望從云支出中獲得最大收益,就要對(duì)云服務(wù)成本進(jìn)行優(yōu)化以最大化其投資回報(bào)。
在本文中,我們將討論可以幫助企業(yè)了解其云使用情況和支出的工具和流程。我們將分析云計(jì)算如何帶來(lái)令人意外的財(cái)務(wù)成本,以及企業(yè)如何管理和優(yōu)化其云成本。
1、云在現(xiàn)代軟件開發(fā)中的作用
云計(jì)算通過(guò)為日常應(yīng)用程序提供易于使用、可擴(kuò)展的部署來(lái)支持和加速現(xiàn)代軟件開發(fā)。無(wú)服務(wù)器功能和 Kubernetes 等云原生技術(shù)使開發(fā)人員能夠更多地關(guān)注應(yīng)用程序,而不是基礎(chǔ)設(shè)施和部署。
部署過(guò)程更快,并為團(tuán)隊(duì)節(jié)省了一些添加新功能和修復(fù)bug的開銷。無(wú)服務(wù)器功能和 Kubernetes 建立在云原生技術(shù)之上,使部署和擴(kuò)展應(yīng)用程序和 API 變得更加容易。當(dāng)企業(yè)創(chuàng)建無(wú)服務(wù)器函數(shù)或部署 API 時(shí),無(wú)需擔(dān)心托管它的位置或它的擴(kuò)展方式,云提供商會(huì)處理這一切。
然而,這些無(wú)限可擴(kuò)展的技術(shù)對(duì)于開發(fā)人員來(lái)說(shuō)可能不堪重負(fù)。要熟練地識(shí)別適合符合企業(yè)需求的云資源,需要一個(gè)學(xué)習(xí)過(guò)程。因此,大多數(shù)公司并不完全了解如何優(yōu)化他們的云使用,也不知道應(yīng)該把重點(diǎn)放在哪里。
2、與大規(guī)模云計(jì)算相關(guān)的成本
在云中開展業(yè)務(wù)需要全面的管理和對(duì)云內(nèi)部運(yùn)作的扎實(shí)知識(shí)。云計(jì)算的高成本源于對(duì)基礎(chǔ)設(shè)施的使用,包括虛擬機(jī) (VM)、Kubernetes 集群、虛擬網(wǎng)絡(luò)、公共 IP 和 DNS 條目。
云計(jì)算的核心原則是企業(yè)應(yīng)該只為使用的資源付費(fèi),就像租用計(jì)算能力或使用電力等公用事業(yè)一樣。這種現(xiàn)收現(xiàn)付模式應(yīng)該可以讓企業(yè)在需求不可預(yù)測(cè)時(shí)即時(shí)調(diào)整資源,而無(wú)需對(duì)本地基礎(chǔ)設(shè)施進(jìn)行大量投資。例如,企業(yè)應(yīng)該能夠在遇到突發(fā)負(fù)載時(shí)通過(guò)添加更多服務(wù)器實(shí)現(xiàn)水平擴(kuò)展。或者,如果企業(yè)的商業(yè)應(yīng)用程序在假期期間流量較低,并且需要降低成本,則可以縮減基礎(chǔ)架構(gòu)。
盡管大多數(shù)云提供商都提供這種配置,但許多文件存儲(chǔ)提供商(與提供對(duì)象存儲(chǔ)或塊存儲(chǔ)解決方案的提供商相反)使用的模式是企業(yè)必須提前為其認(rèn)為需要的空間付費(fèi)。以這種方式在云中存儲(chǔ)大量數(shù)據(jù)可能會(huì)變得非常昂貴,盡管它通常比設(shè)置本地存儲(chǔ)單元要好。
通過(guò)Amazon Simple Storage Service (S3)、Azure Blob Storage 和 Google Cloud Storage 的比較,可以了解當(dāng)前云存儲(chǔ)產(chǎn)品狀態(tài)的一些背景信息。這些提供程序?yàn)榉墙Y(jié)構(gòu)化對(duì)象文件提供存儲(chǔ)。對(duì)象存儲(chǔ)技術(shù)的簡(jiǎn)單性使云提供商可以更有效地分配資源,并且他們通過(guò)按 GB 收費(fèi)而不是強(qiáng)迫用戶預(yù)測(cè)工作負(fù)載和配置他們可能永遠(yuǎn)不會(huì)使用的容量,來(lái)將這些好處傳遞給用戶。
即便如此,云基礎(chǔ)設(shè)施仍然可以通過(guò)隱藏在數(shù)據(jù)傳輸和數(shù)據(jù)存儲(chǔ)中的費(fèi)用默默地產(chǎn)生成本。大多數(shù)云提供商允許客戶免費(fèi)將數(shù)據(jù)傳輸?shù)剿麄兊木W(wǎng)絡(luò)(入口),但向他們收取數(shù)據(jù)傳出(出口)的費(fèi)用。例如,AWS在其網(wǎng)絡(luò)內(nèi)提供免費(fèi)數(shù)據(jù)傳輸,但在其網(wǎng)絡(luò)外傳輸數(shù)據(jù)時(shí)收取每 GB 12 美分的費(fèi)用。
開發(fā)人員通常使用 MongoDB 或 Postgres 等數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)結(jié)構(gòu)化數(shù)據(jù)。許多企業(yè)使用數(shù)據(jù)庫(kù)即服務(wù) (DBaaS) 在云中啟動(dòng)完全托管的數(shù)據(jù)庫(kù),繞過(guò)設(shè)置 VM 和手動(dòng)安裝安全補(bǔ)丁的傳統(tǒng)方式。但這種方法也有成本,隨著數(shù)據(jù)足跡的增長(zhǎng),它們可能會(huì)迅速超出企業(yè)的預(yù)算。
3、云成本管理的重要性
許多軟件交付團(tuán)隊(duì)難以全面了解企業(yè)的云使用情況,成本會(huì)迅速增加,在意識(shí)到此情況之前,他們已經(jīng)為一項(xiàng)他們不需要或可能配置不同的服務(wù)支付了數(shù)千美元。
因此,云成本管理已成為在云中運(yùn)營(yíng)業(yè)務(wù)的關(guān)鍵部分。要了解完整情況,團(tuán)隊(duì)有時(shí)需要查看計(jì)費(fèi)控制臺(tái)或?yàn)槊宽?xiàng)服務(wù)的單獨(dú)賬戶收費(fèi)。如果他們只有幾個(gè)帳戶,則此方法具有挑戰(zhàn)性。如果他們使用數(shù)十或數(shù)百種服務(wù),那幾乎是不可能的。
因?yàn)樵谠浦袆?chuàng)建新資源只需點(diǎn)擊幾下,團(tuán)隊(duì)就可以輕松配置他們不需要的資源。如果他們忘記關(guān)閉他們創(chuàng)建的資源,他們將為未使用的容量付費(fèi)。
大多數(shù)云服務(wù)按現(xiàn)收現(xiàn)付模式收費(fèi)。然而,這種帳單可能會(huì)產(chǎn)生誤導(dǎo),因?yàn)閹斡肋h(yuǎn)不會(huì)立即到達(dá)。團(tuán)隊(duì)可能會(huì)意外啟動(dòng) 10,000 個(gè)虛擬機(jī),而不是他們想要的 10 個(gè)。他們可能會(huì)設(shè)置寬松的政策,然后他們的軟件會(huì)通過(guò)提供大量公共云資源來(lái)應(yīng)對(duì)持續(xù)的流量高峰。在這些情況下,企業(yè)將會(huì)期望在月底巨額賬單到來(lái)之前了解到資源的具體使用情況。
云技術(shù)并不是財(cái)務(wù)崩潰的雷區(qū),但它提供的力量需要謹(jǐn)慎的接觸。不幸的是,這也可能會(huì)發(fā)生代價(jià)高昂的錯(cuò)誤,因?yàn)樵朴?jì)算為企業(yè)提供了比以往更多的花費(fèi)方式,這使得云成本管理對(duì)各種規(guī)模的企業(yè)都至關(guān)重要。
4、如何優(yōu)化企業(yè)中的云成本
企業(yè)經(jīng)常在云成本上浪費(fèi)金錢,因?yàn)樗麄儾涣私鈭F(tuán)隊(duì)花了多少錢。企業(yè)的相關(guān)團(tuán)隊(duì)可能有一般意識(shí),但沒有清晰的理解,并且部分團(tuán)隊(duì)成員不知道他們的選擇會(huì)如何影響運(yùn)營(yíng)成本。
所以,企業(yè)團(tuán)隊(duì)可以采取哪些行動(dòng)?
1)定期檢查計(jì)費(fèi)儀表板
最好在規(guī)劃階段實(shí)施云成本優(yōu)化策略。這種方法可以幫助企業(yè)避免發(fā)生意外的成本支出。
出乎意料的高成本甚至?xí)屪钣薪?jīng)驗(yàn)的云工程師措手不及,因此最好根據(jù)歷史云消費(fèi)模式檢查企業(yè)的使用情況。
基于消耗的計(jì)費(fèi)解決方案使企業(yè)能夠隨著時(shí)間的推移可視化其模式及其相關(guān)成本。這可以幫助企業(yè)確定哪些應(yīng)用程序和服務(wù)消耗的資源最多,并在它們無(wú)法提供業(yè)務(wù)價(jià)值時(shí)減少它們。
大多數(shù)主要的云提供商都提供了一個(gè)儀表板,可以從較高的層次概括企業(yè)的云服務(wù)開支。AWS 有成本管理器,GCP 提供云計(jì)費(fèi)報(bào)告,Azure 提供成本管理和計(jì)費(fèi)。為了充分利用這些工具,需要進(jìn)行一些手動(dòng)設(shè)置和監(jiān)控,因此最好在云計(jì)算之旅的早期熟悉它們,以確保企業(yè)獲得準(zhǔn)確且可操作的支出洞察。
2)確保團(tuán)隊(duì)對(duì)其成本負(fù)責(zé)
了解每個(gè)團(tuán)隊(duì)成員或部門如何與企業(yè)中的其他人配合有助于使團(tuán)隊(duì)對(duì)其云成本負(fù)責(zé)。
鼓勵(lì)高效使用云的最佳方法之一是為團(tuán)隊(duì)提供一些背景信息。幫助他們了解正在使用哪些資源以及如何使用。這種可見性使團(tuán)隊(duì)更有動(dòng)力高效地使用云。否則,他們無(wú)法確保使用的量不超過(guò)合理范圍。
假設(shè)企業(yè)管理五個(gè)團(tuán)隊(duì),他們都部署在一個(gè) Kubernetes 集群上。起初,這似乎是個(gè)好主意。當(dāng)企業(yè)只有少數(shù)幾個(gè)容器時(shí),它的設(shè)置很簡(jiǎn)單并且最初運(yùn)行良好。如果需要更多資源,提供商很樂(lè)意向企業(yè)出售一些資源,這樣看起來(lái)皆大歡喜。
但沒有人有動(dòng)力明智地使用云資源。如果每個(gè)團(tuán)隊(duì)都部署到同一個(gè)集群中而不使用標(biāo)簽、標(biāo)記或其他一些方法來(lái)跟蹤誰(shuí)在使用哪些資源,那么沒有人會(huì)清楚地知道他們的使用情況與其他團(tuán)隊(duì)相比如何。
而且,如果每個(gè)人都部署到同一個(gè)集群,企業(yè)將很難為新項(xiàng)目找到空間而不削減現(xiàn)有項(xiàng)目。通過(guò)清楚地跟蹤特定團(tuán)隊(duì)和部署的資源使用情況,企業(yè)可以更好地管理整體支出。
3)使用第三方解決方案
第三方云成本管理平臺(tái)可以幫助企業(yè)從云投資中獲得更多收益。這些平臺(tái)提供跨基礎(chǔ)架構(gòu)的單屏視圖,包括多云部署,提供或與工具集成以對(duì)資源配置進(jìn)行更精細(xì)的控制。他們還實(shí)時(shí)跟蹤成本,并在基礎(chǔ)設(shè)施使用超出商定限制時(shí)進(jìn)行提醒。
一些常用的云成本管理解決方案包括Apptio Cloudability、Flexera、CloudHealth by VMware、CloudCheckr、Densify和Virtana。其中許多平臺(tái)還提供 AI 支持的工具,用于根據(jù)企業(yè)的歷史使用趨勢(shì)調(diào)整或標(biāo)記過(guò)度配置的云資源,幫助企業(yè)識(shí)別和消除不必要的支出。
保持部署策略的一致性還可以幫助企業(yè)控制云成本。通過(guò)在CI/CD 管道中自動(dòng)化部署和基礎(chǔ)設(shè)施配置,企業(yè)可以避免開發(fā)人員手動(dòng)配置資源時(shí)發(fā)生代價(jià)高昂的錯(cuò)誤。許多持續(xù)集成平臺(tái)具有與基礎(chǔ)設(shè)施即代碼工具(例如Terraform和Pulumi )的集成功能,企業(yè)可以使用它們來(lái)指定確切的資源以啟動(dòng)部署,并通過(guò)成本控制策略設(shè)置資源使用限制。
5、結(jié)論
隨著企業(yè)在云上投資的金額(截至 2021 年為 3960 億美元)的不斷增長(zhǎng),正確制定云成本優(yōu)化策略變得愈發(fā)重要。隨著時(shí)間的推移,云計(jì)算成本可能會(huì)以多種方式攀升,但通過(guò)主動(dòng)管理自身的投資,企業(yè)可以避免未來(lái)出現(xiàn)代價(jià)高昂的意外,而且可以專注于提供對(duì)企業(yè)的用戶最重要的功能。
